# rpm --query centos-release
centos-release-7-2.1511.el7.centos.2.10.x86_64
我想在我的服务器上为多个用户使用一个公共AuthorizedKeysFile
入口sshd
。为此,我添加了:
Match Group my-secret-group
AuthorizedKeysFile /etc/ssh/my-secret-group/common_authorized_keys
至/etc/ssh/sshd_config
,然后将所有这些用户添加到组my-secret-group
。
sshd
重新启动后一切正常,但无法使用my-secret-group
公钥登录 中的用户帐户。但是,当我StrictModes no
在 中设置时/etc/ssh/sshd_config
,它终于起作用了。我担心我不应该使用StrictModes no
,但我不确定哪些文件应该具有什么权限才能使此设置起作用。目前,我有:
root:/etc/ssh/# ls -al my-secret-group/{.,common_authorized_keys}
-rw-r----- 1 root my-secret-group 2776 Nov 3 07:41 my-secret-group/common_authorized_keys
my-secret-group/.:
total 16
drwxrwx--- 2 root my-secret-group 74 Nov 4 10:02 .
drwxr-xr-x. 3 root root 4096 Nov 4 10:33 ..
-rw-r----- 1 root my-secret-group 2776 Nov 3 07:41 common_authorized_keys
-rwxr-xr-x 1 root root 419 Nov 4 09:23 install_ssh_keys
-rw-r--r-- 1 root root 274 Nov 3 07:47 README.md
我可以以某种方式调整权限,这样我就不必设置了StrictModes no
?我尝试了各种组合,但都没有用。
答案1
您可以使用AuthorizedKeysCommand
来获取授权密钥。此命令不需要确认这些要求(但您需要确保命令是合理的)。例如
AuthorizedKeysCommand /usr/bin/cat /etc/ssh/my-secret-group/common_authorized_keys
AuthorizedKeysCommandUser root
# or whatever reasonable user with access to this file
应该可以完成这个工作。