debian

Debian FTPServer如何配置防火墙

小樊
34
2025-04-23 09:39:45
栏目: 智能运维

配置Debian FTPServer的防火墙可以通过使用 Uncomplicated Firewall (UFW) 或者 iptables 来实现。以下是使用这两种方法的详细步骤:

使用UFW配置防火墙

  1. 安装UFW(如果尚未安装):

    sudo apt update
    sudo apt install ufw
    
  2. 启用UFW

    sudo ufw enable
    
  3. 允许FTP流量

    • 允许FTP控制端口(21):
      sudo ufw allow 21/tcp
      
    • 允许FTP数据传输端口(20):
      sudo ufw allow 20/tcp
      
    • 允许FTP被动模式端口范围(例如30000-31000):
      sudo ufw allow 30000:31000/tcp
      
  4. 重新加载防火墙规则

    sudo ufw reload
    
  5. 检查防火墙状态

    sudo ufw status
    

使用iptables配置防火墙

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

    sudo apt update
    sudo apt install iptables
    
  2. 配置防火墙规则: 编辑 /etc/iptables/rules.v4 文件,添加以下规则:

    *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0]
    -A INPUT -p tcp --dport 21 -j ACCEPT # 允许FTP控制端口
    -A INPUT -p tcp --dport 20 -j ACCEPT # 允许FTP数据传输端口
    -A INPUT -p tcp --dport 30000:31000 -j ACCEPT # 允许FTP被动模式端口范围
    -A INPUT -i lo -j ACCEPT # 允许本地回环接口
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # 允许已建立的连接
    -A INPUT -j REJECT --reject-with icmp-host-prohibited # 拒绝其他所有输入
    COMMIT
    
  3. 保存iptables规则

    sudo iptables-save /etc/iptables/rules.v4
    
  4. 创建自启动脚本(确保规则在系统重启后依然有效): 编辑 /etc/network/if-pre-up.d/iptables 文件,添加以下内容:

    #!/bin/sh
    /sbin/iptables-restore < /etc/iptables/rules.v4
    

    赋予脚本执行权限:

    sudo chmod +x /etc/network/if-pre-up.d/iptables
    
  5. 测试防火墙规则: 使用以下命令检查规则是否生效:

    sudo iptables -L -n
    

通过以上步骤,你可以成功配置Debian FTPServer的防火墙,允许FTP流量通过。

0
看了该问题的人还看了