密鑰登錄的原理是:使用密鑰生成器生成壹對密鑰——公鑰和私鑰。將公鑰添加到服務器帳戶,然後在客戶端使用私鑰完成身份驗證和登錄。這樣,沒有私鑰,任何人都無法通過SSH暴力破解您的密碼來遠程登錄系統。此外,如果您將公鑰復制到其他帳戶甚至主機上,也可以使用私鑰登錄。
讓我們解釋如何在Linux服務器上創建密鑰對,將公鑰添加到帳戶中,設置SSH,最後通過客戶端登錄。
1.制作密鑰對
首先,在服務器上創建壹個密鑰對。首先使用密鑰和密碼登錄您想要登錄的帳戶,然後執行以下命令:
【root @ host ~】$ ssh-keygen & lt;= =建立密鑰對
正在生成公鑰/私鑰對。
輸入保存密鑰的文件(/root/)。ssh/id _ RSA):& lt;= =按回車鍵
已創建目錄“/root/”。噓。
輸入密碼短語(空表示無密碼短語):& lt= =輸入鑰匙鎖代碼,或按Enter鍵將其留空。
再次輸入相同的密碼:& lt= =再次輸入鑰匙鎖密碼。
您的身份信息已保存在/root/中。ssh/id_rsa。& lt= =私鑰
您的公鑰已保存在/root/中。ssh/id _ RSA . pub . & lt;= =公共密鑰
關鍵指紋是:
0f:D3:E7:1a:1c:BD:5c:03:f 1:19:f 1:22:df:9b:cc:08 root @ host
使用私鑰時必須輸入密鑰鎖代碼,這樣可以防止私鑰被盜。當然,您也可以將其留空以實現無密碼登錄。
現在壹個隱藏的目錄。ssh在root用戶的主目錄中生成,其中包含兩個關鍵文件。Id_rsa是私鑰,id_rsa.pub是公鑰。
2.在服務器上安裝公鑰
鍵入以下命令在服務器上安裝公鑰:
【root @ host ~】$ CD。噓
【root@host。ssh】$ cat id _ RSA . pub & gt;& gt授權_密鑰
這就完成了公鑰的安裝。為確保成功連接,請確保以下文件具有正確的權限:
【root@host。ssh】$ chmod 600授權密鑰
【root@host。ssh】$ chmod 700 ~/。噓
3.設置SSH並打開壹鍵登錄功能。
編輯/etc/ssh/sshd_config文件並進行以下設置:
RSA身份驗證是
公鑰身份驗證是
另外,請註意root用戶是否可以通過SSH登錄:
PermitRootLogin登錄是
完成所有設置並通過按鍵成功登錄後,禁用密碼登錄:
密碼認證號
最後,重新啟動SSH服務:
【root@host。ssh】$ service sshd重新啟動
4.將私鑰下載到客戶端,然後將其轉換為PuTTY可以使用的格式。
使用WinSCP和SFTP等工具將私鑰文件id_rsa下載到客戶端計算機。然後打開PuTTYGen,單擊Actions中的Load按鈕,加載剛剛下載的私鑰文件。如果只是設置鑰匙鎖碼,此時需要輸入。
成功加載後,PuTTYGen將顯示與密鑰相關的信息。在密鑰註釋中鍵入密鑰的描述信息,然後單擊保存私鑰按鈕以PuTTY可以使用的格式保存私鑰文件。
將來使用PuTTY登錄時,您可以在連接-》處登錄;SSH-& gt;在私鑰文件中選擇您的私鑰文件進行身份驗證:在auth中,然後您可以登錄,只需在此過程中輸入密鑰鎖代碼。