debian

Debian FTPServer如何进行多用户管理

小樊
35
2025-08-13 06:47:20
栏目: 智能运维

Debian系统使用vsftpd实现多用户管理,步骤如下:

  1. 安装vsftpd

    sudo apt update && sudo apt install vsftpd  
    
  2. 配置基础权限
    编辑配置文件 /etc/vsftpd.conf,启用本地用户登录、写权限及chroot限制:

    local_enable=YES  
    write_enable=YES  
    chroot_local_user=YES  
    allow_writeable_chroot=YES  
    
  3. 创建系统用户
    为每个FTP用户创建系统账户(可禁止SSH登录):

    sudo adduser ftpuser1  # 创建用户  
    sudo passwd ftpuser1   # 设置密码  
    sudo usermod -s /sbin/nologin ftpuser1  # 禁止SSH登录(可选)  
    sudo chown -R ftpuser1:ftpuser1 /home/ftpuser1  # 设置家目录权限  
    sudo chmod 755 /home/ftpuser1  
    
  4. (可选)虚拟用户管理

    • 创建虚拟用户数据库:
      sudo touch /etc/vsftpd/virtual_users.txt  
      echo "user1:password1" | sudo tee -a /etc/vsftpd/virtual_users.txt  
      sudo db_load -T -t hash -f /etc/vsftpd/virtual_users.txt /etc/vsftpd/virtual_users.db  
      
    • 配置PAM认证:
      编辑 /etc/pam.d/vsftpd,添加:
      auth required pam_userdb.so db=/etc/vsftpd/virtual_users  
      account required pam_userdb.so db=/etc/vsftpd/virtual_users  
      
    • 启用虚拟用户:
      /etc/vsftpd.conf 中设置:
      guest_enable=YES  
      guest_username=ftpuser  
      virtual_use_local_privs=YES  
      user_sub_token=$USER  
      local_root=/home/$USER/ftp  
      
  5. 重启服务生效

    sudo systemctl restart vsftpd  
    
  6. 测试连接
    使用FTP客户端(如FileZilla)输入用户名/密码登录,验证是否限制在各自家目录。

说明

0
看了该问题的人还看了