我正在使用 CentOS 8 运行 SFTP 服务器,其中有一个/var/
名为“sftp”的文件夹,该文件夹归 Root 所有,并分配了 777 权限。每个用户都有自己的文件夹,/var/sftp/
并拥有该文件夹的所有权,即用户 test1 获得一个名为的文件夹/var/sftp/test1/
并拥有该文件夹。
我希望当用户登录到服务器时,他们的根目录就是他们的文件夹。这是我的 sshd_config 文件中的配置,我用它来尝试实现这一点:
Match User test1
ForceCommand internal-sftp
PasswordAuthentication yes
ChrootDirectory /var/sftp/test1
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
当我尝试登录用户时收到此错误:
client_loop: send disconnect: Broken pipe
但是当我将 ChrootDirectory 设置为“/var/sftp”时,我没有收到该错误,但“sftp”文件夹是他们的根目录而不是他们的文件夹。