Gre*_*hal 5 linux chroot sftp acl access-control
我有一个带有 /Documents 目录的 RHEL 6 服务器,它有子目录 1 2 3 4 5.... 就在 /Documents 目录下。是否可以创建一个仅允许用户访问 1、2、7、9 而不能访问其他文件夹的 SFTP chroot jail?
我在 RHEL 6 中使用 NFSv3,因此在 ACL 选择方面受到了一定的限制。
不,我不认为你能做到这一点。你可以欺骗它,但这有点维护噩梦。在文件中,/etc/ssh/sshd_config
您可以添加与事物匹配的部分,例如用户组或用户名。
AllowGroups sftponly sftpadmin root
Match Group sftponly
ChrootDirectory %h
ForceCommand internal-sftp
X11Forwarding no
AllowTcpForwarding no
PasswordAuthentication yes
Run Code Online (Sandbox Code Playgroud)
但这只允许您控制用户的入口点,即他们的ChrootDirectory
. 所以你必须将它们放入适当的chroot
.
您还可以通过自动挂载这些目录来玩一些其他游戏。
* / -fstype=cifs,ro,noperm,netbiosname=${HOST},file_mode=0444,dir_mode=0555,credentials=/etc/sftpuser_credentials.txt ://server/sftpdata/& \
/upload -fstype=cifs,rw,noperm,netbiosname=${HOST},file_mode=0666,dir_mode=0777,credentials=/etc/sftpuser_credentials.txt ://server/sftpdata/&/upload
Run Code Online (Sandbox Code Playgroud)
因此,您可以添加安装,这将允许他们对他们有权访问的内容进行读取访问,并对他们无权访问的内容进行非读取访问。
注意:上面的内容将授予用户对所有内容的读取权限,但仅对其/upload
chroot 目录中的子目录进行写入权限。
我可能会想到一种替代方法来实现你想要的,这可能很快就会变得丑陋,并且维护起来会很痛苦。