我已经设置了 SFTP 并设置了 chroot
Subsystem sftp internal-sftp
Match Group ftpusers
ChrootDirectory /home/sftp_chroot/%u
ForceCommand internal-sftp
但是我怎样才能在登录时在用户主页中实现 cd 到 ftp 目录?
在 Ubuntu 16.10 LTS 和 OpenSSH_7.2p2 Ubuntu-4ubuntu2.4、OpenSSL 1.0.2g 2016 年 3 月 1 日:
sshd_conf 中的 ChrootDirectory 必须是父目录或与用户主目录相同。
登录后设置初始目录的正确方法是将-d参数写入/etc/ssh/sshd_conf中的internal-sftp
ForceCommand internal-sftp -d /ftp
确定将用户主目录设置为 /ftp 解决了我的问题
就像用户登录时 chroot/home/sftp/chroot/<user>
成为 root一样/
。然后用户被放入主目录/ftp
,影响是/home/sftp/chroot/<user>/ftp
这是不好的做法,因为“监禁”用户/home/sftp_chroot/<user>
修复了安全问题。如果您真的需要,您可以将 chroot 目录变量更改为您想要%u
的任何用户名。