我在 sshd_config 中有这样的设置:
AllowUsers test1 test2
Match group sftpgroup
ChrootDirectory /var/www
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Match user test2
ChrootDirectory /var/www/somedomain.dk
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
我正在尝试限制测试2仅使用/var/www/somedomain.dk
由于某种原因,当我尝试使用 Filezilla 帐户登录时测试2我收到此错误:“服务器意外关闭网络连接“
用户已创建并运行。SSH 服务已停止并启动。测试1使用 filezilla 等时有效,并且连接的根是/var/www。 我究竟做错了什么?
答案1
如果 Cudos 提供的答案对您没有帮助,而且我也不认为它会有帮助(没冒犯的意思),请尝试这个:
chown root:root /your/chroot/home
chmod 700 /your/chroot/home
chown user:sftpgroup /your/chroot/home/userdir
chmod 755 /your/chroot/home/userdir
请记住:您的用户将无法在他们的“根”中写入,您需要为他们创建一个目录以供使用。
答案2
感谢您让我注意到 SSH 的这个功能。
以下 Debian 管理文章指出目标目录必须由 root 拥有 - 也许 /var/www/somedomain.dk 不是。