Linux系统上FileZilla防火墙设置指南(针对FileZilla Server)
FileZilla本身不提供防火墙配置功能,其防火墙设置需通过操作系统的防火墙工具(如iptables、firewalld、ufw)完成。以下是针对不同工具的具体步骤,重点覆盖FTP服务必需的端口开放及被动模式配置:
在配置防火墙前,需先明确FileZilla Server的控制端口(默认21)和被动模式数据端口范围(需避免与系统其他服务冲突)。
操作步骤:
50000-51000,建议选择10000以上的端口段,减少冲突);firewalld是当前Linux发行版(如CentOS、Fedora、Ubuntu 22.04+)的默认防火墙工具,支持动态规则管理和区域划分。
sudo systemctl start firewalld # 启动服务
sudo systemctl enable firewalld # 开机自启
sudo firewall-cmd --permanent --add-port=21/tcp # 永久添加21端口(FTP控制连接)
将之前设置的被动模式端口段(如50000-51000)添加到防火墙:
sudo firewall-cmd --permanent --add-port=50000-51000/tcp
使永久规则生效:
sudo firewall-cmd --reload
sudo firewall-cmd --list-all | grep -E "21/tcp|50000-51000/tcp"
# 输出应包含上述端口,例如:
# ports: 21/tcp 50000-51000/tcp
sudo setsebool -P ftp_home_dir on
21/tcp替换为实际端口。iptables是Linux早期的防火墙工具,需手动管理规则链。
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT # 允许FTP控制连接
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT # 主动模式数据连接(较少使用)
sudo iptables -A INPUT -p tcp --dport 50000:51000 -j ACCEPT # 被动模式端口范围
不同发行版的保存路径不同:
sudo iptables-save > /etc/iptables/rules.v4
sudo service iptables save
iptables-save和iptables-restore保存/恢复;iptables-persistent(Debian/Ubuntu)或iptables-services(CentOS)。ufw(Uncomplicated Firewall)是Ubuntu的简化防火墙工具,适合新手使用。
sudo ufw enable # 启用ufw
sudo ufw default deny incoming # 默认拒绝入站连接
sudo ufw default allow outgoing # 默认允许出站连接
sudo ufw allow 21/tcp # 允许FTP控制连接
sudo ufw allow 50000:51000/tcp # 允许被动模式端口范围
sudo ufw status verbose # 查看当前规则及状态
sudo iptables -L查看实际规则;sudo ufw allow from 192.168.1.100 to any port 21/tcp。firewall-cmd --list-all/sudo ufw status),确认端口是否开放;sudo setsebool -P ftp_home_dir on允许FTP访问用户目录。通过以上步骤,可完成Linux系统上FileZilla Server的防火墙配置,确保FTP服务正常运行。需根据实际发行版和需求选择合适的工具,并注意被动模式端口范围的合理设置。