以下是CentOS下vsftpd的安全设置方法:
安装vsftpd
sudo yum update && sudo yum install vsftpd
基础安全配置
anonymous_enable=NOchroot_local_user=YES,allow_writeable_chroot=YESuserlist_enable=YES,指定允许/拒绝用户文件(如/etc/vsftpd/user_list)传输安全
ssl_enable=YES,配置证书路径(rsa_cert_file/rsa_private_key_file)pasv_enable=YES,pasv_min_port/pasv_max_port(如50000-50010)防火墙与SELinux
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=50000-50010/tcp # 若使用被动模式
sudo firewall-cmd --reload
sudo setsebool -P ftp_home_dir on
sudo chcon -Rt svirt_sandbox_file_t /home/ftpuser # 指定用户目录
日志与权限管理
xferlog_enable=YES,指定日志路径(xferlog_file=/var/log/vsftpd.log)chown ftpuser:ftpuser /path/to/dir)服务重启
sudo systemctl restart vsftpd
sudo systemctl enable vsftpd
注意:生产环境中建议优先使用SFTP(基于SSH)替代FTP,避免明文传输风险。
参考来源:[1,2,3,4,5,6,7,8,9,10]