当选项 -i 没有传递值并且 ~/.ssh/identity.pub 不可用时,ssh-copy-id 将显示以下错误消息。

当选项 -i 没有传递值并且 ~/.ssh/identity.pub 不可用时,ssh-copy-id 将显示以下错误消息。

我正在运行 Ubuntu 12.04LTS。我正尝试通过 SSH 上传到 github。我使用 keygen 生成了密钥,并确保 github 具有指定的密钥。但是,当我尝试 ssh 登录时,我不断打开一个 Ubuntu 窗口要求输入密码。这不是来自 github,而是来自 Ubuntu 系统本身。密钥以某种方式受密码保护,这很好,但我完全不知道那个密码是什么。它不是我的 root 密码。它不是我的用户密码。我从来没有真正为这些密钥设置过密码,所以我完全不知所措。我试过把它留空或只是一个空格,但这也不起作用。我需要找出这个密码是什么,找到一种方法将其重置为一个我真正知道的密码,或者以某种方式禁用它。我能找到的关于这个问题的唯一帖子要旧得多(2008 年),他们谈论的编辑文件在 12.04 中都不存在。

编辑以再次澄清。这是 Ubuntu 的问题,而不是 SSH 的问题。密钥或远程主机没有问题。问题在于 Ubuntu 在我不知情的情况下为该密钥的使用设置了密码,而我不知道该密码是什么或如何重置/禁用它。

答案1

通常情况下,如果这个ssh-copy-id -i ~/.ssh/id_dsa/rsa.pub remote-host工作正常的话,它会

将密钥附加到远程主机的.ssh/authorized_key

此后,您应该能够remote-host无需密码登录该网站。

注意:您能否提供更多详细信息,例如如何添加密钥?您还可以从生成密钥的用户验证是否也尝试从同一用户进行 ssh。

当选项 -i 没有传递值并且 ~/.ssh/identity.pub 不可用时,ssh-copy-id 将显示以下错误消息。

jsmith@local-host$ ssh-copy-id -i remote-host
/usr/bin/ssh-copy-id: ERROR: No identities found

您可以查看使用ssh-copy-id along with the ssh-add/ssh-agent部分此链接

相关内容