Ubuntu下vsftp如何防止恶意攻击
导读:Ubuntu下 vsftpd 防恶意攻击实用清单 一 基础加固配置 禁用匿名访问:设置 anonymous_enable=NO,仅允许本地系统用户登录(local_enable=YES)。 启用用户白名单:开启 userlist_enab...
Ubuntu下 vsftpd 防恶意攻击实用清单
一 基础加固配置
- 禁用匿名访问:设置 anonymous_enable=NO,仅允许本地系统用户登录(local_enable=YES)。
- 启用用户白名单:开启 userlist_enable=YES,配合 userlist_deny=NO 与 /etc/vsftpd.user_list 仅放行指定账号;同时将禁止登录的账号加入 /etc/vsftpd/ftpusers。
- 限制目录访问:开启 chroot_local_user=YES 将用户锁定在其主目录;为降低风险,优先使用 no_writeable_chroot=YES(若必须可写,再考虑 allow_writeable_chroot,并严格管控上传内容)。
- 精细写权限:按需开启 write_enable=YES,仅对确需上传的目录授予写权限,避免全局可写。
- 传输日志:开启 xferlog_enable=YES 与 xferlog_std_format=YES,便于审计与追踪异常行为。
- 连接加密:启用 ssl_enable=YES,并配置证书与强制加密(见下文示例)。
二 加密与被动模式端口
- 生成自签名证书(示例):
sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048
-keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem - 强制加密与证书路径(/etc/vsftpd.conf):
ssl_enable=YES
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO - 被动模式端口范围(建议固定小段高位端口,便于防火墙放行):
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10009 - 防火墙放行(UFW):
sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 10000:10009/tcp
三 访问控制与网络防护
- 限制来源 IP(UFW):仅允许可信网段访问 FTP 控制端口与被动端口段,例如:
sudo ufw allow from 203.0.113.0/24 to any port 21,10000:10009 proto tcp - 端口与协议最小化:如非必要,避免对外暴露不必要端口;FTP 数据通道端口较多,使用被动模式并限定端口范围更易管控。
- 服务与内核防护:保持系统与 vsftpd 更新(sudo apt update & & sudo apt upgrade);按需启用 fail2ban 对 /var/log/vsftpd.log 或 /var/log/auth.log 进行暴力破解封禁(示例 jail 针对 vsftpd 日志,maxretry 与 bantime 按业务调整)。
四 用户与权限管理
- 专用 FTP 账号:创建仅用于 FTP 的系统用户,并禁止 Shell 登录(例如使用 /usr/sbin/nologin 作为登录 Shell),减少被滥用的风险。
- 目录与所有权:为用户主目录设置合适的权限(如 755),上传目录可设为 775 并归属该用户与组,避免其他用户写入。
- 精细化访问控制:结合用户白名单、chroot 与目录权限,遵循“最小权限原则”。
五 监控与替代方案
- 日志与告警:持续监控 /var/log/vsftpd.log、/var/log/auth.log、/var/log/syslog,对频繁失败登录、异常 IP、异常时段与大量传输等迹象设置告警。
- 更安全的替代:若业务允许,优先采用 SFTP(基于 OpenSSH) 替代 FTP,天然加密、权限模型更完善;在 Ubuntu 上安装 openssh-server 即可提供 SFTP 服务。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu下vsftp如何防止恶意攻击
本文地址: https://pptw.com/jishu/761821.html
