我有一个用户,在下面的代码中将其称为用户名,在 sshd 配置文件中有以下内容:
Match user username
ChrootDirectory /media/pi/128db83f-859d-48dc-a784-4337c53c736f/username
Match group sftponly
ChrootDirectory /media/pi/128db83f-859d-48dc-a784-4337c53c736f/%u
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
该用户位于 sftponly 组中。我知道对于该用户,第一个 ChrootDirectory 应该生效,而第二个 ChrootDirectory 应该被忽略。
在该目录中有一个名为 upload 的目录,当我以该用户身份登录 SFTP 客户端并列出 upload 中的文件时,它没有列出任何文件,也没有给出错误,而是显示成功。
但是那里有文件,上传目录的权限为 774。已启用公共/其他用户(用户名)的读取访问权限。各个文件本身对公共/其他用户具有读取访问权限。
为什么用户名看不到这些文件?
答案1
现在没问题了,我已经让它工作了。
我为其他用户添加了执行权限:
sudo chmod o+x upload
在上传目录中,现在其中的文件被列出并可以下载。