Linux FTP服务器防火墙设置需开放FTP控制端口(21)、数据端口(20)及被动模式端口范围,以下是常用工具的配置方法:
sudo systemctl start firewalld
sudo systemctl enable firewalld
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 # 被动模式端口范围(按需调整)
sudo firewall-cmd --reload
sudo apt-get install iptables # Debian/Ubuntu
sudo yum install iptables # CentOS/RHEL
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 30000:31000 -j ACCEPT # 被动模式
sudo iptables-save > /etc/iptables/rules.v4 # 保存规则(Ubuntu/Debian)
sudo service iptables save # 保存规则(CentOS/RHEL)
sudo ufw enable
sudo ufw allow 21/tcp # 控制连接
sudo ufw allow 20/tcp # 数据连接
sudo ufw allow 30000:31000/tcp # 被动模式
sudo ufw reload
pasv_min_port和pasv_max_port,并与防火墙规则一致。sudo firewall-cmd --list-all(firewalld)或sudo iptables -L查看规则是否生效。