【问题标题】:How exactly do I add a public ssh key to my DigitalOcean Droplet through Mac's Terminal? [closed]如何通过 Mac 的终端将公共 ssh 密钥添加到我的 DigitalOcean Droplet? [关闭]
【发布时间】:2017-09-23 03:01:50
【问题描述】:

操作系统:macOS Sierra

我在终端上多次更改了我的公共和私人 ssh 密钥。所以当我“ssh”到我的 DigitalOcean Droplet 给我的 IP 地址时(IP 地址是107.170.60.7),我得到了Permission denied (publickey). 的错误,所以我知道这与我更改公钥/私钥有关.因此,现在我需要将终端上更改的公钥添加到 DigitalOcean 上的 Droplet 中。我尝试过 DigitalOcean 社区提出的两件事:

1) 关于如何更改 ssh 密钥的教程 - 但这适用于 Windows 用户,而不是 Mac。它建议使用“搜索和替换”并通过它检查某些功能。但是 Mac 没有这个,所以我不能使用它,直到“搜索和替换”部分: http://geektnt.com/how-to-add-ssh-key-to-existing-digitalocean-droplet.html

2) 一位用户不断向其他人建议通过访问此页面解决了问题: https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2 我阅读了它,它与设置一个我已经知道的 ssh 密钥有关,与如何将 ssh 密钥添加到现有的 Droplet 无关。

我真的只需要知道如何将更改后的 ssh 密钥添加到我的 Droplet。如果有人知道,我将非常感谢您的帮助。

【问题讨论】:

  • 在任何 *nix 主机上,只需打开一个终端并输入 ssh-keygen - 繁荣,您有一个 ~/.ssh/id_rsa 的密钥和您的公共密钥 ~/.ssh/id_rsa.pub.pub 文件需要进入目标机器上的~/.ssh/authorized_keys。此外,投票结束话题与编程无关。
  • @Matt Clark 所以在authorized_keys 目录中我应该粘贴.pub 文件或该文件中的长密钥?其他人建议将密钥粘贴到该目录中,但您说要粘贴文件名。另外,为什么我的问题会离题?我不明白这与编程无关?
  • authorized_keys 是一个文件。将 .pub 文件的内容转储到授权密钥文件中,该文件中的任何密钥都将被允许授权。

标签: php linux macos ssh command-line


【解决方案1】:

我会做以下事情:

ssh-keygen -R hostname

从 known_hosts 中删除主机。

然后,您可以在从 DigitalOcean 面板创建液滴时添加您的 macbook 密钥。如果已经创建了 droplet,您可以使用以下命令将您的 macbook 密钥从终端复制到剪贴板

pbcopy < ~/.ssh/id_rsa.pub

然后 SSH 进入 droplet 并编辑文件 authorized_keys

nano ~/.ssh/authorized_keys

并粘贴您的密钥。 ctrl+x 和 'y' 退出并保存文件。

现在您应该能够通过 SSH 连接到您的 droplet,而无需再输入密码了。

【讨论】:

  • 抱歉我的无知,但我仍然很困惑。我从 pub 文件中复制了公钥并将其粘贴到 authorized_keys 目录中。我是否还应该在其中包含 ssh-rsa 和整个字母数字键?感谢您的回复,我仍然坚持某一部分,但我认为您解决了我的答案
  • authorized_keys 是一个文件,而不是一个目录。您应该编辑它并从您的 mac 粘贴 id_rsa.pub 文件的内容。
猜你喜欢
  • 1970-01-01
  • 2020-07-11
  • 1970-01-01
  • 2016-03-26
  • 1970-01-01
  • 1970-01-01
  • 2013-09-14
  • 1970-01-01
  • 2021-04-03
相关资源
最近更新 更多