debian@italia:~/wiki/$
cat vsftpd-ftp-anonimo-port-forwarding.md
Se ti serve un server FTP pubblico e semplice da usare, vsftpd resta una scelta stabile e leggera.
In questa guida configuriamo un FTP anonimo su Debian e apriamo la porta 21 dal router in modo corretto.
1) Requisiti e note importanti
Prima di iniziare:
- server Debian aggiornato
- accesso root o sudo
- IP locale statico sul server (es.
192.168.1.50) - accesso al pannello del router
Nota sicurezza: FTP classico non cifra il traffico. Se devi trasferire dati sensibili, valuta SFTP o FTPS.
2) Installazione di vsftpd
Aggiorna e installa:
sudo apt update
sudo apt install -y vsftpd
Abilita e avvia il servizio:
sudo systemctl enable --now vsftpd
sudo systemctl status vsftpd
3) Backup configurazione originale
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak
4) Configurazione FTP anonimo
Apri il file:
sudo nano /etc/vsftpd.conf
Usa una configurazione minima come questa:
listen=YES
listen_ipv6=NO
anonymous_enable=YES
local_enable=NO
write_enable=NO
anon_root=/srv/ftp
no_anon_password=YES
hide_ids=YES
xferlog_enable=YES
ftpd_banner=DebianItalia FTP server
# Modalita passive (consigliata dietro NAT)
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30050
Crea la directory pubblica:
sudo mkdir -p /srv/ftp
sudo chown -R ftp:ftp /srv/ftp
sudo chmod -R 755 /srv/ftp
Riavvia il servizio:
sudo systemctl restart vsftpd
5) Firewall del server
Se usi UFW, apri porta 21 e range passive:
sudo ufw allow 21/tcp
sudo ufw allow 30000:30050/tcp
sudo ufw reload
6) Port forwarding sul router (porta 21)
Nel router crea una regola NAT/Port Forward:
- Nome: FTP
- Protocollo: TCP
- Porta esterna:
21 - IP interno: IP locale del server (es.
192.168.1.50) - Porta interna:
21
Se hai client esterni che usano modalità passive, aggiungi anche:
- Protocollo: TCP
- Porta esterna:
30000-30050 - IP interno: stesso server
- Porta interna:
30000-30050
7) Test locale e test da esterno
Test locale:
ftp 127.0.0.1
Test da esterno (rete diversa):
- client FTP (FileZilla o simili)
- host: IP pubblico o dominio
- porta: 21
- utente: anonimo
Se non entra:
- controlla doppio NAT / CGNAT
- verifica IP interno corretto nel forward
- verifica range passive aperto
8) Hardening minimo consigliato
Per ridurre rischi su FTP anonimo:
- lascia upload disabilitati (
write_enable=NO) - usa cartella dedicata e sola lettura
- limita i file esposti a contenuti pubblici
- monitora i log (
/var/log/vsftpd.log)
9) Comandi rapidi utili
# verifica porta 21 in ascolto
sudo ss -lntp | grep :21
# log realtime
sudo tail -f /var/log/vsftpd.log
# restart servizio
sudo systemctl restart vsftpd
Guida redatta dal team DebianItalia. Per info, suggerimenti o correzioni: info@debianitalia.it.