使用现有的 id_rsa.pub 密钥设置 SSH

gmo*_*z22 3 ssh ssh-keys

我有一个客户向我提供了他自己的 id_rsa.pub 密钥,他希望我设置一个 SSH 服务器,以便他可以向我发送文件。据我所知,当我设置我的 SSH 服务器(Windows 上的 freesshd)时,我需要一个私钥作为我的服务器的指纹。然后使用提供的私钥或生成新的私钥,我可以生成一个与用户帐户相关联的公钥,允许我的客户使用该公钥登录,而无需用户/密码组合。

我不认为服务器可以配置为使用不是从与该服务器关联的私钥生成的公钥。

如果该密钥不是从所述服务器的私钥生成的,我是否正确或者有没有办法使用现有的公钥来设置 SSH 服务器?谢谢大家!

mvp*_*mvp 5

您的客户拥有他的私钥(通常称为id_rsa)和公钥(通常称为id_rsa.pub)。

如果他向您发送了他的公钥id_rsa.pub- 这只是一个单行文本文件,并且您将此文件的内容添加到authorized_keys服务器上(在他的帐户.ssh目录中),那么该客户端可以在没有密码的情况下进行 ssh。他的客户端可以访问他的私钥 ( id_rsa) 的简单事实足以让 ssh 建立无密码连接。但这也是为什么要非常小心地保护私钥,并且永远不要将其发送给任何人(包括您,服务器所有者)的原因。另一方面,公钥非常适合展示和发送给任何人——如果无法访问私钥,它就毫无用处。

此外(至少在 Linux 上),ssh 对文件的权限有一定的规则id_rsaid_rsa.pubauthorized_keys. 例如,如果对私钥和授权密钥的权限不够严格(例如 0600 - 仅用户拥有的必须有效),它将拒绝工作。