在Ubuntu上配置vsftpd防火墙,主要涉及ufw(默认防火墙工具)或iptables,核心步骤如下:
sudo apt update
sudo apt install vsftpd
sudo systemctl enable --now vsftpd # 启用并启动服务
编辑配置文件 /etc/vsftpd.conf
,确保以下设置:
# 基础安全配置
anonymous_enable=NO # 禁止匿名登录
local_enable=YES # 允许本地用户登录
write_enable=YES # 允许上传文件
chroot_local_user=YES # 限制用户到主目录
# 被动模式端口范围(需与防火墙一致)
pasv_enable=YES
pasv_min_port=40000 # 起始端口(可自定义,如40000-50000)
pasv_max_port=50000
保存后重启服务:
sudo systemctl restart vsftpd
sudo ufw allow 21/tcp # 控制连接(默认端口21)
sudo ufw allow 20/tcp # 数据连接(默认端口20,主动模式需此端口)
sudo ufw allow 40000:50000/tcp # 被动模式端口范围(需与vsftpd配置一致)
sudo ufw reload
sudo ufw status # 查看规则,确认端口已开放
若使用iptables,需执行以下命令:
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 40000:50000 -j ACCEPT
sudo netfilter-persistent save # 保存规则(需安装iptables-persistent)
vsftpd
配置SSL/TLS(需生成证书并修改/etc/vsftpd.conf
)。sudo ufw deny in on eth0 from any to any port 21 # 拒绝非指定IP的FTP控制连接
sudo ufw allow in on eth0 from 192.168.1.0/24 to any port 21 # 允许指定IP段
xferlog_enable=YES
),定期检查异常登录尝试。以上配置参考自,根据实际需求调整端口范围和访问控制策略。