FTP è un protocollo molto insicuro perché tutte le password e tutti i dati vengono trasferiti in chiaro. Utilizzando TLS, l'intera comunicazione può essere crittografata, rendendo così l'FTP molto più sicuro. Questo articolo spiega come configurare ProFTPd con TLS su un server Debian Squeeze.
Non garantisco che questo funzionerà per te!
1 Nota preliminare
In questo tutorial utilizzo l'hostname server1.example.com con l'indirizzo IP 192.168.0.100. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato.
2 Installazione di ProFTPd e OpenSSL
OpenSSL è necessario per TLS; per installare ProFTPd e OpenSSL, eseguiamo semplicemente:
apt-get install proftpd openssl
Ti verrà fatta una domanda:
Esegui proftpd:<-- autonomo
Per motivi di sicurezza è possibile aggiungere le seguenti righe a /etc/proftpd/proftpd.conf (grazie a Reinaldo Carvalho; maggiori informazioni sono disponibili qui:http://proftpd.org/localsite/Userguide/linked/userguide.html):
vi /etc/proftpd/proftpd.conf
[...] DefaultRoot ~ IdentLookups off ServerIdent on "FTP Server ready." [...] |
3 Creazione del certificato SSL per TLS
Per utilizzare TLS, dobbiamo creare un certificato SSL. Lo creo in /etc/proftpd/ssl, quindi creo prima quella directory:
mkdir /etc/proftpd/ssl
Successivamente, possiamo generare il certificato SSL come segue:
openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem
Nome del Paese (codice di 2 lettere) [AU]:<-- Inserisci il nome del tuo Paese (ad es. "DE").
Nome Stato o Provincia (nome completo) [Stato-Stato]:<-- Inserisci il tuo Stato o nome della provincia.
Nome località (ad es. città) []:<-- Inserisci la tua città.
Nome organizzazione (ad es. azienda) [Internet Widgits Pty Ltd]:<-- Inserisci il nome dell'organizzazione (ad es. il nome della tua azienda).
Nome dell'unità organizzativa (ad es. sezione) []:<-- Inserisci il nome dell'unità organizzativa (ad es. "Dipartimento IT").
Nome comune (ad es. IL TUO nome) []:<-- Inserisci il nome di dominio completo del sistema (ad es. "server1.example.com").
Indirizzo e-mail []:<-- Inserisci il tuo indirizzo e-mail.
4 Abilitazione di TLS in ProFTPd
Per abilitare TLS in ProFTPd, apri /etc/proftpd/proftpd.conf...
vi /etc/proftpd/proftpd.conf
... e decommenta la riga Include /etc/proftpd/tls.conf:
[...] # # This is used for FTPS connections # Include /etc/proftpd/tls.conf [...] |
Quindi apri /etc/proftpd/tls.conf e fallo apparire come segue:
cp /etc/proftpd/tls.conf /etc/proftpd/tls.conf_orig
cat /dev/null > /etc/proftpd/tls.conf
vi /etc/proftpd/tls.conf
<IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 TLSOptions NoCertRequest TLSRSACertificateFile /etc/proftpd/ssl/proftpd.cert.pem TLSRSACertificateKeyFile /etc/proftpd/ssl/proftpd.key.pem TLSVerifyClient off TLSRequired on </IfModule> |
Se usi TLSRquired, sono consentite solo le connessioni TLS (questo blocca tutti gli utenti con vecchi client FTP che non hanno il supporto TLS); commentando quella riga o utilizzando TLSRquired, sono consentite sia le connessioni TLS che quelle non TLS, a seconda di ciò che supporta il client FTP.
Riavvia ProFTPd in seguito:
/etc/init.d/proftpd restart
Questo è tutto. Ora puoi provare a connetterti usando il tuo client FTP; tuttavia, dovresti configurare il tuo client FTP per utilizzare TLS (questo è un must se usi TLSRquired su) - vedi il prossimo capitolo come farlo con FileZilla.
Se riscontri problemi con TLS, puoi dare un'occhiata al file di registro TLS /var/log/proftpd/tls.log.
5 Configurazione di FileZilla per TLS
Per utilizzare FTP con TLS, è necessario un client FTP che supporti TLS, come FileZilla.
In FileZilla, apri Gestione server:
Seleziona il server che utilizza ProFTPd con TLS; nel menu a discesa Tipo di server, seleziona FTPES anziché FTP normale:
Ora puoi connetterti al server. Se lo fai per la prima volta, devi accettare il nuovo certificato SSL del server:
Se tutto va bene, ora dovresti essere loggato sul server:
6 link
- ProFTPd:http://www.proftpd.org/
- FileZilla:http://filezilla-project.org/
- Debian:http://www.debian.org/