debian

如何在Debian上设置FTP服务器防火墙

小樊
34
2025-05-07 12:04:09
栏目: 云计算

在Debian上设置FTP服务器防火墙,你需要使用iptablesufw(Uncomplicated Firewall)来配置防火墙规则。以下是使用这两种方法的步骤:

使用 iptables

  1. 更新系统

    sudo apt update && sudo apt upgrade -y
    
  2. 安装FTP服务器(如果你还没有安装):

    sudo apt install vsftpd -y
    
  3. 配置FTP服务器: 编辑/etc/vsftpd.conf文件,确保以下设置:

    listen=YES
    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    chroot_local_user=YES
    allow_writeable_chroot=YES
    
  4. 重启FTP服务

    sudo systemctl restart vsftpd
    
  5. 配置防火墙: 使用iptables添加规则来允许FTP流量。以下是一些基本的规则:

    • 允许FTP控制连接(默认端口21):

      sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
      
    • 允许FTP数据连接(动态端口范围通常是1024-65535):

      sudo iptables -A INPUT -p tcp --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT
      
    • 允许被动模式连接(假设被动模式端口范围是50000-50050):

      sudo iptables -A INPUT -p tcp --dport 50000:50050 -m state --state ESTABLISHED,RELATED -j ACCEPT
      
  6. 保存防火墙规则

    sudo sh -c "iptables-save > /etc/iptables/rules.v4"
    

使用 ufw

  1. 更新系统

    sudo apt update && sudo apt upgrade -y
    
  2. 安装ufw(如果还没有安装):

    sudo apt install ufw -y
    
  3. 启用ufw

    sudo ufw enable
    
  4. 配置FTP服务器: 编辑/etc/vsftpd.conf文件,确保以下设置:

    listen=YES
    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    chroot_local_user=YES
    allow_writeable_chroot=YES
    
  5. 重启FTP服务

    sudo systemctl restart vsftpd
    
  6. 配置防火墙规则: 使用ufw添加规则来允许FTP流量:

    • 允许FTP控制连接(默认端口21):

      sudo ufw allow 21/tcp
      
    • 允许FTP数据连接(动态端口范围通常是1024-65535):

      sudo ufw allow 1024:65535/tcp
      
    • 允许被动模式连接(假设被动模式端口范围是50000-50050):

      sudo ufw allow 50000:50050/tcp
      
  7. 重新加载ufw规则

    sudo ufw reload
    

注意事项

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

0
看了该问题的人还看了