2013-11-03 147 views
1

我想SSH到一個EC2實例。我創建使用權限錯誤到SSH EC2實例

ec2-add-keypair gsg-keypair 

並更改訪問使用

chmod 600 ~/.ec2/id_rsa-gsg-keypair 

密鑰對是密鑰對

-rw------- 1 hduser hadoop 1610 Nov 2 20:20 id_rsa-gsg2-keypair.pem 

然後我試着用使用SSH

ssh -i id_rsa-gsg2-keypair.pem ec2-54-205-100-218.compute-1.amazonaws.com 

和它要求我輸入密碼

Enter passphrase for key 'id_rsa-gsg2-keypair.pem': 

我沒有它。我試圖以root用戶身份運行它,同樣的錯誤。我使用了密鑰對文件的完整路徑,並得到了相同的錯誤。最後,我想:

ssh -v id_rsa-gsg2-keypair.pem ec2-54-205-100-218.compute-1.amazonaws.com 

,並得到這個:

debug1: Reading configuration data /etc/ssh/ssh_config 
debug1: /etc/ssh/ssh_config line 19: Applying options for * 
ssh: Could not resolve hostname /home/hduser/ec2-api-tools-1.6.11.0/id_rsa-gsg2-keypair.pem: Name or service not known 

這將是巨大的,如果你能幫助我。

+0

在第二次嘗試使用ssh時,您忘記了'-i'。您是在創建實例之前還是之後添加此密鑰對?這是您創建的關鍵嗎? – datasage

+0

我在創建實例之前創建了密鑰。我只是用-v來看看它是如何工作的! – MTT

+0

您需要在主機中使用用戶名。 'ubuntu @ ec2-54-205-100-218.compute-1.amazonaws.com' for ubuntu AMI。適用於Amazon Linux AMI的'ec2-user @ ec2-54-205-100-218.compute-1.amazonaws.com'。 – Jashwant

回答

0

首先,我會建議保留permission of the key file as 400,因爲它太開放了。如果你的ami是ubuntu,那麼user name for ssh login should be ubuntu

因此命令會像ssh -i key.pem [email protected]

key.pem應包含在那裏的存放該文件/home/ubuntu/.ssh整個路徑或文件夾的.ssh運行上面的命令。

`

+0

似乎最初使用ssh -i -v key.pem ubuntu @ ec2-instace-address,然後在隨後的請求中沒有-v。 – Mukus