SSH免密碼登入

2022-01-15 05:39:11 字數 1426 閱讀 1561

每次用ssh登入伺服器都要輸入密碼,次數多了就覺得有些麻煩,反正是自己個人用的電腦,安全應該有保障,如何能直接登入上去而不需要輸入密碼呢?其實一句話就講清楚了:把自己公鑰放在伺服器上

ls -l ~/.ssh
看看id_rsa和id_rsa.pub這兩個檔案是否存在?如果不存在,那現在就來生成一對:

ssh-keygen -t rsa
一路回車到底,id_rsa和id_rsa.pub就生成了,id_rsa儲存好,不要告訴別人,id_rsa.pub是公鑰,這是我們要告訴伺服器的東西。

現在,登入到伺服器,將本地的id_rsa.pub的內容追加到伺服器的~/.ssh/authorized_keys檔案中即可,可以用重定向追加,也可以複製內容,開啟vi,貼進去,隨你便。然後就完成了,登入:

ssh -l root 伺服器位址
注意:你把id_rsa.pub放在伺服器哪個使用者的~/.ssh目錄下,就可以用哪個使用者的身份登入,我是把它放在/root/.ssh下了,所以可以用root登入。

windows客戶端如果用cygwin或者mingw64的話,那跟linux客戶端沒啥差別。而我一般會用ssh secure shell,這是乙個免費又好用的軟體,事實上,我十幾年前(2023年)就開始用它了,現在不知道還是否在更新,但好用依舊,強烈推薦。言歸正傳!

1,先按正常方式登入伺服器,假設你跟我一樣,用的是root賬號;

2,選單edit -> setting開啟設定對話方塊,然後按下圖的1、2、3步驟操作:

3,在出現的新對話方塊中選擇2048位rsa演算法:

然後下一步。

給這對金鑰起個名字,習慣性地,我還是稱之為id_rsa,passphrase留空。下一步。

5,出現以下對話方塊:

點「upload public key」,上傳公鑰到伺服器。點完成。

6,公鑰雖然上傳到伺服器了,格式跟我們之前使用的不太一樣,需要轉換一下,預設情況下,剛才的公鑰會被上傳到伺服器的\root\.ssh2\目錄下,現在在伺服器上執行:

ssh-keygen -i -f /root/.ssh2/id_rsa.pub
就看到了公鑰的輸出,把這個輸出的文字追加到~/.ssh/authorized_keys檔案中去(不管你用重定向還是用vi都可以),儲存,完成!

ssh 免密碼登入

ssh 無密碼登入要使用公鑰與私鑰。linux下可以用用ssh keygen生成公鑰 私鑰對,下面我以centos為例。有機器a 192.168.1.155 b 192.168.1.181 現想a通過ssh免密碼登入到b。1.在a機下生成公鑰 私鑰對。chenlb a ssh keygen t rs...

ssh 免密碼登入

ssh 免密碼登入 ssh 無密碼登入要使用公鑰與私鑰。linux下可以用用ssh keygen生成公鑰 私鑰對,下面我以centos為例。有機器a 192.168.1.155 b 192.168.1.181 現想a通過ssh免密碼登入到b。1.在a機下生成公鑰 私鑰對。chenlb a ssh k...

ssh免密碼登入

實現原理 主機a 產生公鑰和金鑰,將主機a的公鑰傳送到主機b 主機b 接收主機a傳送的公鑰 主機a ssh請求登入到主機b 主機b 傳送給主機a一串字元 主機a 收到主機b傳送的字元,使用金鑰進行加密,並傳送回到主機b 主機b 接收到主機a使用金鑰加密後的字元,使用主機a的公鑰執行一定演算法進行對比...