在Debian系统上配置FTP服务器的防火墙,通常涉及使用iptables
或ufw
(Uncomplicated Firewall)来设置规则。以下是使用这两种方法的步骤:
iptables
更新系统:
sudo apt update && sudo apt upgrade
允许FTP流量: FTP使用两个端口:21(控制连接)和20(数据连接)。你还需要考虑被动模式下的额外端口范围。
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
对于被动模式,你需要允许一个端口范围(例如50000-50050):
sudo iptables -A INPUT -p tcp --dport 50000:50050 -j ACCEPT
保存iptables规则: Debian系统通常不会自动保存iptables规则,所以你需要手动保存:
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
设置iptables开机自启动: 创建一个脚本文件来加载这些规则:
sudo nano /etc/network/if-pre-up.d/iptables
添加以下内容:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables/rules.v4
赋予执行权限:
sudo chmod +x /etc/network/if-pre-up.d/iptables
ufw
启用ufw:
sudo ufw enable
允许FTP流量:
sudo ufw allow 21/tcp
sudo ufw allow 20/tcp
sudo ufw allow 50000:50050/tcp
重新加载ufw配置:
sudo ufw reload
无论你使用哪种方法,都可以通过以下命令来验证防火墙规则是否正确应用:
sudo iptables -L -v -n
或者对于ufw
:
sudo ufw status numbered
通过以上步骤,你应该能够在Debian系统上成功配置FTP服务器的防火墙。