如何在ubuntu 中设置ssh 让用户只能使用sftp,而且只能登录到自己的文件夹下面

编辑ssh配置文件, 注释掉以下行

#Subsystem sftp /usr/lib/openssh/sftp-server

如果该用户是有自己的/home/XXX 文件夹,在最后添加

Subsystem sftp internal-sftp
Match Group sftp
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no

或者

Subsystem sftp internal-sftp
Match User XXX
    ChrootDirectory /XXX_folder
    ForceCommand internal-sftp
    AllowTcpForwarding no

运行以下命令添加用户

sudo useradd XXX -s /bin/false
sudo passwd XXX

参考:

  • http ...
more ...