在Linux中与Amazon EC2的SSH连接

MA1*_*MA1 24 ubuntu openssh amazon-ec2

我正在尝试使用以下命令从shell ssh到amazon ec2实例

ssh -vi sec.ppk ubuntu@ec2-xx.compute-1.amazonaws.com
Run Code Online (Sandbox Code Playgroud)

但未能连接

这是上面命令生成的调试输出

OpenSSH_5.3p1 Debian-3ubuntu7, OpenSSL 0.9.8k 25 Mar 2009
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to ec2-xx.compute-1.amazonaws.com port 22.
debug1: Connection established.
debug1: identity file security1.ppk type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.5p1 Debian-4ubuntu5
debug1: match: OpenSSH_5.5p1 Debian-4ubuntu5 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu7
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Host 'ec2-xx.compute-1.amazonaws.com' is known and matches the RSA host key.
debug1: Found key in /home/ma/.ssh/known_hosts:9
debug1: ssh_rsa_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: sec.ppk
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key 'sec.ppk': 
Run Code Online (Sandbox Code Playgroud)

为什么要问密码为sec.ppk

有什么问题?有人可以帮忙吗?

忘了提到我使用FileZilla成功建立了一个具有相同凭据的连接

Has*_*avi 44

试试吧

ssh -i /directory/keyname.pem ubuntu@ec2-xx.compute-1.amazonaws.com
Run Code Online (Sandbox Code Playgroud)

其中.pem是您在设置实例时创建的密钥对文件.


sto*_*ist 7

适用于AWS新手的用户.该.ppk扩展名与openSSH不兼容,因此仅适用于FileZilla/PutTTY.

在这种情况下最简单的方法是安装PutTTY并将其转换.ppk.pem使用putty-tools.这是命令

sudo apt-get install putty
puttygen <path_to_key>/keyname.ppk -O private-openssh -o aws_key.pem
ssh -vi aws_key.pem ubuntu@<ip_address>
Run Code Online (Sandbox Code Playgroud)

希望这有助于作为快速解决方案.

  • 谢啦兄弟.你做了一天. (2认同)