Come ospitare un server FTP su Linux

È difficile da credere, ma nel 2017 FTP rimane ancora uno dei modi più affidabili per trasferire file di grandi dimensioni da un luogo a un altro su Internet. Molti esperti si sono rivolti ad altre soluzioni (come Syncing / Bittorrent e NFS), ma per coloro che cercano di trasferire i dati rapidamente, in modo semplice e affidabile, un server FTP è ancora la strada migliore da percorrere. In questo tutorial, ti mostreremo come ospitare un server FTP su Linux. Utilizzeremo uno strumento chiamato server FTP vsftpd. Esistono molti strumenti server in background che fanno ciò che fa questo strumento. Se non sei interessato a utilizzare vsftpd come software del tuo server FTP, è molto facile trovare una buona alternativa. Detto questo, vsftpd ha molta storia ed è probabilmente il migliore in assoluto.
AVVISO SPOILER: scorri verso il basso e guarda il video tutorial alla fine di questo articolo.

Installazione

Ottenere vsftpd è abbastanza facile, poiché il software è molto piccolo. Per quanto riguarda gli strumenti del server, questo prende la torta. È un piccolo demone con un file di configurazione che consente a chiunque di ospitare rapidamente e facilmente un server FTP sulla propria LAN o su Internet. Soprattutto, questo strumento funziona praticamente su tutto. Ciò significa che se hai bisogno di un modo rapido e sporco per trasferire i dati da un server all’altro, puoi avviare vsftpd praticamente su qualsiasi distribuzione di server Linux.

Inoltre, i normali sistemi operativi Linux desktop per PC supportano anche questo software server, rendendo possibile eseguire rapidamente un server direttamente dal computer di casa.

Ubuntu

sudo apt install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Debian

sudo apt install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Arch Linux

sudo pacman -S vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Fedora

sudo dnf install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Apri SUSE

sudo zypper install vsftpd

sudo systemctl enable vsftpd

sudo systemctl start vsftpd

Altro

Lo strumento vsftpd è un servizio che consente a qualsiasi server Linux (o PC) di mantenere e ospitare un server FTP. Il protocollo FTP, nonostante sia molto vecchio, è ancora molto in uso oggi, quindi lo strumento vsftpd si trova praticamente su tutte le principali distribuzioni Linux per PC e server.

Per scaricarlo per la tua distribuzione Linux, apri il tuo terminale e cerca nel tuo gestore di pacchetti “vsftpd” o “server FTP”. Dovresti anche provare altri strumenti di hosting FTP se il tuo sistema operativo basato su Linux non lo ha vsftpd.

Configurazione

Dopo aver installato vsftpd e abilitato con systemd, il servizio è in esecuzione. Tuttavia, il server FTP stesso non funzionerà a meno che non sia configurato. Per fare ciò, dobbiamo aprire il file di configurazione vsftpd in un editor di testo e aggiungere alcune cose. Nel terminale, apri l’editor di testo.

sudo nano /etc/vsftpd.conf

Per impostazione predefinita, sono consentite connessioni anonime. Ciò significa che gli utenti, indipendentemente da chi siano, possono connettersi e utilizzare facilmente il tuo server FTP. Per semplificare le cose, lascia abilitata questa opzione. In caso contrario, aggiungi un # davanti a “anonymous_enable = YES” per disabilitare questa impostazione.

Quindi, utilizza i tasti freccia per scorrere verso il basso. Cerca “write_enable = YES” e “anon_upload_enable = YES”. Abilita queste impostazioni rimuovendo il simbolo # davanti ad esso.

Più in basso nel file di configurazione, è presente un’impostazione di sicurezza che dovrebbe essere abilitata. Questa impostazione forza l’esecuzione del server FTP sul proprio utente e lo spoglia dei privilegi di root. Ciò significa che se qualcuno hackera il tuo server FTP, non sarà in grado di interferire con l’intero server Linux o PC. Per essere chiari, vsftpd può essere eseguito senza questa impostazione, ma non lo consigliamo.

Per abilitare questa impostazione di sicurezza, trova “nopriv_user = ftpsecure” e rimuovi il segno #.

Quando tutte queste impostazioni sono abilitate, riavvia vsftpd con il sistema di inizializzazione systemd:

sudo systemctl restart vsftpd

Connettiti al server andando nella barra degli indirizzi del tuo file manager Linux e inserendo:

ftp://local.ip.address

Nota: non vuoi usare un file manager? Provare FileZilla anziché.

Puoi anche utilizzare il nome host, ad esempio

ftp://ubuntu-server

e così via.

Per trovare l’IP del tuo server, esegui ifconfig e quindi inserisci l’indirizzo IP restituito dal comando (sotto IPv4). In alternativa, fai:

ping hostname

Quindi, annotare i risultati del ping IP.

SSH SFTP

Non riesci a far funzionare questo strumento vsftpd? Troppo complicato? C’è un altro modo! Installa SSH e utilizza lo strumento SFTP integrato. Il protocollo SSH può ospitare un server FTP sicuro su richiesta. Ci sono vantaggi in questo, come ottenere un server di trasferimento file rapido in un istante. Tuttavia, ci sono anche importanti svantaggi, come una velocità di trasferimento più lenta. L’FTP tradizionale, sebbene non così sicuro, non è impantanato dalle regole di crittografia e, di conseguenza, gli utenti possono trasferire i file molto rapidamente.

SFTP farà uscire gli utenti dalle difficoltà di sicuro, ma non c’è alcun sostituto per FTP, anche nel 2017. Vuoi imparare come far funzionare il protocollo SFTP / SSH? Vai qui per saperne di più!

Conclusione

Nonostante l’età, FTP si dimostra ancora uno strumento affidabile. Pochi altri protocolli di trasferimento sono altrettanto affidabili quando si trasferiscono dati in modo rapido e semplice su una rete. Sia che tu stia solo tentando di spostare alcuni file sul tuo server web o di consegnare alcune foto ad alcuni amici, il protocollo di trasferimento file dimostra ancora che ha i suoi usi.