检索私有SSH密钥

我如何检索私钥,以便我可以部署到我的服务器? (我试图使用cloud66部署到自己的服务器选项,它要求私钥)

赛跑

cat ~/.ssh/id_rsa 

在我的本地机器上给我一个私钥,但是没有被接受。

 cat ~/.ssh/id_rsa.pub 

显示公钥,我可以看到公钥被分配给我的数字海洋服务器。

你不应该上传你的私钥。 永远不要这样做

只使用你的公钥。 如果您将公钥交给Digital Ocean或Cloud66(无论如何),您应该可以从任何具有私钥的机器login。 远程服务器不需要知道您的私钥。

这里是一个很好的教程,关于如何SSH密钥authentication工作: http : //www.cyberciti.biz/tips/ssh-public-key-based-authentication-how-to.html

编辑看起来像Cloud66是一些Dockery / PaaSy解决scheme,它使用SSH与服务器通信。 他们有一些关于如何设置SSH密钥的文档: http : //community.cloud66.com/articles/setting-up-ssh-keys 。 目前还不清楚它使用这些密钥,有一个不支持密码保护的密钥,我觉得很奇怪。 文档的其余部分看起来像一个非常正常的公钥设置,虽然有一些奇怪的命令。 但是没有提到必须在某处input私钥。

我仍然认为,随着cyberciti教程是最好的方式去。

你不能检索一个私钥,你可以拥有它,或者你没有。 你可以从私钥中检索公钥

 ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/id_rsa.pub 

请注意,命令将覆盖您现有的密钥,因此您可能需要保存它或select不同的输出文件。 然后,您可以将检索到的密钥与您已有的密钥进行比较,如果不同,则采取适当的措施。

如果他们是相同的,那么你可能需要告诉我们你所看到的确切的错误。

这听起来像你正在描述的过程中上传私钥提供SSHpipe理的Ubuntu服务器, pipe理的访问。 通常,这意味着您在该服务器上创build了一个用户帐户,并限制了权限(通过sudo)来执行您希望Cloud 66自动执行的活动。 然后为该用户帐户创build一个私钥(其他答案中描述的命令,例如Iain)。

在那里粘贴普通用户的私钥听起来像是安全链中的一个很大的缺口。 大拇指下到云66不是很明确的。

云66会谈数字海洋云部署,但通常使用OAuth身份validation和API方法来控制它们。

在不知道具体设置的情况下,很难确定,但是听起来好像您正在尝试使用第一种(ssh)方法,而您应该使用第二种方法(OAuth / API)。 如果失败了,你可能会躲开一颗子弹。