我如何才能拥有多个authorized_keys文件?

我如何才能拥有多个authorized_keys文件?

我希望能够在两个单独的文件中指定密钥,一个由用户控制,另一个由工具自动生成。

我怎样才能使类似的文件~/.ssh/authorized_keys_generated在登录时也检查密钥?

答案1

只需将新文件的名称附加到旧文件旁边即可。

AuthorizedKeysFile ~/.ssh/authorized_keys ~/.ssh/authorized_keys_generated

答案2

这不完全是你的问题,但你也可以使用AuthorizedKeysCommand在 ssh 配置文件中。sshd将以用户作为第一个参数启动命令,并且脚本的标准输出应该是匹配authorized_keys格式的字符串。

您可以使用如下脚本:

#!/bin/bash
for file in /home/$1/.ssh/*.pub; do
   cat $file;
done

这将呼应 中的公钥的所有文件~/.ssh,并授予其中每个密钥的访问权限。

但它还有更多功能,AuthorizedKeysCommand例如,可以用来调用授权服务器,根据您的业务逻辑授予访问权限。这是一个强大的工具。

相关内容