2010-03-02 83 views
4

我設置了一個ec2實例。在安全組中,我爲0.0.0.0/0打開了SSH'tcp'port 80(全部打開用於測試目的)。我將該實例與私鑰相關聯。我下載密鑰並在ssh-ing時傳遞它,但是RSA沒有進行身份驗證。有任何想法嗎?EC2 SSH問題驗證

ssh -i mykey.pem [email protected] 

The authenticity of host 'mydns.amazonaws.com(IP)' can't be established. 
RSA key finger print is FINGERPRINT 
Are you sure you want to continue connecting (yes/no)? 

謝謝您提前!

+0

繼續過去「你確定要繼續連接嗎?」後,輸出是什麼?連接調試信息時,嘗試使用ssh -vvv。 – Lytol 2010-03-02 04:23:10

+0

順便說一下,SSH的TCP端口是22不是80. – Vlad 2010-03-04 14:06:06

回答

5

這很正常。您的SSH抱怨未知的主機密鑰。它在第一次連接到新主機時總是會發生。只需回答是,連接並重試。 它不應該第二次抱怨。

您下載的私鑰不是用於整個主機的「root」帳戶。

+0

除非在'ssh_config'中給出'-o StrictHostKeyChecking = no'或相同。 – ephemient 2010-03-02 04:50:54

+4

這不是安全的做法,尤其是EC2。 – 2010-03-03 06:37:26

+0

嗨,我點擊「是」,然後它說公鑰被拒絕 – user1372829 2013-06-20 06:21:54

5

安全配置的EC2實例將在您嘗試通過SSH連接之前通過SSL訪問console output中的服務器SSH密鑰指紋。然後,當您通過SSH連接時,您需要確保指紋與控制檯匹配。您需要必須這樣做才能夠安全連接到公共EC2實例。

公共EC2實例在每次啓動時生成新的服務器SSH密鑰。這意味着除非你按照上面所描述的方式進行操作,否則你將面臨很多未知的主機密鑰警告,並且如果你忽略了這個警告,你將會把安全性拋出門外;你永遠不知道你將連接到哪裏。

+0

這很容易在「實例設置>>獲取系統日誌」中找到。它幾乎在日誌的最後。只要查找匹配的序列即可。 – 2015-11-10 12:58:58