linux

如何设置Linux FTPServer的防火墙

小樊
49
2025-05-20 13:46:43
栏目: 智能运维

设置Linux FTP服务器的防火墙需要确保FTP服务所需的端口是开放的。FTP通常使用两个端口:21(用于控制连接)和20(用于数据传输)。此外,如果使用被动模式(PASV),还需要开放一系列动态端口。以下是如何在常见的Linux发行版上设置防火墙的步骤:

使用iptables

  1. 安装iptables(如果尚未安装)

    sudo apt-get install iptables  # Debian/Ubuntu
    sudo yum install iptables      # CentOS/RHEL
    
  2. 允许FTP控制连接

    sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    
  3. 允许FTP数据连接

    sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
    
  4. 允许被动模式端口范围(例如,50000到50050):

    sudo iptables -A INPUT -p tcp --dport 50000:50050 -j ACCEPT
    
  5. 保存iptables规则

    sudo iptables-save > /etc/iptables/rules.v4  # Debian/Ubuntu
    sudo service iptables save                  # CentOS/RHEL
    

使用firewalld

  1. 安装firewalld(如果尚未安装)

    sudo apt-get install firewalld  # Debian/Ubuntu
    sudo yum install firewalld      # CentOS/RHEL
    
  2. 启动firewalld服务

    sudo systemctl start firewalld
    sudo systemctl enable firewalld
    
  3. 允许FTP控制连接

    sudo firewall-cmd --permanent --add-port=21/tcp
    
  4. 允许FTP数据连接

    sudo firewall-cmd --permanent --add-port=20/tcp
    
  5. 允许被动模式端口范围(例如,50000到50050):

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

    sudo firewall-cmd --reload
    

使用ufw

  1. 安装ufw(如果尚未安装)

    sudo apt-get install ufw  # Debian/Ubuntu
    sudo yum install ufw      # CentOS/RHEL
    
  2. 启用ufw

    sudo ufw enable
    
  3. 允许FTP控制连接

    sudo ufw allow 21/tcp
    
  4. 允许FTP数据连接

    sudo ufw allow 20/tcp
    
  5. 允许被动模式端口范围(例如,50000到50050):

    sudo ufw allow 50000:50050/tcp
    

注意事项

通过以上步骤,您应该能够成功设置Linux FTP服务器的防火墙。

0
看了该问题的人还看了