无法确定主机'github.com(192.30.252.128)'的真实性

新手上路,请多包涵

我正在尝试使用

sudo npm install

为用 nodejs 编写的应用程序安装我的所有依赖项。我的操作系统是 Ubuntu 13.04

但是,我不断收到此警告:

 The authenticity of host 'github.com (192.30.252.131)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:1d:52:13:1a:21:2d:bz:1d:66:a8.
Are you sure you want to continue connecting (yes/no)?

有没有人遇到过这个警告?是否可以在本地验证和存储指纹?因此,当我再次输入 sudo npm install 时,我不需要再次进行身份验证。

现在,我无法输入任何内容,甚至无法输入“是”。我的终端卡住了,我必须按 Ctrl + C 才能终止。

原文由 led 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 641
2 个回答

前面有危险,除非你真的不关心在本地帐户上与 github 的安全通信

SSH 正确地抱怨他们无法确保您确实通过安全通道连接到 github 的服务器。这可能就是 github 推荐 https 访问的原因,由于其公钥基础设施,它可以开箱即用。

现在,您可以让它工作,但请注意,它涉及缓存公钥指纹,如果操作不正确,则会为攻击者提供永久性的中间人攻击。

如何安全进行?

选项 1 是使用 https url 而不是 ssh。

选项 2 是有 ssh 访问工作。

好的,告诉我选项 2

  1. ssh -T git@github.com 但不要只输入“是”。
  2. 检查显示的哈希值是否与 https://help.github.com/articles/what-are-github-s-ssh-key-fingerprints/ 中显示的哈希值之一匹配(在您的问题中,它确实如此,并查看,出于相同的公钥基础设施原因,该页面是通过 https 获取的)。

如果哈希匹配,那么连接确实是安全的,您可以对 ssh 的问题回答“是”。

好的,我检查并输入了是,我怎么知道它有效?

SSH 将显示如下内容:

警告:将 IP 地址“192.30.252.128”的 RSA 主机密钥永久添加到已知主机列表中。

之后,您将看到如下消息

权限被拒绝(公钥)。

这很好,但表明您需要进一步配置,或者只是

嗨 _,您的登录_!您已成功通过身份验证,但 GitHub 不提供 shell 访问权限。

这意味着一切正常,您可以重试第一次操作。

请注意,如果您重试相同的 ssh 命令,它不应再询问该问题。

原文由 Stéphane Gourichon 发布,翻译遵循 CC BY-SA 4.0 许可协议

在命令提示符下运行 ssh -o StrictHostKeyChecking=no git@github.com 以将真实性添加到您的 known_hosts。这样下次就不会提示了。

原文由 Kent Mewhort 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题