ubuntu

Ubuntu FTP服务器防火墙规则

小樊
46
2025-08-20 11:36:42
栏目: 云计算

在Ubuntu上配置FTP服务器防火墙规则,常用工具为ufwiptables,需开放FTP控制端口(21)、数据端口(20)及被动模式端口范围(通常为1024-1048或自定义范围),以下是具体步骤及安全建议:

一、使用ufw配置(推荐)

  1. 安装并启用ufw
    sudo apt update && sudo apt install ufw
    sudo ufw enable
    
  2. 允许FTP基础端口
    sudo ufw allow 20/tcp   # 数据传输端口
    sudo ufw allow 21/tcp   # 控制连接端口
    
  3. 允许被动模式端口范围
    sudo ufw allow 50000:50050/tcp  # 根据实际配置调整范围(需与FTP服务器设置一致)
    
  4. 限制IP访问(可选)
    sudo ufw allow from <允许的IP段> to any port 21  # 仅允许特定IP访问控制端口
    sudo ufw deny 21/tcp                # 拒绝其他IP访问控制端口
    
  5. 检查规则
    sudo ufw status
    

二、使用iptables配置

  1. 安装iptables
    sudo apt install iptables
    
  2. 允许FTP基础端口
    sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    
  3. 允许被动模式端口范围
    sudo iptables -A INPUT -p tcp --dport 50000:50050 -j ACCEPT  # 调整为实际范围
    
  4. 保存规则
    sudo apt install iptables-persistent
    sudo netfilter-persistent save
    sudo netfilter-persistent reload
    
  5. 查看规则
    sudo iptables -L -v -n
    

三、关键注意事项

  1. 被动模式配置
    • 需在FTP服务器(如vsftpd)中设置被动模式端口范围(如pasv_min_port=50000pasv_max_port=50050),并与防火墙规则一致。
  2. 安全性增强
    • 优先使用**FTPS(FTP over SSL/TLS)SFTP(SSH文件传输)**替代传统FTP,避免明文传输。
    • 限制FTP访问IP(通过ufwiptables),避免开放公网访问。
  3. 服务重启
    • 配置后重启FTP服务生效:sudo systemctl restart vsftpd

四、参考来源

0
看了该问题的人还看了