以下是Ubuntu FTP安全设置的关键步骤,以vsftpd为例:
安装FTP服务器
sudo apt update  
sudo apt install vsftpd  
禁用匿名访问
编辑配置文件 /etc/vsftpd.conf,设置:
anonymous_enable=NO  
限制用户权限
chroot_local_user=YES  
allow_writeable_chroot=YES  
启用SSL/TLS加密
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem  
ssl_enable=YES  
rsa_cert_file=/etc/ssl/private/vsftpd.pem  
rsa_private_key_file=/etc/ssl/private/vsftpd.pem  
ssl_tlsv1=YES  
ssl_sslv2=NO  
ssl_sslv3=NO  
配置防火墙
允许FTP端口(21、990及被动端口范围,如30000-31000):
sudo ufw allow 21/tcp  
sudo ufw allow 990/tcp  
sudo ufw allow 30000:31000/tcp  
sudo ufw enable  
启用日志记录
在配置文件中添加:
xferlog_enable=YES  
xferlog_std_format=YES  
定期更新与监控
sudo apt update && sudo apt upgrade  
/var/log/vsftpd.log。可选:使用SFTP(基于SSH,更安全)替代FTP,需安装openssh-server并配置Subsystem sftp。