DigitalOcean向已经创建的Droplets实例添加SSH_key

这几天心态崩溃的有些厉害,几近一周没有写过代码了,今天实在感觉不能再颓下去了,就准备远程配置一下客户服务器的环境。

这次客户邀请我加入了他们 DigitalOcean 的 Team 中,但是他们不想提供 Droplet 实例 Root 密码, 看了一下控制台大概找到了一个添加 SSH_Key 登陆的地方,所以使用了 PuTTYGen 创建了一对 Key,但是添加之后使用 SSH 连接时提示我: 远程服务器拒绝此密钥,让我重新输入Root账户的密码。

大概找了一下国内的相关问题并没有找到解决的方法,Google 出来也差不多,基本都是添加 Key 之后,需要创建新的实例才可以使用新添加的 Key。
那我需要对 已经创建了的 Droplet 实例 添加 Key 怎么办呢?

相信大家在搜索该问题时已经添加好了自己的 SSH Key,具体添加创建 key 的过程我就不详述了,大家在官方 文档 中查找即可。

也可以在文末 中直接点击链接查看详细文档。


那么我就直接开始描述我是如何对已经创建的实例使用新增加的 Key。方法应该并不只有这一种,如果有其它更好的方式可以留言给我。

1.打开网页终端

这步应该不用说了吧,打开终端之后切换到 ~/.ssh 目录下,查看一下目录下文件

1
2
3
root@test:/# cd ~/.ssh
root@test:~/.ssh# ls
authorized_keys id_rsa id_rsa.pub know_hosts

可以看到有一个名为 authorized_keys 的文件,这个我不知道是不是本来就有,我这边因为客户已经关联过一个 key 了所以是有这个文件。
然后你使用 vi 或者 nano 打开这个 authorized_keys 文件。

2. 添加你的公钥到文件中

我希望你没有把之前创建Key的公钥给丢了,不过找不到了也没有关系,回到 DigitalOcean 的控制台在 Account -> Settings -> Security -> SSH keys 中找到你添加的 Key 然后点击编辑就可以看到你添加的公钥了。
设置

把公钥复制一下,粘贴进去保存就可以了。

authorized_keys

在粘贴的过程中遇到了粘贴进来的公钥出现转码的情况:

转码
这是因为复制的密钥太长了,控制的一下每次粘贴内容长度,分段粘贴过来就好了。

然后就可以使用 SSH 远程连接到服务器上了(具体连接步骤查看下方 中查看详细文档)。
PuTTY

以上。


参考资源链接

相关类似问题