Debian 与 vsftpd 网络配置实战
一 网络与防火墙要点
sudo ufw allow 20/tcp;sudo ufw allow 21/tcppasv_min_port/pasv_max_port,例如 1024–1048,并放行:sudo ufw allow 1024:1048/tcpsudo ufw allow 990/tcpsudo ufw reload二 vsftpd 核心配置示例
anonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022chroot_local_user=YESallow_writeable_chroot=YESlisten=YES,listen_ipv6=NOlisten=NO,listen_ipv6=YESlisten_address=192.0.2.10pasv_enable=YESpasv_min_port=1024pasv_max_port=1048pasv_address=203.0.113.5sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/certs/vsftpd.pemssl_enable=YESallow_anon_ssl=NOforce_local_data_ssl=YESforce_local_logins_ssl=YESssl_tlsv1=YESssl_sslv2=NOssl_sslv3=NOrsa_cert_file=/etc/ssl/certs/vsftpd.pemrsa_private_key_file=/etc/ssl/private/vsftpd.pemxferlog_enable=YES,xferlog_std_format=YES,log_ftp_protocol=YESjournalctl -u vsftpd 查看服务状态与报错。三 部署与验证步骤
sudo apt update && sudo apt install vsftpd -ysudo systemctl start vsftpd && sudo systemctl enable vsftpdsudo adduser ftpuser(按提示设置密码)sudo usermod -s /usr/sbin/nologin ftpusersudo chown ftpuser:ftpuser /home/ftpuser && sudo chmod 755 /home/ftpusersudo ufw allow 21/tcpsudo ufw allow 1024:1048/tcpsudo ufw allow 990/tcpsudo ufw reloadftp your_server_ip(明文)或 lftp -u ftpuser your_server_ip(支持 TLS)四 常见问题与排查
local_enable、write_enable、chroot_local_user 与目录权限;若启用 chroot 且需写入,设置 allow_writeable_chroot=YES(注意安全影响)。pasv_enable=YES、pasv_min_port/pasv_max_port 与防火墙/安全组是否一致;NAT 场景设置 pasv_address 为服务器公网地址。ssl_sslv2/ssl_sslv3=NO)。sudo tail -f /var/log/vsftpd.logjournalctl -u vsftpd -xe