我無法使用新建立的使用者和金鑰對透過 ssh 連線到我的 Amazon AWS Ubuntu 執行個體?

我無法使用新建立的使用者和金鑰對透過 ssh 連線到我的 Amazon AWS Ubuntu 執行個體?

我創建了一個調用我的實例的使用者grader並授予其 sudo 權限,同時我也將密碼切換/etc/ssh/sshd_config為關閉。

我在本地電腦中產生了一個密鑰對,並將公鑰添加到了實例中。當我嘗試使用 Amazon AWS 提供的 DEFAULT 使用者和我產生的金鑰存取實例時,它可以工作

ssh -i "udacityLinux" [email protected]

但是當我使用用戶嘗試相同的操作時,grader我收到此錯誤:

ssh -i "udacityLinux" [email protected]
[email protected]: Permission denied (publickey).

如何修復此問題以便能夠使用我的grader用戶登入?

答案1

您似乎對上傳到伺服器的公鑰有誤解。

~/.ssh/authorized_keys對於應由該密鑰標識的每個用戶,該密鑰必須儲存在文件中。

該路徑~/.ssh/authorized_keys相當於您目前的使用者目錄,如果您以grader使用者身分登錄,則路徑將指向:

/home/grader/.ssh/authorized_keys

如果您以使用者身分登入ubuntu,該路徑將指向:

/home/ubuntu/.ssh/authorized_keys

因此,現在您可以使用以下命令複製密鑰檔案:

sudo cp /home/ubuntu/.ssh/authorized_keys /home/grader/.ssh/

然後設定正確的所有者和權限:

sudo chown grader:grader /home/grader/.ssh/authorized_keys
sudo chmod 0600 /home/grader/.ssh/authorized_keys

請記住,現在您也接受了可能ubuntu為該使用者啟用的所有金鑰。grader

相關內容