设置sftp用户

  1. # 添加用户组
  2. sudo groupadd sftp
  3. # 添加用户
  4. sudo useradd -g sftp -s /sbin/nologin -M sftpUser
  5. -g # 加入用户组
  6. -s # 指定用户登入后所使用的shell
  7. /sbin/nologin # 用户不允许登录
  8. -M # 不要自动建立用户的登入目录
  9. # 设置用户密码
  10. sudo passwd sftpUser
  11. # 设置sftp组根目录权限
  12. sudo chown root:sftp /home/wwwroot
  13. sudo chmod 755 /home/wwwroot
  14. sudo chown site:sftp /home/wwwroot

配置 sshd_config

  1. # 修改配置
  2. vim /etc/ssh/sshd_config
  3. # 1.注释原有的Subsystem
  4. #Subsystem sftp /usr/libexec/openssh/sftp-server
  5. # 2.新增Subsystem
  6. Subsystem sftp internal-sftp
  7. # 3.文件最底部新增下面配置
  8. Match Group sftp #限制的用户组
  9. ChrootDirectory /home/wwwroot #根目录
  10. ForceCommand internal-sftp
  11. AllowTcpForwarding no
  12. X11Forwarding no
  13. # 检查配置
  14. sshd -t
  15. # 重启配置
  16. systemctl restart sshd
  17. # 测试
  18. sftp -P 22 sftpUser@127.0.0.1

参考