Hosting Virtuale · 2 min read · Feb 09, 2026
Hosting Virtuale Con vsftpd E MySQL Su Debian Etch - Pagina 2
4 Configurare vsftpd
Prima creiamo un utente non privilegiato chiamato vsftpd (con la home directory /home/vsftpd) appartenente al gruppo nogroup. Eseguiremo vsftpd sotto questo utente, e le directory FTP dei nostri utenti virtuali saranno nella directory /home/vsftpd (ad esempio /home/vsftpd/user1, /home/vsftpd/user2, ecc.).
useradd --home /home/vsftpd --gid nogroup -m --shell /bin/false vsftpdPoi facciamo un backup del file originale /etc/vsftpd.conf e creiamo il nostro:
cp /etc/vsftpd.conf /etc/vsftpd.conf_orig
cat /dev/null > /etc/vsftpd.conf
vi /etc/vsftpd.confIl file dovrebbe avere il seguente contenuto:
| listen=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES nopriv_user=vsftpd chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd pam_service_name=vsftpd rsa_cert_file=/etc/ssl/certs/vsftpd.pem guest_enable=YES guest_username=vsftpd local_root=/home/vsftpd/$USER user_sub_token=$USER virtual_use_local_privs=YES user_config_dir=/etc/vsftpd_user_conf |
Le opzioni di configurazione sono spiegate su http://vsftpd.beasts.org/vsftpd_conf.html. Le opzioni importanti per la nostra configurazione virtuale sono chroot_local_user, guest_enable, guest_username, user_sub_token, local_root e virtual_use_local_privs.
Con l’opzione user_config_dir puoi specificare una directory per i file di configurazione per utente che sovrascrivono parti delle impostazioni globali. Questo è totalmente facoltativo e sta a te decidere se vuoi utilizzare questa funzionalità. Tuttavia, dovremmo creare quella directory ora:
mkdir /etc/vsftpd_user_confOra dobbiamo configurare PAM in modo che utilizzi il database MySQL per autenticare i nostri utenti FTP virtuali invece di /etc/passwd e /etc/shadow. La configurazione PAM per vsftpd si trova in /etc/pam.d/vsftpd. Facciamo un backup del file originale e creiamo un nuovo file in questo modo:
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd_orig
cat /dev/null > /etc/pam.d/vsftpd
vi /etc/pam.d/vsftpd| auth required pam_mysql.so user=vsftpd passwd=ftpdpass host=localhost db=vsftpd table=accounts usercolumn=username passwdcolumn=pass crypt=2 account required pam_mysql.so user=vsftpd passwd=ftpdpass host=localhost db=vsftpd table=accounts usercolumn=username passwdcolumn=pass crypt=2 |
Assicurati di sostituire la password di MySQL con la tua!
Dopo, riavviamo vsftpd:
/etc/init.d/vsftpd restart5 Creare Il Primo Utente Virtuale
Per popolare il database puoi usare la shell di MySQL:
mysql -u root -pUSE vsftpd;Ora creiamo l’utente virtuale testuser con la password secret (che sarà memorizzata in modo crittografato utilizzando la funzione PASSWORD di MySQL):
INSERT INTO accounts (username, pass) VALUES('testuser', PASSWORD('secret'));
quit;directory home di testuser è /home/vsftpd/testuser; sfortunatamente vsftpd non crea automaticamente quella directory se non esiste. Pertanto, la creiamo manualmente ora e la rendiamo di proprietà dell’utente vsftpd e del gruppo nogroup:
mkdir /home/vsftpd/testuser
chown vsftpd:nogroup /home/vsftpd/testuserOra apri il tuo programma client FTP sulla tua workstation (qualcosa come WS_FTP o SmartFTP se sei su un sistema Windows o gFTP su un desktop Linux) e prova a connetterti. Come nome host utilizzi server1.example.com (o l’indirizzo IP del sistema), il nome utente è testuser e la password è secret.
Se riesci a connetterti - congratulazioni! Se no, qualcosa è andato storto.
6 Amministrazione Del Database
Per la maggior parte delle persone è più facile avere un’interfaccia grafica per MySQL; quindi puoi anche usare phpMyAdmin (in questo esempio sotto http://server1.example.com/phpmyadmin/) per amministrare il database vsftpd.

Ogni volta che crei o modifichi un utente, assicurati di utilizzare la funzione PASSWORD di MySQL per crittografare la password di quell’utente. Inoltre, quando crei un nuovo utente virtuale, per favore non dimenticare di creare la home directory di quell’utente nella shell, come mostrato alla fine del capitolo precedente.

7 Link
- vsftpd: http://vsftpd.beasts.org
- Debian: http://www.debian.org
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.