2012-08-28 70 views
4

我正在嘗試爲我自己,我的團隊中使用AWS的其他人以及運行實例更改我的EC2公鑰。如何更改EC2公鑰?

因此舊密鑰是(例如)'my_key',並且我創建了一個名爲'my_key2'的新密鑰。

我做了新的密鑰,將.pem文件保存在舊文件中,所以'my_key.pem'和'my_key2.pem'都位於我的〜/ .ssh文件夾中。

現在,我想ssh到其他情況下改變他們authorization_keys分享我的公用密鑰,但是當我嘗試SSH,我得到

amy$ ssh ***-**-**-***-***.foo.com 

Permission denied (publickey). 

我試圖採取新的「my_key2」文件出.ssh文件夾,並出現相同的問題。在我開始四處閒逛之前,我沒有遇到這個問題。關於讓ssh識別我的舊證書的任何提示,以便讓每個人都可以使用新密鑰?

回答

4

您需要停止實例(如果EBS支持的實例)才能更改要用於該實例的密鑰對。如果不是EBS支持的卷,則只需使用新密鑰對從AMI啓動另一個實例即可。

如果您無法輕鬆地重新啓動實例或創建新的實例,這種方法聲稱能夠更改正在運行的實例的公鑰,但我沒有嘗試過。真正正確的做法是通過停止/啓動或創建新實例。

http://seabourneinc.com/2011/01/19/change-key-pairs-on-aws-ec2-instance/

+0

密鑰是從開機時從aws下載的,它不是你可以改變的。最佳做法是用您的個人密鑰對創建一個新用戶,並在/ etc/sudoers中授予您自己需要的訪問權限 –

0

http://seabourneinc.com/2011/01/19/change-key-pairs-on-aws-ec2-instance/ 此解決方案。我檢查了它。 在簡單的步驟。 登錄到AWS控制檯,創建一個新的pem密鑰,它會要求您將它保存到本地,保存它。 運行以下命令。

ssh-keygen -y | tee my_key.pub 鍵入保存新pem密鑰文件以及文件名的路徑。

上述命令將在屏幕上顯示內容,將其複製並粘貼到EC2實例的 authorized_keys文件中,保存並關閉。 現在您可以使用保存/下載的新pem密鑰文件來訪問EC2實例。