Ricerca nel sito web

Come configurare PureFTPd per accettare sessioni TLS su Debian


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 PureFTPd per accettare sessioni TLS su un server Debian. Questo tutorial è compatibile con tutte le versioni Debian fino a Debian 12 (Bookworm).

1 Nota Premessa

Dovresti avere una configurazione PureFTPd funzionante sul tuo server Debian, ad es. come mostrato in questo tutorial: Hosting virtuale con PureFTPd e MySQL (incl. gestione delle quote e della larghezza di banda) su Debian Lenny.

2 Installazione di OpenSSL

OpenSSL è necessario a TLS; per installare OpenSSL, eseguiamo semplicemente:

apt install openssl

3 Configurazione di PureFTPd

Se desideri consentire sessioni FTP e TLS, esegui

echo 1 > /etc/pure-ftpd/conf/TLS

Se vuoi accettare solo sessioni TLS (no FTP), esegui

echo 2 > /etc/pure-ftpd/conf/TLS

Invece.

Per non consentire affatto TLS (solo FTP), eliminare /etc/pure-ftpd/conf/TLS o eseguire

echo 0 > /etc/pure-ftpd/conf/TLS

4 Creazione del certificato SSL per TLS

Per poter utilizzare TLS, dobbiamo creare un certificato SSL. Lo creo in /etc/ssl/private/, quindi creo prima quella directory:

mkdir -p /etc/ssl/private/

Successivamente, 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.pem

Nome del paese (codice a 2 lettere) [AU]: <-- Inserisci il nome del tuo paese (ad es. "DE").
Nome dello stato o della provincia (nome completo) [Some-State]:<-- Inserisci il tuo stato o Nome provincia.
Nome località (ad es. città) []:<-- Inserisci la tua città.
Nome organizzazione (ad es. azienda) [Internet Widgits Pty Ltd]:<-- Inserisci il nome della tua organizzazione (ad es. il nome della tua azienda).
Nome dell'unità organizzativa (ad esempio, sezione) []:<-- Inserisci il nome della tua unità organizzativa (ad esempio, "Dipartimento IT").
Nome comune (ad esempio, il TUO nome) [] :<-- Inserisci il nome di dominio completo del sistema (ad esempio "server1.esempio.com").
Indirizzo email []:<-- Inserisci il tuo indirizzo email.

Modificare i permessi del certificato SSL:

chmod 600 /etc/ssl/private/pure-ftpd.pem

Infine riavvia PureFTPd:

service pure-ftpd-mysql restart

Questo è tutto. 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, è necessario un client FTP che supporti TLS, come FileZilla.

In FileZilla, apri Server Manager:

Seleziona il server che utilizza PureFTPd con TLS; nel menu a discesa Tipo 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 Collegamenti

  • PureFTPd: http://www.pureftpd.org/
  • FileZilla: http://filezilla-project.org/
  • Debian: http://www.debian.org/

Articoli correlati: