Introduzione
Questo articolo ti aiuta a connetterti a un server Linux® quando devi trasferire un file da o verso quel server. Nella maggior parte dei casi, il servizio FTP (File Transfer Protocol) non è necessario perché è possibile eseguire trasferimenti di file sulla stessa porta di Secure Shell (SSH), la porta 22, utilizzata per accedere a un server dalla riga di comando.
Se stai utilizzando strumenti di interfaccia utente grafica (GUI) per il trasferimento di file, come FileZilla®, Cyberduck® o WinSCP®, questo protocollo potrebbe essere elencato come SFTP (FTP protetto), che non richiedono un servizio FTP aggiuntivo. Puoi utilizzare uno qualsiasi dei seguenti strumenti della GUI per eseguire un trasferimento di file su SFTP:
-
FileZilla
-
Anatra cibernetica
-
WinSCP
Se non riesci a connetterti dopo aver effettuato l'accesso tramite SSH, dovresti verificare che FTP sia stato utilizzato in passato. Se hai bisogno di assistenza per accedere con SSH, consulta il seguente articolo per la tua piattaforma:
-
Finestre
-
Mac OSX
Accedi a un server Linux
Per accedere a un server Linux, sono necessarie le seguenti informazioni:
- IP :Disponibile nel pannello di controllo del cloud
- Nome utente :radice
- Password :Se non conosci la tua password, reimpostala dal Cloud ControlPanel.
CentOS, RHEL o Fedora
Per confermare se SFTP è stato installato su CentOS®, RHEL® o Fedora®, eseguire il comando seguente:
# rpm -qa | grep -E "vsftp|proftp"
Se è stato installato SFTP, viene visualizzato il seguente output:
Vsftpd-2.2.2-14.el6.x86_64
Se SFTP non è stato installato correttamente, viene visualizzato il seguente output:
# rpm -qa | grep -E "vsftp|proftp"
Sistemi operativi Ubuntu
Per confermare se SFTP è stato installato sui sistemi operativi Ubuntu®, eseguire il comando seguente:
# dpkg-1 | grep -E "vsftp|proftp"
Se è stato installato SFTP, viene visualizzata la versione FTP.
Conferma se FTP è in esecuzione
Per verificare se FTP è in esecuzione, inserisci il seguente comando:
# netstat -ntlp | grep :21
Se FTP è in esecuzione, viene visualizzato il seguente output:
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 21209/vsftpd
Se FTP non è in esecuzione, viene visualizzato il seguente output:
# netstat -ntlp | grep :21
Configurazione utente
Se FTP è installato e in esecuzione, controlla gli utenti. Per impostazione predefinita, gli utenti FTP possono anche accedere tramite SSH. Se hai una configurazione FTP più avanzata, questo potrebbe non essere vero.
Per controllare l'elenco degli utenti in cui la directory home dell'utente è /home (Linuxdefault), esegui il seguente comando:
# cat /etc/passwd | grep "/home" |cut -d: -f1
tom
sandy
Eseguire il comando seguente per aggiornare le password per l'elenco di utenti precedente:
# passwd tom
Changing password for user tom.
New password: <enter password here> - you will NOT see anything as you type
Retype new password: <enter password here> - you will NOT see anything as you type
passwd: all authentication tokens updated successfully.
Eseguire il comando seguente per determinare se FTP è bloccato sul firewall anche se il servizio è in esecuzione:
# iptables -nL INPUT
Se l'ultima riga dell'output del comando precedente è un DROP
o REJECT
,quindi FTP viene bloccato a meno che non sia stato esplicitamente consentito. Puoi verificare questa autorizzazione esplicita utilizzando il seguente comando:
# iptables -nL INPUT | grep :21
Se è presente un ACCEPT
riga nell'output, quindi FTP è consentito dall'indirizzo IP (Internet Protocol) o dall'intervallo di indirizzi IP (altrimenti non è consentito).
Se devi aggiungere una regola firewall per FTP, puoi eseguire i seguenti comandi:
# iptables -I INPUT 4 -m tcp -p tcp -m conntrack --ctstate NEW --dport 21 -j ACCEPT
# service iptables save
# service iptables restart
La prima riga aggiunge la regola al firewall attualmente in esecuzione. La seconda riga salva la regola nel file di configurazione statico in modo che venga richiamata al riavvio del servizio. La terza riga riavvia il servizio.
Conferma che il firewall consente esplicitamente FTP eseguendo nuovamente il comando seguente:
# iptables -nL INPUT | grep :21