在Debian系统上设置FTP服务器的防火墙,通常涉及配置iptables
或使用ufw
(Uncomplicated Firewall)。以下是使用这两种方法的步骤:
iptables
更新iptables规则: 打开终端并输入以下命令来更新iptables规则,允许FTP流量通过。
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 990 -j ACCEPT # FTPS (Explicit TLS)
sudo iptables -A INPUT -p tcp --dport 40000:50000 -j ACCEPT # Passive mode ports
保存iptables规则: Debian默认不会自动保存iptables规则,所以你需要手动保存它们。
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
启用IP转发(如果需要):
编辑/etc/sysctl.conf
文件,确保以下行没有被注释掉:
net.ipv4.ip_forward=1
然后应用更改:
sudo sysctl -p
ufw
启用ufw: 如果你还没有启用ufw,可以使用以下命令启用它:
sudo ufw enable
允许FTP流量: 使用以下命令允许FTP流量通过:
sudo ufw allow 21/tcp
sudo ufw allow 20/tcp
sudo ufw allow 990/tcp # FTPS (Explicit TLS)
sudo ufw allow 40000:50000/tcp # Passive mode ports
重新加载ufw规则: 确保所有规则都已应用:
sudo ufw reload
无论你使用哪种方法,都可以通过以下命令来验证防火墙规则是否正确应用:
sudo iptables -L -v -n
或者对于ufw:
sudo ufw status numbered
iptables-persistent
包来保存和加载规则。通过以上步骤,你应该能够在Debian系统上成功设置FTP服务器的防火墙规则。