華爲交換機SSH使用RSA公鑰免密登錄配置

前幾天研究了下SSH2通信的加密與認證過程,針對publickey認證方式,服務器端將公鑰放入authorized_keys文件就可以了,但是交換機方面如何配置呢?So,今天主要說一下交換機是如何配置的。

在介紹之前提前提及一下後面會用到的幾個工具:

1、ssh-keygen:openssh中認證祕鑰生成、管理和裝換的一個工具。

詳情參見:http://man7.org/linux/man-pages/man1/ssh-keygen.1.html

2、egrep:相當於grep -E

grep詳情參見:https://www.runoob.com/linux/linux-comm-grep.html


好啦,進入正題,大致分爲兩方面進行:

第一方面:客戶端將公鑰轉換成16進制字符串

1. 爲客戶端生成祕鑰對,默認存放位置 ~/.ssh/

ssh-keygen -t rsa -b 1024 -f yourkeyname -C "備註"

2. 將公鑰轉換成爲16進制字符串形式

ssh-keygen -e -m pem -f 公鑰存放的絕對路徑 | egrep -v "BEGIN|END" | base64 -d | od -t x1 -An -w4 | tr 'a-f' 'A-F' | tr -d ' ' | fmt -w 48

注意:我一開始使用的自己的開發虛擬機,系統本身就很老,裏面的openssh版本太老,ssh-keygen好多參數用不了,後來使用OpenSSH_7.4版本則可以支持。

第二方面:交換機配置rsa認證(使用的華爲交換機:S5700-24TP-SI-AC)

1. 公鑰導入交換機,命名rsa

rsa peer-public-key rsa

public-key-code begin

粘貼16進制公鑰

public-key-code end

peer-public-key end

2. 創建aaa用戶sshtest,密碼hf123456,設置認證類型爲ssh

aaa
local-user sshtest password cipher hf123456 privilege level 15
local-user sshtest service-type ssh
quit

3. 添加ssh用戶及認證方式

ssh user sshtest authentication-type rsa
ssh user sshtest assign rsa-key rsa
ssh user sshtest service-type all

4. 配置vty界面支持的登錄協議 並 開啓服務

user-interface vty 0 4
authentication-mode aaa
protocol inbound ssh  /* 這裏 ssh或all都可以 */
quit

stelnet server enable
sftp server enable

5. ok,大功告成,下面給他家貼一個我測試的客戶端連接成功圖!


結語:

以上就是大致的配置過程,從配置中可以看出,除了單獨的password和rsa方式外,還可以兩種方式結合進行認證,等有時間了再試一下其他幾種認證方式(#^.^#)!

最後結尾處貼出了我的調試信息結果圖,等整理下代碼,下次會把相關代碼發上來。

------ 謝謝您的閱讀,若文章內容有什麼問題,歡迎指出,大家共同進步!

參考連接:

1. https://blog.csdn.net/qq_27860819/article/details/81568121

2. https://www.cnblogs.com/fatt/p/5822450.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章