Подтвердить что ты не робот

Подключение SSH к Amazon EC2 в Linux

Я пытаюсь использовать ssh для экземпляра amazon ec2 из оболочки, используя следующую команду

ssh -vi sec.ppk [email protected]

но не удалось подключиться

Вот результат отладки, сгенерированный указанной командой

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': 

Почему он запрашивает парольную секцию для sec.ppk

В чем проблема? Может ли кто-нибудь помочь?

Забыл упомянуть, что я успешно сделал соединение с помощью FileZilla с такими же учетными данными.

4b9b3361

Ответ 1

Попробуйте

ssh -i /directory/keyname.pem [email protected]

Где .pem - это файл пары ключей, который вы создали при настройке своего экземпляра.

Ответ 2

Для пользователей, которые новичок в AWS. Расширение .ppk несовместимо с openSSH и, следовательно, работает только с FileZilla/PutTTY.

Самое простое в этом случае - установить PutTTY и преобразовать .ppk в .pem с помощью инструментов putty. Вот команды

sudo apt-get install putty
puttygen <path_to_key>/keyname.ppk -O private-openssh -o aws_key.pem
ssh -vi aws_key.pem [email protected]<ip_address>

Надеюсь, что это поможет быстрому решению.

Ответ 3

Похоже, вы создали свой закрытый ключ с парольной фразой. Как вы создали свою пару ключей? Вы вводили парольную фразу, когда вы создали свой закрытый ключ?

Вам нужно ввести кодовую фразу, которую вы указали при создании ключа. и

debug1: read PEM private key done: type <unknown>

это говорит о том, что ваш ключ не был пересмотрен. В идеале вы получите имя метода, например RSA.

Далее проверьте, есть ли у вас открытый ключ, например id_rsa.pub, если да, попробуйте его использовать, и вы будете на том, что не будете помнить свою кодовую фразу.

ИЗМЕНИТЬ:

Хорошо, предположим, вы используете ppk из амазонки. Чтобы использовать ваш ключ EC2-priv.ppk, вам придется преобразовать его в формат, который будет понимать OpenSSH. Вы можете пойти с программой PutTTYgen. Это создаст для вас файл .pub, а затем вы сможете подключиться к нему.