在Linux系统上配置FTP服务器的防火墙规则,通常需要使用iptables或firewalld这样的工具。以下是使用这两种工具的简要步骤:
使用iptables配置防火墙规则
- 查看当前防火墙规则:
sudo iptables -L
- 允许FTP控制端口(21)和传输端口(20):
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
- 允许FTP数据传输端口范围(例如,30000-31000):
sudo iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT
- 保存iptables规则:
sudo iptables-save /etc/iptables/rules.v4
- 设置iptables规则在系统启动时自动加载:
sudo sh -c "iptables-save /etc/iptables/rules.v4 > /etc/network/if-pre-up.d/iptables" sudo chmod +x /etc/network/if-pre-up.d/iptables
使用firewalld配置防火墙规则
- 安装firewalld(如果尚未安装):
- 对于Debian/Ubuntu系统:
sudo apt-get install firewalld
- 对于CentOS/RHEL系统:
sudo yum install firewalld
- 启动firewalld服务:
sudo systemctl start firewalld
- 设置firewalld开机自启动:
sudo systemctl enable firewalld
- 添加FTP服务到防火墙:
sudo firewall-cmd --permanent --add-port=21/tcp sudo firewall-cmd --permanent --add-port=20/tcp sudo firewall-cmd --permanent --add-port=30000-31000/tcp
- 重新加载firewalld配置:
sudo firewall-cmd --reload
- 查看当前防火墙状态:
sudo firewall-cmd --list-all
请注意,以上命令可能需要root权限才能执行。请根据实际情况调整端口号和IP地址。在配置防火墙规则之前,请确保了解每个命令的作用,以免意外阻止合法的网络流量。建议在修改防火墙规则之前备份原有的规则,以便在出现问题时能够恢复。