本文介绍如何在linux系统中配置防火墙,以允许FTP连接。我们将使用iptables和firewalld两种常用工具进行说明。
方法一:使用iptables
iptables是Linux系统中常用的防火墙工具。配置FTP防火墙规则主要包括以下步骤:
-
开放必要端口: FTP控制连接使用TCP端口21,数据连接使用TCP端口20(主动模式)或服务器端动态分配的端口范围(被动模式)。
sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
-
配置被动模式端口范围: 假设被动模式使用1024-1048端口范围:
sudo iptables -A INPUT -p tcp --dport 1024:1048 -j ACCEPT
-
保存规则: 保存规则的方法取决于你的Linux发行版。例如,在debian/ubuntu系统中:
sudo netfilter-persistent save sudo netfilter-persistent reload
在centos/RHEL系统中:
sudo service iptables save
方法二:使用firewalld
firewalld是更现代化的防火墙管理工具,使用起来更方便。配置FTP规则步骤如下:
-
开放必要端口: 使用firewalld的富规则(rich rules)添加端口:
sudo firewall-cmd --permanent --add-port=21/tcp sudo firewall-cmd --permanent --add-port=20/tcp sudo firewall-cmd --permanent --add-port=1024-1048/tcp
-
重新加载配置:
sudo firewall-cmd --reload
重要提示:
- 被动模式端口范围: 选择一个不会与其他服务冲突的端口范围,并确保这些端口在防火墙中已开放。
- 安全性: FTP协议本身不安全,建议使用更安全的SFTP或FTPS协议。
- SELinux: 如果你的系统启用了SELinux,可能需要额外配置SELinux策略才能允许FTP流量。
完成以上步骤后,你的Linux系统应该能够正常处理FTP连接了。 请根据你的实际情况选择合适的防火墙工具和端口范围。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END