Installazione di vsftpd su un sistema Debian 11
La seguente guida descrive come installare il server ftp vsftpd nel sistema Debian 11.
Faremo tutto da terminale eseguendo alcuni semplici comandi.
Il primo passo è eseguire il terminale o accedere al nostro server tramite ssh e installare:
1 | sudo apt install vsftpd -y |
Eseguire sul proprio sistema:
1 | sudo systemctl start vsftpd |
1 | sudo systemctl status vsftpd |
1 | systemctl enable vsftpd.service |
Aggiungiamo un nuovo utente al sistema:
1 | sudo adduser testowyftp |
Aggiungiamo alla configurazione del programma:
1 | echo "testowyftp" | sudo tee -a /etc/vsftpd.userlist |
Creiamo una directory per i file utente:
1 | sudo mkdir -p /home/testowyftp/ftp_directory |
1 | sudo chown nobody:nogroup /home/testowyftp/ftp_directory |
1 | sudo chmod a-w /home/testowyftp/ftp_directory |
1 | sudo mkdir -p /home/testowyftp/ftp_directory/ftp_data |
1 | sudo chown testowyftp:testowyftp /home/testowyftp/ftp_directory/ftp_data |
1 | cd /home/testowyftp/ftp_directory/ |
1 | chmod -R 777 ftp_data |
Facciamo un backup del file di configurazione ftp
1 | sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak |
Modifichiamo il file e apportiamo modifiche:
1 | nano /etc/vsftpd.conf |
Cambieremo come segue:
1 2 3 | anonymous_enable=NO local_enable=YES |
E lo impostiamo nello stesso file:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | listen=NO listen_ipv6=YES anonymous_enable=NO write_enable=YES local_umask=022 dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd user_sub_token=$USER local_root=/home/$USER/ftp_directory userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO |
Ricarichiamo il server ftp:
1 | sudo systemctl restart vsftpd |
L'ultimo passaggio consiste nell'aggiungere la porta 21 al firewall
1 2 3 4 5 | sudo ufw allow 21/tcp sudo ufw allow 22/tcp sudo ufw reload |
Questo è tutto, ora dovremmo accedere correttamente a ftp sull'ftp dell'utente di prova