CentOS FTP 服务器如何实现虚拟用户登录

656
2025/2/8 18:32:23
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在 CentOS 上设置 FTP 服务器并实现虚拟用户登录,通常需要以下几个步骤:

  1. 安装 vsftpd: 首先,确保你的系统上已经安装了 vsftpd。如果没有安装,可以使用以下命令进行安装:

    sudo yum install vsftpd
    
  2. 创建虚拟用户: 你可以使用 useradd 命令来创建虚拟用户。例如:

    sudo useradd -m ftpuser1
    sudo passwd ftpuser1
    

    这将创建一个名为 ftpuser1 的用户,并为其分配一个密码。

  3. 配置 vsftpd: 编辑 vsftpd 的配置文件 /etc/vsftpd/vsftpd.conf,确保以下配置项被正确设置:

    anonymous_enable=NO
    local_enable=YES
    write_enable=YES
    chroot_local_user=YES
    allow_writeable_chroot=YES
    

    这些配置项的含义如下:

    • anonymous_enable=NO:禁止匿名用户登录。
    • local_enable=YES:允许本地用户登录。
    • write_enable=YES:允许本地用户有写权限。
    • chroot_local_user=YES:将本地用户锁定在其主目录中。
    • allow_writeable_chroot=YES:允许 chroot 目录可写(这是为了安全考虑,但有时可能需要设置为 NO)。
  4. 创建用户目录: 为虚拟用户创建一个主目录,例如:

    sudo mkdir /home/ftpuser1
    sudo chown ftpuser1:ftpuser1 /home/ftpuser1
    sudo chmod 755 /home/ftpuser1
    
  5. 重启 vsftpd 服务: 保存配置文件后,重启 vsftpd 服务以应用更改:

    sudo systemctl restart vsftpd
    
  6. 配置防火墙: 确保防火墙允许 FTP 服务的端口(默认为 21)。例如,使用 firewalld

    sudo firewall-cmd --permanent --add-service=ftp
    sudo firewall-cmd --reload
    
  7. 测试 FTP 连接: 使用 ftp 命令或任何 FTP 客户端工具(如 FileZilla)来测试虚拟用户的登录功能。例如:

    ftp ftp://ftpuser1@your_server_ip
    

    输入密码后,你应该能够成功登录到服务器。

通过以上步骤,你就可以在 CentOS 上设置一个支持虚拟用户登录的 FTP 服务器。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: PostgreSQL备份策略在CentOS中如何制定