温馨提示×

Linux FTPServer如何设置防火墙规则

小樊
47
2025-09-15 08:25:48
栏目: 智能运维

在Linux系统上设置FTP服务器的防火墙规则,通常涉及使用iptablesfirewalld这样的工具。以下是使用这两种工具设置防火墙规则的基本步骤:

使用 iptables

  1. 允许FTP控制连接(通常是TCP端口21)

    sudo iptables -A INPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT 
  2. 允许FTP数据连接(通常是TCP端口20和动态端口范围)

    sudo iptables -A INPUT -p tcp --dport 20 -m state --state ESTABLISHED -j ACCEPT sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 
  3. 允许被动模式FTP的数据连接(通常是TCP端口范围,例如50000-50050)

    sudo iptables -A INPUT -p tcp --dport 50000:50050 -m state --state NEW,ESTABLISHED -j ACCEPT 
  4. 保存iptables规则

    sudo iptables-save > /etc/iptables/rules.v4 

使用 firewalld

  1. 启用FTP服务

    sudo firewall-cmd --permanent --add-service=ftp sudo firewall-cmd --permanent --add-service=ftp-data 
  2. 允许被动模式FTP的数据连接(例如端口范围50000-50050)

    sudo firewall-cmd --permanent --add-port=50000-50050/tcp 
  3. 重新加载firewalld配置

    sudo firewall-cmd --reload 

注意事项

  • 被动模式FTP:被动模式FTP需要服务器开放一个端口范围用于数据连接。确保这个范围在防火墙规则中是开放的。
  • 安全性:FTP协议本身不安全,建议使用SFTP(SSH File Transfer Protocol)或FTPS(FTP over SSL/TLS)来代替。
  • SELinux:如果系统启用了SELinux,可能还需要配置SELinux策略以允许FTP连接。

通过以上步骤,你可以为Linux上的FTP服务器设置基本的防火墙规则。根据具体需求和安全策略,可能需要进一步调整和优化这些规则。

0