温馨提示×

CentOS FTPServer防火墙如何配置

小樊
56
2025-06-04 05:56:21
栏目: 智能运维

在CentOS上配置FTP服务器的防火墙,通常需要确保FTP服务所需的端口是开放的。FTP协议默认使用两个端口:21(用于控制连接)和20(用于数据传输)。此外,如果使用被动模式(PASV),还需要开放一系列动态端口范围。

以下是如何在CentOS 7或CentOS 8上配置防火墙以允许FTP流量的步骤:

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

    sudo yum 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. 开放被动模式端口范围(假设被动模式端口范围为50000-50050):

    sudo firewall-cmd --permanent --add-port=50000-50050/tcp
    
  5. 重新加载防火墙配置以使更改生效:

    sudo firewall-cmd --reload
    
  6. 验证端口是否已开放

    sudo firewall-cmd --list-all
    

    或者检查特定端口是否开放:

    sudo firewall-cmd --query-port=21/tcp
    sudo firewall-cmd --query-port=50000-50050/tcp
    

注意事项

  • 被动模式端口范围:确保选择的端口范围不会与其他服务冲突,并且已经在服务器上正确配置。
  • SELinux:如果启用了SELinux,可能还需要配置SELinux策略以允许FTP流量。可以使用semanage命令来管理SELinux端口类型。
  • FTP服务器配置:确保FTP服务器(如vsftpd)的配置文件(通常是/etc/vsftpd/vsftpd.conf)正确设置了被动模式端口范围。

示例:配置vsftpd被动模式端口范围

编辑/etc/vsftpd/vsftpd.conf文件,添加或修改以下行:

pasv_enable=YES
pasv_min_port=50000
pasv_max_port=50050

然后重启vsftpd服务:

sudo systemctl restart vsftpd

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

0