Server FTP · 5 min read · Dec 18, 2025
Come installare e configurare vsftpd con TLS su Debian 8 (Jessie)
Questo articolo spiega come impostare un server vsftpd abilitato TLS su un server Debian 8 e come accedere al server FTP con FileZilla. FTP è un protocollo molto insicuro per impostazione predefinita perché tutte le password e tutti i dati vengono trasferiti in chiaro. Utilizzando TLS, l’intera comunicazione può essere crittografata, rendendo così FTP molto più sicuro.
1 Nota Preliminare
In questo tutorial, utilizzerò il nome host server1.example.com con l’indirizzo IP 192.168.1.100. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato. Utilizzo la configurazione minima del server Debian 8 come base per questo tutorial.
2 Installazione di vsftpd e OpenSSL
OpenSSL è necessario per TLS; per installare vsftpd e OpenSSL, eseguiamo semplicemente:
apt-get -y install vsftpd openssl3 Creazione del Certificato SSL per TLS
Per utilizzare TLS, dobbiamo creare un certificato SSL. Lo creo in /etc/ssl/private - se la directory non esiste, creala ora::
mkdir -p /etc/ssl/private
chmod 700 /etc/ssl/privateDopo, possiamo generare il certificato SSL come segue:
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pemNome del Paese (codice di 2 lettere) [AU]: <– Inserisci il nome del tuo paese (ad es., “IT”).
Nome dello Stato o della Provincia (nome completo) [Some-State]: <– Inserisci il nome del tuo stato o provincia.
Nome della Località (es. città) []: <– Inserisci la tua città.
Nome dell’Organizzazione (es. azienda) [Internet Widgits Pty Ltd]: <– Inserisci il nome della tua organizzazione (ad es., il nome della tua azienda).
Nome dell’Unità Organizzativa (es. sezione) []: <– Inserisci il nome della tua unità organizzativa (ad es. “Reparto IT”).
Nome Comune (es. IL TUO nome) []: <– Inserisci il Nome di Dominio Completo del sistema (ad es. “server1.example.com”).
Indirizzo Email []: <– Inserisci il tuo indirizzo email.
4 Abilitare TLS in vsftpd
Per abilitare TLS in vsftpd, apri /etc/vsftpd.conf…
nano /etc/vsftpd.conf… e aggiungi o modifica le seguenti opzioni:
[...]
# Attiva SSL
ssl_enable=YES
# Consenti agli utenti anonimi di utilizzare connessioni SSL sicure
allow_anon_ssl=YES
# Tutti i login non anonimi sono costretti a utilizzare una connessione SSL sicura per
# inviare e ricevere dati sulle connessioni dati.
force_local_data_ssl=YES
# Tutti i login non anonimi sono costretti a utilizzare una connessione SSL sicura per inviare la password.
force_local_logins_ssl=YES
# Consenti connessioni al protocollo TLS v1. Le connessioni TLS v1 sono preferite
ssl_tlsv1=YES
# Consenti connessioni al protocollo SSL v2. Le connessioni TLS v1 sono preferite
ssl_sslv2=NO
# consenti connessioni al protocollo SSL v3. Le connessioni TLS v1 sono preferite
ssl_sslv3=NO
# Disabilita il riutilizzo della sessione SSL (richiesto da WinSCP)
require_ssl_reuse=NO
# Seleziona quali cifrari SSL vsftpd consentirà per le connessioni SSL crittografate (richiesto da FileZilla)
ssl_ciphers=HIGH
# Questa opzione specifica la posizione del certificato RSA da utilizzare per le connessioni SSL
# crittografate.
rsa_cert_file=/etc/ssl/private/vsftpd.pem
[...] Se utilizzi force_local_logins_ssl=YES e force_local_data_ssl=YES, allora sono consentite solo le connessioni TLS (questo esclude qualsiasi utente con vecchi client FTP che non hanno supporto TLS); utilizzando force_local_logins_ssl=NO e force_local_data_ssl=NO sono consentite sia le connessioni TLS che non TLS, a seconda di ciò che supporta il client FTP.
Oltre alle opzioni TLS, assicurati di avere anche le seguenti impostazioni nel tuo vsftpd.conf per abilitare i login non anonimi:
[...]
# Decommenta questo per consentire agli utenti locali di effettuare il login.
local_enable=YES
#
# Decommenta questo per abilitare qualsiasi forma di comando di scrittura FTP.
write_enable=YES
#
# L'umask predefinita per gli utenti locali è 077. Potresti voler cambiare questo in 022,
# se i tuoi utenti se lo aspettano (022 è usato dalla maggior parte degli altri ftpd)
local_umask=022
[...] Riavvia vsftpd dopo:
service vsftpd restartQuesto è tutto. Ora puoi provare a connetterti utilizzando il tuo client FTP; tuttavia, dovresti configurare il tuo client FTP per utilizzare TLS (questo è obbligatorio se utilizzi force_local_logins_ssl=YES e force_local_data_ssl=YES) - vedi il capitolo successivo su come farlo con FileZilla.
5 Aggiungere un utente vsftpd
In questo passaggio, aggiungeremo un utente Linux locale che possiamo utilizzare per connetterci. Creerò un utente “till” con la password “howtoforge”. Tutti gli utenti FTP dovrebbero avere le loro directory home in mkdir /var/ftproot, quindi creerò prima questa directory.
mkdir /var/ftprootPoi aggiungi l’utente con il comando:
adduser --home /var/ftproot/till tillIl comando adduser chiederà la password dell’utente e alcuni altri dettagli
root@server1:/# adduser --home /var/ftproot/till till
Aggiunta utente `till' ...
Aggiunta nuovo gruppo `till' (1001) ...
Aggiunta nuovo utente `till' (1001) con gruppo `till' ...
Creazione della directory home `/var/ftproot/till' ...
Copia dei file da `/etc/skel' ...
Inserisci la nuova password UNIX: <-- Inserisci qui la nuova password
Reinserisci la nuova password UNIX: <-- Inserisci qui la nuova password
passwd: password aggiornata con successo
Modifica le informazioni utente per till
Inserisci il nuovo valore, oppure premi INVIO per il predefinito
Nome Completo []: <-- Inserisci il tuo nome qui o premi invio per saltare
Numero Stanza []: <-- Inserisci il numero della stanza qui o premi invio per saltare
Telefono Lavoro []: <-- Inserisci il telefono del lavoro qui o premi invio per saltare
Telefono Casa []: <-- Inserisci il telefono di casa qui o premi invio per saltare
Altro []: <-- Inserisci altri dettagli utente qui o premi invio per saltare
Le informazioni sono corrette? [Y/n] <-- YAbbiamo aggiunto con successo un utente FTP.
6 Configurare FileZilla per TLS
Per utilizzare FTP con TLS, hai bisogno di un client FTP che supporti TLS, come FileZilla.
In FileZilla, apri il Server Manager:

Inserisci l’indirizzo IP o il nome host del server FTP nel campo server, seleziona il protocollo “FTP” e “Richiedi FTP esplicito su TLS”, e inserisci il nome utente nel campo utente.

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 connesso al server:

7 Link
- vsftpd: https://security.appspot.com/vsftpd.html
- FileZilla: http://filezilla-project.org/
- Debian: http://www.debian.org/
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.