centos

centos vsftp如何进行用户管理

小樊
44
2025-08-20 15:01:49
栏目: 智能运维

CentOS下vsFTP用户管理主要涉及系统用户和虚拟用户,步骤如下:

一、系统用户管理

  1. 添加用户

    sudo useradd -m ftpuser  # 创建用户并生成家目录  
    sudo passwd ftpuser     # 设置密码  
    
  2. 删除用户

    sudo userdel -r ftpuser  # 删除用户及家目录  
    
  3. 修改用户密码

    sudo passwd ftpuser  
    
  4. 配置用户权限

    • 限制用户仅能访问家目录:
      编辑/etc/vsftpd/vsftpd.conf,设置:
      chroot_local_user=YES  
      allow_writeable_chroot=YES  # 允许写入(若需上传文件)  
      
    • 通过/etc/vsftpd/user_list控制用户访问权限:
      • userlist_enable=YES:启用用户列表控制。
      • userlist_deny=NO:仅允许列表内用户访问(白名单);YES则为黑名单。

二、虚拟用户管理(无需系统用户)

  1. 安装依赖

    sudo yum install db4 db4-utils vsftpd-pam  
    
  2. 创建虚拟用户数据库

    • 编辑/etc/vsftpd/virtusers.txt,格式为:
      username  
      password  
      
    • 生成数据库文件:
      sudo db_load -T -t hash -f /etc/vsftpd/virtusers.txt /etc/vsftpd/virtusers.db  
      sudo chmod 600 /etc/vsftpd/virtusers.db  
      
  3. 配置PAM认证
    编辑/etc/pam.d/vsftpd,添加:

    auth required pam_userdb.so db=/etc/vsftpd/virtusers  
    account required pam_userdb.so db=/etc/vsftpd/virtusers  
    
  4. 修改vsftpd配置

    guest_enable=YES  
    guest_username=virtual_user  # 虚拟用户映射的系统用户(需提前创建)  
    virtual_use_local_privs=YES  
    user_sub_token=$USER  
    local_root=/home/$USER     # 虚拟用户家目录  
    

三、通用操作

说明

0
看了该问题的人还看了