在SSH服务器上,我有以下(截断)配置:
PubkeyAuthentication yes
PasswordAuthentication yes在我的客户端,我有一个密钥对,并且在服务器上添加了我的公钥:
ssh-copy-id <my-server>现在,如果我将PasswordAuthentication选项更改为no,连接到SSH服务器的唯一方法将是验证密钥,对吗?
然后,如果我想添加一个新客户端,我需要:
PasswordAuthentication选项,并从新客户端使用ssh-copy-id~/.ssh/authorized_keys中。但我觉得这些方法很无聊。
问:是否有更简单的方法向服务器上的~/.ssh/authorized_keys文件添加新密钥?
发布于 2015-01-29 13:59:09
您可以像系统上的任何其他文件一样修改新用户的authorized_keys文件。您不需要使用用户的帐户执行此操作。任何对该文件具有写访问权限的帐户都可以。也就是说,通常是root帐户(或sudo)。
ssh-copy-id只是通过为您创建具有正确权限的所有文件夹和文件来简化此过程。手动执行此操作时,需要确保所有这些都由您自己完成。
发布于 2015-01-29 13:57:45
从根本上说,你们每个问题的答案都是肯定的。不管你是否觉得这个方法“无聊”,它是允许访问一个新客户端的一种公认的方式。
添加新密钥的另一种可能方法是使用现有客户端将公钥的内容从新客户端复制并粘贴到目标计算机上的用户的~/.ssh/authorized_keys文件中--确保正确设置权限和所有权。这就省去了暂时允许使用密码进行身份验证的需要(无论如何,需要将密码转发给试图执行ssh-copy-id操作的用户)。
https://serverfault.com/questions/663390
复制相似问题