Packer --debug 产生错误的 ssh 密钥对

Packer --debug produces the wrong ssh keypair

我正在尝试 运行 加壳调试,但无法通过 ssh 进入我的实例。每次尝试都会导致此错误:

$ ssh -i ./ec2_amazon-ebs.pem centos@1.2.3.4 -vvvv
ssh_exchange_identification: read: Connection reset by peer

我试图通过生成一个新的 public 密钥来对照打包程序密钥对进行检查:

ssh-keygen -y -f ./ec2_amazon-ebs.pem

然后我将其作为密钥对添加到 aws 中,然后比较指纹。它们是不同的,所以加壳器似乎要么在 aws 中设置了错误的密钥,要么给我提供了不正确的私钥。

我发现一个解决方案是生成另一个 ssh 密钥 (packer-testing-a.pem),然后将其设置为要使用的密钥对:

"builders": [
  {
    ....
    "ssh_keypair_name": "packer-testing-a",
    "ssh_private_key_file": "./packer-testing-a.pem",
    ....
  }
]

这确实违背了 运行 调试和创建本地密钥对的目的。