如果我使用 openssh 服务器,允许多个公钥很简单。只需将其放入文件 ~/.ssh/authorized_keys 中,内容如下
ssh-rsa ****there_is_public_ssh_key**** some_text_typically_user@host
ssh-rsa *****second_pub_key**** another_text
...
但是如何使用带有 sftp 协议的 proftpd 来实现呢?单个公钥的典型配置是虚拟或全局的基本配置:
SFTPAuthorizedUserKeys file:/some_key_ssl_store/%u/autorized_keys
以下为 autorized_keys 文件内容示例:
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "some comment"
*****public_key_splitted_with_some_lines*****
****second line for the same key ******
****third line*****
****as many lines as is needed *****
***last_line***==
---- END SSH2 PUBLIC KEY ----
我该如何存储第二个密钥?我是否应该在此示例之后插入下一个从 BEGIN 到 END 的块?不幸的是,我没有找到对此的明确解释。
目前我正在使用与许多具有相同 UID 的用户相关的解决方法,但这种配置不太清晰。
答案1
是的,您需要用----BEGIN SSH2 PUBLIC KEY-----
和-----END SSH2 PUBLIC KEY-----
行分隔每个键。这些标记是该文件的解析器如何知道给定键何时开始/结束。
例如:
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "4096-bit RSA, converted from OpenSSH by castaglia"
AAAAB3Nza...
...
1e1YNo9hYjE=
---- END SSH2 PUBLIC KEY ----
---- BEGIN SSH2 PUBLIC KEY ----
Comment: "2048-bit RSA, converted from OpenSSH by castaglia"
AAAAB3Nza..
...
Byq2pv4VBo953gK7f1AQ==
---- END SSH2 PUBLIC KEY ----
希望这可以帮助!