爛泥:學習ssh之ssh密鑰隨身攜帶

本文首發於爛泥行天下linux

在上一篇文章《爛泥:學習ssh之ssh無密碼登錄》中,咱們講解了如何使用ssh密鑰,免密碼登錄服務器。shell

這篇文章咱們再來說解,如何把已經生成的密鑰隨身攜帶。windows

有關如何生成ssh密鑰的詳細步驟,能夠查看上一篇文章《爛泥:學習ssh之ssh無密碼登錄》。安全

1、生成密鑰服務器

如今咱們經過xshell生成密鑰,注意:本章節,我只進行截圖,不作進一步的文章說明。ssh

以下:ide

clip_p_w_picpath001

clip_p_w_picpath002

clip_p_w_picpath003

clip_p_w_picpath004

clip_p_w_picpath005

clip_p_w_picpath006

clip_p_w_picpath007

咱們如今有了公鑰和私鑰:id_dsa_150518.pub、id_dsa_150518,把公鑰id_dsa_150518.pub上傳到須要鏈接的服務器192.168.1.9ilanni用戶的對應目錄下。以下:學習

ifconfig eth0|grep 'inet addr'|awk '{print $2}'|cut -d: -f2spa

cat .ssh/authorized_keys3d

clip_p_w_picpath008

如今咱們就能夠把這個密鑰id_dsa_150518隨身攜帶,不管在什麼地方均可以鏈接192.168.1.9服務器。

注意:咱們如今所說的密鑰,其實就是上面xshell生成的ssh私鑰。

同時還要注意私鑰id_dsa_150518,咱們能夠攜帶該私鑰文件,也能夠把該私鑰的內容複製到其餘文件中也行。以下:

clip_p_w_picpath009

注意:ssh私鑰的內容在複製,不能缺乏任何一個字符。

2、windows下鏈接ssh服務器

假如,咱們如今到一個新的地方,使用的OS是windows,而ssh的私鑰就在咱們身邊的話,咱們就能夠經過該私鑰鏈接ssh服務器了。

在此,咱們仍是以使用xshell來鏈接ssh服務器爲例,進行講解。固然你也可使用其餘的ssh客戶端軟件,進行鏈接。

使用以下命令鏈接ssh服務器,以下:

ssh ilanni@192.168.1.9

此時xshell會彈出要你輸入密碼的界面。以下:

clip_p_w_picpath010

咱們不選擇Password選項,要選擇Public Key選項。而後選擇「瀏覽」--「文件」,以下:

clip_p_w_picpath011

找到咱們攜帶的ssh的私鑰文件id_dsa_150518,以下:

clip_p_w_picpath012

選擇私鑰文件,以下:

clip_p_w_picpath013

clip_p_w_picpath014

經過上圖,咱們能夠很明顯的看出在鏈接192.168.1.9服務器時,xshell確實沒有提示咱們要輸入密碼。

注意:若是你的私鑰文件不是隨身攜帶而是記住私鑰內容的話,你也能夠創建一個文件,好比ilanni.txt,把私鑰的內容複製到ilanni.txt進去保存。

在鏈接ssh服務器選擇密鑰文件時,只需選擇ilanni.txt文件便可。

3、linux下鏈接ssh服務器

在第二章節中,咱們講解了如何在windows下經過ssh的私鑰鏈接ssh服務器。在這章節,咱們再來說解如何在linux下,經過ssh私鑰鏈接ssh服務器。

先把ssh的私鑰上傳到linux主機上或者在linux主機上新建一任意文件,把私鑰的內容複製到該文件中,而後使用以下命令進行鏈接:

ssh -i id_dsa_150518 ilanni@192.168.1.9

clip_p_w_picpath015

經過上圖,咱們能夠很明顯的看出,鏈接ssh服務器192.168.1.9仍是須要輸入用戶密碼的。

是咱們的操做不對仍是怎麼回事呢?

若是你仔細看上述的提示的話,你會發現這個是由於ssh私鑰用戶權限的設置太大,不安全形成的。

ssh爲了安全起見,對私鑰文件的權限通常要設置爲600,即用戶本身對該私鑰文件具備讀寫權限,其所在的用戶組及其餘用戶組對私鑰文件不具備任何權限。

咱們如今只須要把ssh私鑰文件的權限設置爲600便可,以下:

chmod 600 id_dsa_150518

clip_p_w_picpath016

再次使用ssh -i id_dsa_150518 ilanni@192.168.1.9命令進行鏈接,以下:

clip_p_w_picpath017

經過上圖,咱們能夠很明顯的看出,如今咱們已經進入到192.168.1.9這臺服務器中,並且是沒有輸入密碼的。

注意:上述命令中的-i參數用於指定ssh私鑰文件。

有關ssh命令的相關參數使用方法,能夠參考ssh的幫助。以下:

ssh --help

clip_p_w_picpath018

到此有關ssh密鑰隨身攜帶的所有內容就結束了。

相關文章
相關標籤/搜索