在Linux系统上配置FTP服务器的防火墙规则,通常需要使用iptables或firewalld等工具。以下是使用这两种工具配置防火墙规则的步骤:
打开FTP端口: FTP默认使用两个端口:20(数据传输)和21(控制连接)。你需要确保这些端口在防火墙中是开放的。
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
允许被动模式端口范围: 如果你使用被动模式(PASV),还需要开放一个端口范围供客户端连接。通常,这个范围是1024到65535。
sudo iptables -A INPUT -p tcp --dport 1024:65535 -j ACCEPT
保存iptables规则: iptables规则在系统重启后会丢失,所以需要保存规则。
sudo iptables-save > /etc/iptables/rules.v4
或者使用iptables-persistent
包来持久化规则:
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
打开FTP端口: 使用firewalld打开FTP端口。
sudo firewall-cmd --permanent --add-port=20/tcp
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=1024-65535/tcp
重新加载firewalld配置: 使更改生效。
sudo firewall-cmd --reload
无论使用哪种工具,都可以通过以下命令来验证防火墙规则是否正确配置:
sudo iptables -L -v -n
或者使用firewalld:
sudo firewall-cmd --list-all
通过以上步骤,你应该能够成功配置Linux系统上的FTP服务器防火墙规则。