經過WEB頁面來SSH 登陸交換機 - Python webssh

本實驗使用了基於tornado框架的webssh做爲SSH時的中間代理。python

 

Todo:
能夠在網絡CMDB中集成web ssh功能,經過只讀權限的帳號,方便查看設備信息。git

 

1.服務架構 以下圖所示
經過WEB頁面來SSH 登陸交換機 - Python websshgithub

 

2.實驗拓撲
經過WEB頁面來SSH 登陸交換機 - Python websshweb

 

3.配置過程
a.在webssh部署的服務器上進行配置服務器

1.建立python 虛擬環境
python -m venv webssh

2.進入虛擬環境(win10)
cd webssh\Script
activate

3.安裝webssh包
pip install webssh

4.開啓webssh的服務(後續能夠用supervisor之類的程序進行部署)
wssh --address="192.168.60.2" --port=80 --debug

 

b.在H3C交換機上配置SSH服務(能夠參考官方文檔網絡

>display current-configuration 
#
 version 7.1.059, ESS 0322
#
 sysname H3C_TEST-NETCONF
#
 password-recovery enable
#
vlan 1
#
irf-port
#
interface GigabitEthernet2/0
 port link-mode route
 ip address 172.16.1.100 255.255.255.0
#
 port link-mode route
#
 scheduler logfile size 16
#
line vty 0 4
 authentication-mode scheme
 user-role network-operator
 protocol inbound ssh
#
line vty 15 63
 user-role network-operator
#
 ip route-static 0.0.0.0 0 172.16.1.3
#
 ssh server enable
#
domain system
#
 domain default enable system
#
user-group system
#
local-user admin class manage
 password hash $h$6$nle6SgoxU7MitBfn$YBoGKbWIjav412/UB1Uwdqf2bwJqkTS81ZP9r5HnsWuw+EXy1g9u9SzWlMURT2tqPNi421iwA21iPU7p4UNwZQ==
 service-type ssh
 authorization-attribute user-role network-admin
 authorization-attribute user-role network-operator
#
return

 

4.在client 192.168.60.72上訪問webssh 服務,進而來SSH登陸交換機
經過WEB頁面來SSH 登陸交換機 - Python webssh
經過WEB頁面來SSH 登陸交換機 - Python webssh架構

 

另外附上以前 遠程Cisco IOS成功截圖(不在該實驗演示的範疇):
經過WEB頁面來SSH 登陸交換機 - Python webssh
經過WEB頁面來SSH 登陸交換機 - Python webssh框架

 

5.結論
實驗成功dom

 
也能夠直接經過url的拼接,發送GET請求:ssh

http://<webssh-server-ip>/?hostname=xx&username=yy&password=str_base64_encoded

例如:
http://192.168.60.2/?hostname=172.16.1.101&username=admin&password=YWRtaW4=

 
base64在線編碼地址:https://base64.us/
參考 webssh

相關文章
相關標籤/搜索