两个EC2实例之间的SSH连接

3
我有两个EC2实例,我想尝试从一个实例ssh到另一个实例。
如果我从我的Windows实例到PuTTY每个实例都尝试(通过提供.ppk文件),那么它可以正常工作。
现在,这两个实例都关联到同一个密钥对,并且如果我在.ssh/authorized_keys中检查,会发现有相同的公钥(显然是因为它引用了我在AWS中生成的同一密钥对)。
我尝试使用“ssh ”,但它要求我提供一个不存在的密钥密码。
所以现在我做的是从A实例创建一个密钥对,然后我尝试...
ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host

但是它给了我这个错误:
Permission denied (publickey).

如果您有任何想法,欢迎分享。

1个回答

5

如果您的唯一身份验证方法是 publickey,则无法使用 ssh-copy-id

在第一个实例上生成密钥时,您需要将公共部分从~/.ssh/id_rsa.pub复制到其他实例的~/.ssh/authorized_keys中。


我尝试了这个,但它对我没有起作用。我可能错过了什么? - dewwwald
@dewwwald 如果您创建了这些文件,可能是权限问题或者您写错了密钥。很难猜测。 - Jakuje
@Jakuje,这很奇怪,因为当ssh密钥的名称不是id_rsa.pub时,它就无法工作。所以我用默认名称生成了一个密钥,然后它就可以工作了...太奇怪了。 - dewwwald
@dewwwald,SSH客户端默认使用具有默认名称的密钥。如果您将密钥命名为不同的名称,则它将无法工作(除非您配置客户端以在不同位置使用该密钥)。 - Jakuje
没问题,我去看看如何更改ssh默认配置。 - dewwwald
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接