我有问题想问你。我需要解决这个问题。
我有文件夹 /keyschmod 755
位于/keys
文件夹和 ACL 右侧,例如setfacl -d -m u:myadmin:rwx /keys
文件夹中/keys
还有其他文件夹,例如 user1、user2、user3
每个 user1、user2、user3 文件夹中都有特定的用于 SSH 访问的 public.key
现在我的问题是:
StrictModes
如果我在 中启用sshd_config
,则 user1 在 ssh 连接期间收到错误消息“目录所有权或模式错误”,因为在文件夹 user1 root 上具有 rwx 权限,并且 myadmin 也具有 rwx 权限。当我删除 myadmin 的权限时,一切正常,一切正常。但我需要 myadmin 来管理这些文件夹中的公钥。所以我尝试在 sshd_config 中禁用 StrictModes ,一切正常并且正常工作。但我认为禁用 StrictModes 对于安全来说并不是一个好主意。我已经将所有用户、管理员都chroot到系统中的特定文件夹中。
你怎么认为?对于这个问题还有其他解决方案吗?或者可以禁用它来解决这个问题?
RE: 所有用户都在目录中 chroot,无法通过 putty、console 登录。
他们只能通过 ssh 连接。登录后,他们会看到具有特定权限的文件夹,无法从 chroot 目录移出。
但是,我需要每个用户都需要访问位于每个用户的 chroot 文件夹之外的不同位置的特定文件夹。用户不知道外部文件夹,仅用于服务器访问以记录一些文件。就这样。
使用 setfacl -mu:user:rwx 和 StrictModes 用户无法通过 ssh 登录。如果我关闭 StrictModes,用户可以通过 ssh 连接。
我知道 StrictModes 指定 ssshd 在接受登录之前是否应检查文件模式以及用户文件和主目录的所有权。
或者还有其他解决方案?谢谢
答案1
您可以使用一些脚本来根据需要操作密钥,并为它们授予 myadmin sudo 权限,而不是使用 facls 授予 myadmin 对该文件夹的写入权限。