centos

如何在CentOS上配置FTP被动模式

小樊
73
2025-03-31 19:25:25
栏目: 智能运维

在CentOS上配置FTP被动模式,你需要使用vsftpd(Very Secure FTP Daemon)作为FTP服务器。以下是配置步骤:

  1. 安装vsftpd: 如果你还没有安装vsftpd,请使用以下命令安装:

    sudo yum install vsftpd
    
  2. 启动vsftpd服务: 使用以下命令启动vsftpd服务:

    sudo systemctl start vsftpd
    

    若要使vsftpd在系统启动时自动运行,请执行:

    sudo systemctl enable vsftpd
    
  3. 配置vsftpd: 使用文本编辑器(如vi或nano)打开vsftpd配置文件:

    sudo vi /etc/vsftpd/vsftpd.conf
    

    在配置文件中找到以下设置并进行修改:

    • listen_enable=YES取消注释(删除行首的#号),以启用被动模式。

    • 添加或修改以下设置以允许被动模式的连接:

      pasv_enable=YES
      pasv_min_port=1024
      pasv_max_port=1048
      

      这将允许FTP客户端在1024到1048端口范围内建立被动连接。你可以根据需要更改这些端口号,但请确保防火墙允许这些端口的流量。

    • 若要限制FTP用户的访问权限,请确保以下设置已启用(取消注释):

      local_enable=YES
      chroot_local_user=YES
      allow_writeable_chroot=YES
      
    • 若要允许用户使用本地用户登录,请确保以下设置已启用(取消注释):

      local_enable=YES
      
    • 若要允许用户上传和下载文件,请确保以下设置已启用(取消注释):

      write_enable=YES
      
  4. 保存并关闭配置文件。

  5. 重启vsftpd服务以应用更改:

    sudo systemctl restart vsftpd
    
  6. 配置防火墙: 如果你使用的是firewalld,请运行以下命令以允许FTP被动模式的端口范围:

    sudo firewall-cmd --permanent --zone=public --add-port=1024-1048/tcp
    sudo firewall-cmd --reload
    

现在,你应该已经在CentOS上成功配置了FTP被动模式。你可以使用FTP客户端(如FileZilla)连接到服务器,并确保在连接设置中选择被动模式。

0
看了该问题的人还看了