我的sshd_config

我的sshd_config

我知道如何限制组用户的主文件夹并删除终端访问权限,但我似乎无法让它适用于多个组。

我有两个组:

groupA
groupB

我的sshd_config

Match Group groupa
   ChrootDirectory %h
   ForceCommand internal-sftp
   AllowTcpForwarding no
   PermitTunnel no
   X11Forwarding no
Match Group groupb
   ChrootDirectory %h
   ForceCommand internal-sftp
   AllowTcpForwarding no
   PermitTunnel no
   X11Forwarding no

当我尝试使用 Cyber​​duck 通过 SFTP 与 groupa 中的用户一起访问服务器时,它可以正常工作。但是,groupb 中的用户却无法访问。事实上,我甚至无法开始Match User userb工作。

/home/userb(其主要组为groupb)的权限:drwx------

操作系统版本:Arch Linux

4.4.3-1-ARCH #1 SMP PREEMPT Fri Feb 26 15:09:29 CET 2016 x86_64 GNU/Linux

OpenSSH 版本

OpenSSH_7.2p1, OpenSSL 1.0.2g  1 Mar 2016

答案1

为了未来读者的利益,答案有两个:

用户文件夹的权限必须至少为 755(以便“其他”可以读取和执行/进入该目录 - 实际上,组权限应该是无关的)

drwxr-xr-x

产权归属不规范。这些文件夹(在我的例子中, /home/usera 和 home/userb 文件夹作为 sshd_config: 中的变量)必须由 user group%h拥有。所有权rootroot

 4 drwxr-xr-x  5 root                 root      4096 27. Okt 15:07 usera/
 4 drwxr-xr-x  2 root                 root      4096 13. Okt 13:35 userb/

这通过 chroot 环境中的符号链接破坏了 havic。到目前为止,我只能通过创建用户目录的子文件夹并使其由相应的用户(而不是 root)拥有来使绑定起作用。然后在 /etc/fstab 中创建绑定(到 chroot 环境之外的另一个目录)。

例如

/media/5TB/My-Share    /home/usera/My-Share    none    defaults,bind 0 0

和 /home/usera/My-Share

4 drwxr-s---  3 usera groupa 4096  5. Mär 15:59 My-Share/

相关内容