致命:SFTP 中 chroot 目录组件“/”的所有权或模式错误

致命:SFTP 中 chroot 目录组件“/”的所有权或模式错误

我一直在尝试在 debian 服务器中配置 sftp。sshd_config:

Subsystem sftp internal-sftp

UsePAM no

Match User sftpUser
ChrootDirectory /users/sftp/sftpUser
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no

目录:

 drwxr-xr-x   3 root      root      4096 Oct 20 10:59 users

 drwxr-xr-x   3 root      root      4096 Oct 20 11:00 sftp

 drwxr-xr-x   2 root      root      4096 Oct 20 11:00 sftpUser

cat /var/log/auth.log

Oct 20 10:58:22 w1 sshd[24634]: Accepted password for sftpUser from 201.156.103.213 port 34106 ssh2
Oct 20 10:58:22 w1 sshd[24636]: fatal: bad ownership or modes for chroot directory component "/"

sftpUser 没有家庭,bin/false并且不是用户组的成员。

在客户端,我得到了著名的结果Write failed: Broken pipe,然后连接断开了。注释ChrootDirectorysshd_config 中的命令可以建立连接,但用户却丢失了。

我究竟做错了什么 ?

答案1

使用ChrootDirectory选项sshd_config需要对书面文本有一些基本的了解。

这是手册页的快照sshd_config(5)

Chroot目录

chroot(2)指定认证后 目录的路径名。路径名的所有组成部分都必须是 root 拥有的目录,且其他任何用户或组都无法写入。chroot 之后,sshd(8)将工作目录更改为用户的主目录。

这是您的错误日志:

fatal: bad ownership or modes for chroot directory component "/"

这意味着您需要确保满足引文中强调的部分:您/需要由 root 拥有,并且w仅对所有者拥有 acl。

相关内容