FTP (File Transfer Protocol) consente il trasferimento di file tra computer su una rete. È uno strumento essenziale per molte operazioni di amministrazione di sistema, sviluppo web e gestione di file. In questa guida, esploreremo come installare e configurare un server FTP su un sistema operativo Linux utilizzando vsftpd (Very Secure FTP Daemon), uno dei server FTP più sicuri e stabili disponibili.
Prerequisiti
- Server con sistema operativo Linux (Debian, Ubuntu, CentOS, etc.)
- Accesso root o privilegi sudo
- Connessione internet
Passi per l’Installazione di un Server FTP con vsftpd
1. Aggiornare il Sistema
Prima di tutto, aggiorna i pacchetti del tuo sistema per assicurarti di avere le versioni più recenti.
Per Debian/Ubuntu:
sudo apt upgrade
Per CentOS:
2. Installare vsftpd
Installa il pacchetto vsftpd utilizzando il gestore di pacchetti del tuo sistema.
Per Debian/Ubuntu:
Per CentOS:
3. Avviare e Abilitare vsftpd
Avvia il servizio vsftpd e configura il sistema per avviarlo automaticamente all’avvio.
Per Debian/Ubuntu:
sudo systemctl enable vsftpd
Per CentOS:
sudo systemctl enable vsftpd
4. Configurare vsftpd
L’installazione predefinita di vsftpd può essere migliorata per una maggiore sicurezza e funzionalità. Apri il file di configurazione principale di vsftpd.
Modifica le seguenti opzioni nel file di configurazione:
Consentire accesso locale e permessi di scrittura:
write_enable=YES
Configurare il chroot per limitare gli utenti alla loro directory home:
Disabilitarare accesso anonimo e abilitare connessioni SSL/TLS per maggiore sicurezza:
anonymous_enable=NO
Salva e chiudi il file (Ctrl+O, Invio, Ctrl+X).
5. Riavviare il Servizio vsftpd
Dopo aver modificato il file di configurazione, riavvia il servizio vsftpd per applicare le modifiche.
Assicurati che il firewall del tuo server permetta il traffico FTP. Aggiungi una regola per il firewall per consentire le connessioni FTP sulla porta 21.
Per Debian/Ubuntu con UFW:
sudo ufw reload
Per CentOS con firewall-cmd:
sudo firewall-cmd --reload
7. Creare Utenti FTP
Crea un nuovo utente FTP e imposta una password.
sudo passwd nomeutente
Assicurati che l’utente creato abbia i permessi adeguati nella directory home per il caricamento e il download di file.
8. (Opzionale) Abilitare FTP su SSL/TLS
Per migliorare la sicurezza, puoi configurare vsftpd per utilizzare SSL/TLS. Crea un certificato SSL se non ne hai già uno.
Modifica il file di configurazione di vsftpd per abilitare SSL:
Aggiungi o modifica le seguenti linee:
rsa_private_key_file=/etc/ssl/private/vsftpd.key
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGH
Salva e chiudi il file, quindi riavvia vsftpd:
Verifica dell’Installazione
Puoi testare il server FTP utilizzando un client FTP come FileZilla. Collega il client al tuo server inserendo l’indirizzo IP del server, il nome utente e la password. Assicurati di utilizzare la modalità FTPS se hai abilitato SSL/TLS.
Conclusione
Hai ora un server FTP funzionante con vsftpd su Linux, configurato per l’accesso sicuro e pronto per gestire trasferimenti di file. Ricorda di mantenere sempre aggiornato il tuo server e di monitorare le attività di login per garantire la sicurezza del tuo sistema. Buon lavoro!