温馨提示×

Ubuntu下vsftp的防火墙配置

小樊
48
2026-01-06 20:51:00
栏目: 智能运维

在Ubuntu下配置VSFTPD(Very Secure FTP Daemon)的防火墙,通常需要确保FTP服务所需的端口是开放的。VSFTPD默认使用以下端口:

  • 21/tcp:用于控制连接(命令通道)
  • 20/tcp:用于数据传输(数据通道)

以下是配置防火墙以允许这些端口的步骤:

使用UFW(Uncomplicated Firewall)

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

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

    sudo ufw enable
    
  3. 允许FTP端口

    sudo ufw allow 21/tcp
    sudo ufw allow 20/tcp
    
  4. 检查UFW状态

    sudo ufw status
    

使用iptables

  1. 允许FTP端口

    sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
    
  2. 保存iptables规则(Ubuntu 18.04及更高版本):

    sudo apt install iptables-persistent
    sudo netfilter-persistent save
    sudo netfilter-persistent reload
    

使用firewalld

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

    sudo apt update
    sudo apt install firewalld
    
  2. 启动并启用firewalld

    sudo systemctl start firewalld
    sudo systemctl enable firewalld
    
  3. 允许FTP端口

    sudo firewall-cmd --permanent --add-port=21/tcp
    sudo firewall-cmd --permanent --add-port=20/tcp
    
  4. 重新加载firewalld配置

    sudo firewall-cmd --reload
    
  5. 检查firewalld状态

    sudo firewall-cmd --list-all
    

注意事项

  • 被动模式:VSFTPD通常还需要配置被动模式(PASV),以便客户端可以从防火墙后面连接。被动模式使用的端口范围需要在防火墙中开放。
  • 安全性:确保你的FTP服务器配置是安全的,例如使用SSL/TLS加密传输。

通过以上步骤,你应该能够在Ubuntu下成功配置VSFTPD的防火墙。

0