SSH密鑰對登陸的原理和實踐

一、ssh密鑰對登陸的基本思路是:要登陸誰,就把公鑰放到誰身上,就能夠受權登陸誰。html

二、本地登陸設備稱爲ssh客戶端,被登陸的設備稱爲ssh服務器。python

三、原理圖描述以下:linux

 

四、SSH的公鑰分爲openssh格式和IETF格式。shell

     其中puttygen.exe生成的是IETF格式,ssh-keygen生成的是openssh格式,xshell生成的格式則可選。windows

 

五、產生祕鑰對的工具軟件。服務器

windows系統:網絡

(1)puttygen.exedom

 

(2) xshell工具軟件ssh

 

Linux系統:ide

ssh-keygen -t rsa 

 

 六、python代碼自動化登陸設備使用paramiko庫進行ssh登陸。對於交換機、路由器等網絡設備,則使用ncclient庫進行鏈接控制。

參考:http://www.cnblogs.com/gannan/archive/2012/02/06/2339883.html

 

 七、xshell 生成祕鑰的過程。

      

 

8. 經過linux服務器生成ssh 密鑰對的流程以下:

[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
b8:bb:65:c6:cc:53:92:18:bf:3f:52:65:34:9f:98:dc root@localhost.localdomain
The key's randomart image is:
+--[ RSA 2048]----+
| |
| o |
| . o * . |
| = . * E |
| o S .o |
| = +. |
| . X. |
| =.o. |
| o. ... |
+-----------------+
[root@localhost ~]#

 

根據上述流程,生成的祕鑰對是id_rsa. 其中以.pub開頭的就是公鑰(id_rsa.pub),另一個(id_rsa)就是公鑰

 

 九、查看密鑰對中文件內容。

私鑰文件內容:

 

公鑰文件內容: (右側有省略,原文太長)

相關文章
相關標籤/搜索