FTP e sicurezza · 4 min read · Dec 14, 2025
Come configurare PureFTPd e FileZilla per utilizzare sessioni TLS su CentOS 7.2
Questo articolo spiega come configurare PureFTPd per accettare sessioni TLS su un server CentOS 7.2. FTP semplice è un protocollo insicuro perché tutte le password e i dati vengono trasferiti in chiaro. Utilizzando TLS, l’intera comunicazione può essere crittografata, rendendo così FTP molto più sicuro.
1 Nota Preliminare
Dovresti avere una configurazione funzionante di PureFTPd sul tuo server CentOS 7.2, ad esempio come mostrato in questo tutorial: Server FTP con PureFTPd, MariaDB e Utenti Virtuali (incl. Gestione di Quota e Larghezza di Banda) su CentOS 7.2
2 Installazione di OpenSSL
TLS ha bisogno di OpenSSL; per installare OpenSSL, eseguiamo semplicemente:
yum -y install openssl3 Configurazione di PureFTPd
Apri /etc/pure-ftpd/pure-ftpd.conf…
nano /etc/pure-ftpd/pure-ftpd.confSe vuoi consentire sessioni FTP e TLS, imposta TLS su 1:
[...]
# Questa opzione può accettare tre valori :
# 0 : disabilita il livello di crittografia SSL/TLS (predefinito).
# 1 : accetta sia sessioni tradizionali che crittografate.
# 2 : rifiuta le connessioni che non utilizzano meccanismi di sicurezza SSL/TLS,
# comprese le sessioni anonime.
# Non _devi_ decommentare questo alla cieca. Assicurati che :
# 1) Il tuo server è stato compilato con supporto SSL/TLS (--with-tls),
# 2) Un certificato valido è in atto,
# 3) Solo i client compatibili accederanno.
TLS 1
[...]Se vuoi accettare solo sessioni TLS (no FTP), imposta TLS su 2:
[...]
# Questa opzione può accettare tre valori :
# 0 : disabilita il livello di crittografia SSL/TLS (predefinito).
# 1 : accetta sia sessioni tradizionali che crittografate.
# 2 : rifiuta le connessioni che non utilizzano meccanismi di sicurezza SSL/TLS,
# comprese le sessioni anonime.
# Non _devi_ decommentare questo alla cieca. Assicurati che :
# 1) Il tuo server è stato compilato con supporto SSL/TLS (--with-tls),
# 2) Un certificato valido è in atto,
# 3) Solo i client compatibili accederanno.
TLS 2
[...]Per non consentire affatto TLS (solo FTP), imposta TLS su 0:
[...]
# Questa opzione può accettare tre valori :
# 0 : disabilita il livello di crittografia SSL/TLS (predefinito).
# 1 : accetta sia sessioni tradizionali che crittografate.
# 2 : rifiuta le connessioni che non utilizzano meccanismi di sicurezza SSL/TLS,
# comprese le sessioni anonime.
# Non _devi_ decommentare questo alla cieca. Assicurati che :
# 1) Il tuo server è stato compilato con supporto SSL/TLS (--with-tls),
# 2) Un certificato valido è in atto,
# 3) Solo i client compatibili accederanno.
TLS 0
[...]Quindi rimuovi il # davanti alle seguenti 2 righe:
TLSCipherSuite HIGH
CertFile /etc/ssl/private/pure-ftpd.peme salva il file di configurazione modificato.
4 Creazione del Certificato SSL per TLS
Per utilizzare TLS, dobbiamo creare un certificato SSL. Lo creo in /etc/ssl/private/, quindi creo prima quella directory:
mkdir -p /etc/ssl/private/Dopo, possiamo generare il certificato SSL come segue:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pemNome del Paese (codice di 2 lettere) [XX]: <– Inserisci il tuo Nome del Paese (ad es., “IT”).
Nome dello Stato o della Provincia (nome completo) []: <– Inserisci il tuo Nome dello Stato o della Provincia.
Nome della Località (ad es., città) [Città Predefinita]: <– Inserisci la tua Città.
Nome dell’Organizzazione (ad es., azienda) [Azienda Predefinita Ltd]: <– Inserisci il tuo Nome dell’Organizzazione (ad es., il nome della tua azienda).
Nome dell’Unità Organizzativa (ad es., sezione) []: <– Inserisci il tuo Nome dell’Unità Organizzativa (ad es. “Reparto IT”).
Nome Comune (ad es., il tuo nome o il nome host del tuo server) []: <– Inserisci il Nome di Dominio Completo del sistema (ad es. “server1.example.com”).
Indirizzo Email []: <– Inserisci il tuo Indirizzo Email.
Cambia i permessi del certificato SSL:
chmod 600 /etc/ssl/private/pure-ftpd.pemInfine, riavvia PureFTPd:
systemctl restart pure-ftpd.serviceEcco fatto. Ora puoi provare a connetterti utilizzando il tuo client FTP; tuttavia, dovresti configurare il tuo client FTP per utilizzare TLS - vedi il capitolo successivo su come farlo con FileZilla.
5 Configurazione di FileZilla per TLS
Per utilizzare FTP con TLS, hai bisogno di un client FTP che supporti TLS, come FileZilla o il plugin FireFTP di Firefox.
In FileZilla, apri il Gestore Siti:

Seleziona il server che utilizza PureFTPd con TLS; nel menu a discesa Tipo di Server, seleziona Richiedi FTP Esplicito su TLS invece di FTP normale:

Ora puoi connetterti al server. Se lo fai per la prima volta, devi accettare il nuovo certificato SSL del server poiché stiamo utilizzando un certificato SSL autofirmato:

Se tutto va bene, ora dovresti essere connesso al server:

6 Link
- PureFTPd: http://www.pureftpd.org/
- FileZilla: http://filezilla-project.org/
- CentOS: http://www.centos.org/
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.