【问题标题】:SSHing from AWS Instance to AWS Instance using .pem asks for passphrase使用 .pem 从 AWS Instance SSH 到 AWS Instance 要求输入密码
【发布时间】:2016-05-23 14:43:31
【问题描述】:

我正在尝试 ssh/scp 进入我的 AWS 实例,但它总是要求输入 .pem 文件的密码,即使没有设置。我花了几个小时研究,我已经尝试了一切。它的 chmod'ed 400(也尝试了 600 和 777 - 没有运气)

这是我在密码短语/密码上按回车后得到的:

  The authenticity of host '****************' can't be established.
    ECDSA key fingerprint is ************************.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added '*********' (ECDSA) to the list of known hosts.
    Enter passphrase for key 'new_bro.pem':
    Permission denied (publickey).
    lost connection

这是一个 ssh -v 消息

ubuntu@ip-10-0-0-221:~$ ssh -v -i new_bro.pem ubuntu@***********
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to *************** port 22.
debug1: Connection established.
debug1: identity file new_bro.pem type -1
debug1: identity file new_bro.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4
debug1: match: OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.4 pat OpenSSH_6.6.1* compat 0x04000000
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5-etm@openssh.com none
debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA ***********************
debug1: Host '*************' is known and matches the ECDSA host key.
debug1: Found key in /home/ubuntu/.ssh/known_hosts:2
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: new_bro.pem
debug1: key_parse_private2: missing begin marker
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key 'new_bro.pem':
debug1: No more authentication methods to try.
Permission denied (publickey).
ubuntu@ip-10-0-0-221:~$

我试过用不同的机器做这件事——同样的事情。将 .pem 转换为 .ppk 后,我可以使用 Putty 登录

请帮忙

【问题讨论】:

  • 您的密钥似乎已损坏。你怎么得到的?尝试创建新的或通过 Puttygen 回收 - 导入 PEM,导出 PPK,然后导入 PPK 和导出 PEM。可能会有所帮助。

标签: ubuntu amazon-web-services ssh pem passphrase


【解决方案1】:

您的 pem 文件已损坏,或者 pem 密钥的格式不正确

几个命令来测试它

openssl rsa -check -in new_bro.pem -noout 应该说“RSA 密钥正常”

ssh-keygen -y -e -f new_bro.pem从私钥生成公钥,与远程的公钥比较

【讨论】:

    【解决方案2】:

    对我来说,是因为我没有包括

    -----BEGIN RSA PRIVATE KEY-----
    -----END RSA PRIVATE KEY-----
    

    在复制 pem 文件时。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-03-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-20
      • 1970-01-01
      • 2015-01-19
      • 2017-07-04
      相关资源
      最近更新 更多