【问题标题】:How to add a ssh key to remote server?如何向远程服务器添加 ssh 密钥?
【发布时间】:2013-09-12 11:55:32
【问题描述】:

在我的 VPS 中,运行 ssh-add -l 并返回:The agent has no identities. 但我之前运行过cat ~/.ssh/id_rsa.pub | ssh user@hostname 'cat >> .ssh/authorized_keys'

然后我运行ssh-add ~/.ssh/authorized_keys 它返回@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0644 for '/home/deployer/.ssh/authorized_keys' are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored.

ssh git@github.com 仍然得到报告Permission denied (publickey).

【问题讨论】:

  • 您是否将您的公钥添加到 GitHub?您是否使用ssh-add 添加您的私钥?此外,错误消息说您的密钥上的用户权限太开放,您需要使用chmod 700 或类似的东西将读取权限限制为只有您自己。
  • 更改授权密钥文件 (chmod 600 ~/.ssh/authorized_keys) 的权限,然后查看是否可以解决问题。除此之外,我会验证您的 cat 命令是否符合您的预期。
  • 整理完这些乱七八糟的东西,你可能对ssh代理转发ssh -A感兴趣
  • 我不明白为什么这个问题会被否决。谷歌搜索后,我根本没有解决问题。最后我将远程服务器的 pub key 添加到 GitHub。

标签: linux ssh ssh-keys


【解决方案1】:

目前投票最多的答案显然是错误的,因为它无法理解问题。 OP 询问如何在远程服务器上授权密钥,而不是如何向本地 ssh-agent 添加密钥。

要向远程服务器添加密钥,请在本地 PC 上使用 ssh-copy-id 命令:

ssh-copy-id -i path/to/key.pub username@remoteHost

这会将位于path/to/key.pub 的公钥添加到remoteHost 的服务器,并使用username 作为登录名。请注意,这似乎还需要公钥旁边的私钥(本示例中的 path/to/key 文件)。

【讨论】:

    【解决方案2】:

    要将您的 ssh-key 添加到您的 ssh-agent,您必须添加:

    ssh-add
    

    然后确保添加您的密钥:

    ssh-add -l
    

    要解决您的权限问题,请尝试:

    chmod 0600 ~/.ssh/authorized_keys
    

    【讨论】:

    • 在服务器中运行这些?
    • 问问自己你的 ssh-agent 在哪里运行......你在你的客户端上是对的。 ;)
    • 我运行ssh-add ~/.ssh/authorized_keys 并得到Enter passphrase for /home/deployer/.ssh/authorized_keys:。但是我在本地机器上创建 ssh 时没有指定密码。有什么问题?
    • 迟到但可能对某人有所帮助。重新启动服务器以识别新密钥是个好主意。
    • 请添加一行说明在服务器上运行它。讨论一下也很好,为什么ssh-copy-id 不是更好的解决方案。
    【解决方案3】:

    老兄,使用 pssh。创建一个包含您要添加文件的所有主机名的文件,然后运行类似:

    pssh -h [hostsfile] -P 'echo "sshkeystringBLARG etc..." >> /home/[user]/.ssh/authorized_hosts'

    您可以相应地修改 cmd 并离开。

    享受

    【讨论】:

    • 啊,回答过头了。谷歌这样简单的东西,或者搜索stackoverflow。这个问题已经被回答了一千次了。
    猜你喜欢
    • 2013-06-28
    • 1970-01-01
    • 1970-01-01
    • 2021-02-23
    • 2019-07-06
    • 2012-11-26
    • 2019-08-24
    • 1970-01-01
    • 2014-06-28
    相关资源
    最近更新 更多