使用預設的 id_rsa.pub 對 AWS 進行 SSH 訪問,但不能使用使用 ssh-keygen 產生的金鑰

使用預設的 id_rsa.pub 對 AWS 進行 SSH 訪問,但不能使用使用 ssh-keygen 產生的金鑰

您好,我從未在這裡發布過問題,但是,我嘗試在不輸入密碼的情況下訪問 AWS 實例,但遇到了一些問題。

$ ssh -i ~/.ssh/id_rsa_aws.pub ubuntu@ipaddresshere

然而,它提示我輸入密碼,即使我使用以下命令生成的密鑰並且在提示時將密碼欄位留空。

$ ssh-keygen -t rsa -b 1024

當我訪問伺服器時,如果我輸入空白密碼字段,則權限被拒絕,如果我輸入密碼,它會提示我重新輸入一個值,所以我相信它接受空白密碼但拒絕密鑰。

id_rsa_aws.pub我已經儲存了in的內容authorizedkeys2,我相信所有權限都設定正確。

為了進行更多測試,我使用了之前為另一個實例生成的另一個密鑰,剛剛調用id_rsa.pub並將其複製到authorizedkeys2並且可以很好地處理它。

密鑰的權限是相同的。

為什麼我產生的金鑰不起作用,而另一個金鑰卻不起作用?

我大致遵循了以下鏈接,唯一的區別是使用與 id_rsa.pub 不同的身份文件

https://forums.aws.amazon.com/message.jspa?messageID=211493

答案1

好的,這裡有幾個問題。我會把他們一一打掉。

$ ssh -i ~/.ssh/id_rsa_aws.pub ubuntu@ipaddresshere

第一期就到這裡了。您的識別檔案不是公鑰檔案。您的身分文件是您的私人的密鑰檔。因此,您運行的命令應該是:

$ ssh -i ~/.ssh/id_rsa_aws ubuntu@ipaddresshere

我已將 id_rsa_aws.pub 的內容儲存在authorizedkeys2 中,並且我相信所有權限均已正確設定。

第二期就到這裡了。authorizedkeys2不是您的 sshd 尋找您的公鑰檔案的地方。我認為你的意思可能是authorized_keys2(注意下劃線),但即使那也不是正確的地方(儘管它可能有效)。該authorized_keys2文件已被棄用相當長一段時間,取而代之的是同時~/.ssh/authorized_keys保存 RSA 和 DSA 金鑰的單一統一文件。

相關內容