本文由秀依林楓提供友情贊助,首發(fā)于爛泥行天下
在上一篇文章《爛泥:學(xué)習(xí)ssh之ssh無(wú)密碼登陸》中,我們講解了如何使用ssh密鑰,免密碼登陸服務(wù)器。
這篇文章我們?cè)賮?lái)講解,如何把已經(jīng)生成的密鑰隨身攜帶。
有關(guān)如何生成ssh密鑰的詳細(xì)步驟,可以查看上一篇文章《爛泥:學(xué)習(xí)ssh之ssh無(wú)密碼登陸》。
一、生成密鑰
現(xiàn)在我們通過(guò)xshell生成密鑰,注意:本章節(jié),我只進(jìn)行截圖,不做進(jìn)一步的文章說(shuō)明。
如下:
我們現(xiàn)在有了公鑰和私鑰:id_dsa_150518.pub、id_dsa_150518,把公鑰id_dsa_150518.pub上傳到需要連接的服務(wù)器192.168.1.9的ilanni用戶(hù)的對(duì)應(yīng)目錄下。如下:
ifconfig eth0|grep 'inet addr'|awk '{PRint $2}'|cut -d: -f2
cat .ssh/authorized_keys
現(xiàn)在我們就可以把這個(gè)密鑰id_dsa_150518隨身攜帶,無(wú)論在什么地方都可以連接192.168.1.9服務(wù)器。
注意:我們現(xiàn)在所說(shuō)的密鑰,其實(shí)就是上面xshell生成的ssh私鑰。
同時(shí)還要注意私鑰id_dsa_150518,我們可以攜帶該私鑰文件,也可以把該私鑰的內(nèi)容復(fù)制到其他文件中也行。如下:
注意:ssh私鑰的內(nèi)容在復(fù)制,不能缺少任何一個(gè)字符。
二、windows下連接ssh服務(wù)器
假如,我們現(xiàn)在到一個(gè)新的地方,使用的OS是windows,而ssh的私鑰就在我們身邊的話,我們就可以通過(guò)該私鑰連接ssh服務(wù)器了。
在此,我們還是以使用xshell來(lái)連接ssh服務(wù)器為例,進(jìn)行講解。當(dāng)然你也可以使用其他的ssh客戶(hù)端軟件,進(jìn)行連接。
使用如下命令連接ssh服務(wù)器,如下:
ssh ilanni@192.168.1.9
此時(shí)xshell會(huì)彈出要你輸入密碼的界面。如下:
我們不選擇PassWord選項(xiàng),要選擇Public Key選項(xiàng)。然后選擇“瀏覽”--“文件”,如下:
找到我們攜帶的ssh的私鑰文件id_dsa_150518,如下:
選擇私鑰文件,如下:
通過(guò)上圖,我們可以很明顯的看出在連接192.168.1.9服務(wù)器時(shí),xshell確實(shí)沒(méi)有提示我們要輸入密碼。
注意:如果你的私鑰文件不是隨身攜帶而是記住私鑰內(nèi)容的話,你也可以建立一個(gè)文件,比如ilanni.txt,把私鑰的內(nèi)容復(fù)制到ilanni.txt進(jìn)去保存。
在連接ssh服務(wù)器選擇密鑰文件時(shí),只需選擇ilanni.txt文件即可。
三、linux下連接ssh服務(wù)器
在第二章節(jié)中,我們講解了如何在windows下通過(guò)ssh的私鑰連接ssh服務(wù)器。在這章節(jié),我們?cè)賮?lái)講解如何在linux下,通過(guò)ssh私鑰連接ssh服務(wù)器。
先把ssh的私鑰上傳到linux主機(jī)上或者在linux主機(jī)上新建一任意文件,把私鑰的內(nèi)容復(fù)制到該文件中,然后使用如下命令進(jìn)行連接:
ssh -i id_dsa_150518 ilanni@192.168.1.9
通過(guò)上圖,我們可以很明顯的看出,連接ssh服務(wù)器192.168.1.9還是需要輸入用戶(hù)密碼的。
是我們的操作不對(duì)還是怎么回事呢?
如果你仔細(xì)看上述的提示的話,你會(huì)發(fā)現(xiàn)這個(gè)是因?yàn)閟sh私鑰用戶(hù)權(quán)限的設(shè)置太大,不安全造成的。
ssh為了安全起見(jiàn),對(duì)私鑰文件的權(quán)限一般要設(shè)置為600,即用戶(hù)自己對(duì)該私鑰文件具有讀寫(xiě)權(quán)限,其所在的用戶(hù)組及其他用戶(hù)組對(duì)私鑰文件不具有任何權(quán)限。
我們現(xiàn)在只需要把ssh私鑰文件的權(quán)限設(shè)置為600即可,如下:
chmod 600 id_dsa_150518
再次使用ssh -i id_dsa_150518 ilanni@192.168.1.9命令進(jìn)行連接,如下:
通過(guò)上圖,我們可以很明顯的看出,現(xiàn)在我們已經(jīng)進(jìn)入到192.168.1.9這臺(tái)服務(wù)器中,而且是沒(méi)有輸入密碼的。
注意:上述命令中的-i參數(shù)用于指定ssh私鑰文件。
有關(guān)ssh命令的相關(guān)參數(shù)使用方法,可以參考ssh的幫助。如下:
ssh --help
到此有關(guān)ssh密鑰隨身攜帶的全部?jī)?nèi)容就結(jié)束了。
新聞熱點(diǎn)
疑難解答
圖片精選