保障Ubuntu FTP服务器的安全性是非常重要的,以下是一些关键步骤和建议:
vsftpd
或ProFTPD
等FTP服务器软件,并配置它们以支持SSL/TLS。安装vsftpd
和ssl-cert
包:
sudo apt update
sudo apt install vsftpd ssl-cert
配置vsftpd
以使用SSL/TLS:
编辑/etc/vsftpd.conf
文件,添加或修改以下行:
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
重启vsftpd
服务:
sudo systemctl restart vsftpd
ufw
(Uncomplicated Firewall)或其他防火墙工具来限制对FTP服务器的访问。启用ufw:
sudo ufw enable
允许FTP相关端口:
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp
sudo ufw allow 989/tcp
在/etc/vsftpd.conf
中添加或修改以下行:
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
vsftpd
以使用chroot jail:chroot_local_user=YES
allow_writeable_chroot=YES
fail2ban
来防止暴力破解攻击。安装fail2ban:
sudo apt install fail2ban
配置fail2ban以监控FTP登录尝试:
编辑/etc/fail2ban/jail.local
文件,添加以下内容:
[vsftpd]
enabled = true
port = ftp
filter = vsftpd
logpath = /var/log/vsftpd.log
bantime = 3600
重启fail2ban服务:
sudo systemctl restart fail2ban
通过以上步骤,你可以显著提高Ubuntu FTP服务器的安全性。记住,安全是一个持续的过程,需要定期审查和更新配置。