在配置Linux FTPServer(通常使用vsftpd)的防火墙时,需要确保开放必要的端口以允许FTP流量通过。以下是一些基本的防火墙配置建议:
查看当前防火墙状态:
使用以下命令查看iptables的当前规则:
sudo iptables -L -n -v
或者,如果你使用的是firewalld:
sudo firewall-cmd --list-all
开放FTP端口:
对于iptables,允许FTP控制连接(端口21)和FTP数据连接(端口20)通过:
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
对于firewalld,添加规则以允许FTP端口:
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=20/tcp
sudo firewall-cmd --reload
配置被动模式端口范围(如果使用被动模式):
在vsftpd配置文件(通常位于/etc/vsftpd.conf
)中设置被动模式端口范围,然后重启vsftpd服务:
pasv_min_port 30000
pasv_max_port 31000
sudo systemctl restart vsftpd
在防火墙中添加被动模式端口范围:
sudo firewall-cmd --permanent --add-port=30000-31000/tcp
sudo firewall-cmd --reload
保存防火墙规则:
使用以下命令保存iptables规则,以确保系统重启后规则仍然有效:
sudo iptables-save > /etc/iptables/rules.v4
对于firewalld,规则通常会自动保存,但可以通过以下命令确认:
sudo firewall-cmd --runtime-to-permanent
考虑使用SELinux增强安全(可选):
SELinux提供了额外的安全层,可以与防火墙配合使用,进一步提升系统的安全性。
定期检查和更新防火墙规则:
随着网络环境的变化,定期审核和更新防火墙规则非常重要,以应对新的威胁和挑战。
请注意,以上命令和步骤是基于Linux系统的一般配置流程,具体配置可能会因Linux发行版和vsftpd版本的不同而有所差异。在实际操作中,建议参考所使用Linux发行版的官方文档或寻求专业人士的帮助以确保配置的正确性和安全性。