
因此,我獲得了一個公鑰,並要求我僅設定 ssh 密鑰身份驗證,並將一個用戶添加到我的伺服器,該用戶可以使用此公鑰登入伺服器。我創建了另一個用戶,例如 userTest 來測試我的實作是否正確。
問題是,一旦我連接到我的 root 帳戶(透過密碼,儘管我也許也應該使用 ssh-key 身份驗證來進行此操作)並且輸入 ssh userTest@ip_address ,我就可以在沒有密碼的情況下進行連接。但是,當輸入 ssh root@ip_address 傳回 root 帳號時,需要密碼。
然而,令我困惑的是,userTest 公鑰不會顯示給authorized_keys,但可以連接,而出現的 root 公鑰沒有密碼就無法連接。 (但是,從 userTest 帳號啟動 Putty 時需要密碼)。
我看過很多教程,並且修改了 sshd_config 文件,但顯然我做錯了,因為沒有密碼就無法連接。
所以我該怎麼做?
其中紫色標記的是userTest
答案1
事實證明我應該:
- 例如透過 PuttyGen 為 root 建立 ssh 金鑰連結1
- 新增用戶 USER1
- 例如透過 PuttyGen 為 USER1 建立金鑰
- 在 /home/ 中加入 USER1 的公鑰用戶1/.ssh/authorized_keys
- 如果您有私鑰,請將其新增至 Putty連結2
- 確保 (在根目錄中)您已正確調整 /etc/ssh/sshd_config 檔案(PermitRootLogin、允許使用者、PublicKeyAuthentication、passwordAuthentication 以及上面連結中提到的其他內容等),然後執行
service sshd restart
以使變更生效。 - 享受!