2016-07-10 43 views
-1

我有一個Ubuntu 14.04的AWS EC2實例。它已經6個月左右,因爲我已經登錄到它,現在我不能登錄。我還可以嘗試什麼才能訪問我的AWS EC2實例

我得到Permission denied (Public Key)

的事情是,我支持我的.pem文件中的3位,和他們都沒有工作。我對AWS非常有經驗,我從來沒有遇到過這種情況。

我使用的命令是ssh -v -i mykey.pem [email protected]

我是從命令得到的輸出是這樣的:

OpenSSH_7.1p2, OpenSSL 1.0.1f 6 Jan 2014 
debug1: Reading configuration data /usr/local/etc/ssh_config 
debug1: Connecting to ec2-192-168-0-1.compute-1.amazonaws.com [192.168.0.1] port 22. 
debug1: Connection established. 
debug1: permanently_set_uid: 0/0 
debug1: key_load_public: No such file or directory 
debug1: identity file mykey.pem type -1 
debug1: key_load_public: No such file or directory 
debug1: identity file mykey.pem-cert type -1 
debug1: Enabling compatibility mode for protocol 2.0 
debug1: Local version string SSH-2.0-OpenSSH_7.1 
debug1: Remote protocol version 2.0, remote software version PaloAltoNetworks_0.2 
debug1: no match: PaloAltoNetworks_0.2 
debug1: Authenticating to ec2-192-168-0-1.compute-1.amazonaws.com:22 as 'ubuntu' 
debug1: SSH2_MSG_KEXINIT sent 
debug1: SSH2_MSG_KEXINIT received 
debug1: kex: server->client aes128-ctr hmac-sha1 none 
debug1: kex: client->server aes128-ctr hmac-sha1 none 
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<7680<8192) sent 
debug1: got SSH2_MSG_KEX_DH_GEX_GROUP 
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent 
debug1: got SSH2_MSG_KEX_DH_GEX_REPLY 
debug1: Server host key: ssh-rsa SHA256:Mt8dMlt7QdgQ9kiju3OATK43jnN9oV2pZ4oGZdd46PA 
debug1: Host 'ec2-192-168-0-1.compute-1.amazonaws.com' is known and matches the RSA host key. 
debug1: Found key in /root/.ssh/known_hosts:34 
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: mykey.pem 
debug1: Authentications that can continue: publickey 
debug1: No more authentication methods to try. 
Permission denied (publickey). 

我試圖重新啓動計算機幾次。

我已經試過了3個不同的位置,一個根本沒有防火牆,我也得到了同樣的東西(當然除了關於防火牆的行)。

我終於放棄了努力SSH方式,並決定使用AWS管理控制檯連接(直接從我的瀏覽器一個Java SSH客戶端(需要的Java))

這已經失敗。它不支持Chrome,當我嘗試從Firefox瀏覽器時,它只是凍結了,並且從不做任何事情......在瀏覽器控制檯中沒有錯誤(我可以找到...我在瀏覽器疑難解答)。

它在Edge和IE中做同樣的事情。我已經在所有3臺計算機上,Ubuntu桌面版和Windows 10上嘗試過這種方式,但沒有成功。

之後,我發現某處說我可以將它保存到一個快照,並從該快照啓動一個新實例,並使用一個不同的.pem文件,以防萬一我的所有3副本以某種方式魔法腐敗。我試過了,我製作的克隆永遠不會正確啓動(1/2狀態檢查)。

有沒有什麼我沒試過?


EDIT 1

我還試圖改變.pem文件的權限,以400和600,以及刪除known_hosts文件。這些都不是解決方案。

+0

這是預期的輸出「連接到ec2-192-168-0-1.compute-1.amazonaws.com [192.168.0.1]」? –

+0

嘗試刪除/root/.ssh/known_hosts並重試。 – Shibashis

+0

刪除known_hosts只是讓我確認我想連接,然後做同樣的事情。這是我沒有嘗試過的。是@Bela Vizer,這是我相信的目標。或者至少我認爲這是沒有問題的輸出。 – trueCamelType

回答

2

運行

chmod 400 mykey.pem 

然後再次嘗試SSH。這可能是Permission denied (Public Key)的錯誤。

當我的密鑰的權限打開時,我遇到了問題。

+2

+1,因爲這對於此將是一個非常正常的問題。我已經完成了這個工作,我將添加這個問題(但這不是解決方案)。 – trueCamelType

+0

Hmm =/ 您的EC2託管在哪個區域?您是否嘗試聯繫AWS支持以瞭解是否有任何問題? – filipebarretto

+0

它位於北弗吉尼亞州,我在該地區的所有其他實例都很好,但我還沒有聯繫過他們,因爲通常.pem文件不起作用是用戶錯誤 – trueCamelType

3

您是否對該實例有任何監控?如果磁盤空間不足,這可能會解釋一些問題,但Cloudwatch無法告訴您有多少空間正在使用。這可以解釋爲什麼AMI不能正確啓動。您應該能夠從AWS控制檯獲取啓動日誌,該控制檯中可能包含一些信息。如果問題是磁盤空間,則可以從AMI啓動另一個實例,但指定一個大磁盤。

實例是否有可能被攻擊?如果有人接管了它們,他們可能會更改/刪除密鑰,甚至更改了sshd正在監聽的端口。

如果您的實例真正被洗掉,並且您希望從中獲取數據,則應該能夠拍攝快照,從該快照創建新卷並將結果卷掛載到新實例上。

+1

我正在尋找空間,現在正在黑客攻擊的可能性,但非常感謝讓我知道如何獲取數據。 – trueCamelType

相關問題