基於pexpect通過堡壘機備份交換機配置

2021-07-24 17:15:21 字數 1405 閱讀 7288

#!/usr/bin/env python

#coding=utf-8

'''import time

import pexpect

time1 = time.strftime('%y.%m.%d-%h:%m:%s')

list = ['10.109.101.99','10.107.101.99']

filename = open('/tmp/test1.txt', 'w')

con = pexpect.spawn('/usr/bin/ssh [email protected]')

con.expect()

'''import time

import getpass

import pexpect

storage = open('/tmp/test.txt', 'w')

con = pexpect.spawn('/usr/bin/ssh [email protected] -p 5022')

password = getpass.getpass('password:')

con.expect('password:')

con.send(password + '\n')

con.expect('.*select group: ')

con.send('0\n')

con.expect('.*select page: ')

con.send('10.109.101.99\n')

con.expect('input account: ')

con.send('nfyg\n')

con.expect('.*password: ')

con.send('password123\n')

con.expect('.>')

con.send('enable\n')

con.expect('password:')

con.send('password456')

con.logfile = storage

con.expect('.*#')

con.send('terminal length 0\n')

con.expect('.*#')

con.send('show run\n')

con.expect('.*#')

con.close()

storage.close()

這只是個簡單的框架和測試草稿。

優化計畫:(懶癌發作)

裝置清單使用列表,檔名根據時間、裝置名自動命名。

打算通過輸出檔案變化來丟棄或隱藏帳號互動資訊、堡壘機互動資訊。

不使用terminal len 0 ,通過判斷 「--more--」來傳送空格。

最重要一點,這僅是個例子,會使用迴圈或遞迴(還沒想好)來優化指令碼。

通過堡壘機rdp 黑屏 小白接觸堡壘機

原理 堡壘機 實際上是旁路在網路交換機節點上的硬體裝置,實現運維人員遠端訪問維護伺服器的跳板,即物理上併聯,邏輯上串聯。簡單的說,就是伺服器運維管理人員原先是直接通過遠端訪問技術進行伺服器維護和操作,這期間不免有一些誤操作或者越權操作,而 堡壘機 作為遠端運維的跳板,使運維人員間接通過堡壘機進行對遠...

基於jumpserver堡壘機使用sftp傳輸檔案

公司伺服器一般都是需要通過跳板機進行登入 傳輸檔案可以用sftp命令,但是sftp命令也是和伺服器打通乙個傳輸檔案的通道,那麼想要往伺服器上傳檔案,首先需要打通jumpserver的通道,也就是說需要sftp到跳板機,跳上來以後,由於我只有乙個伺服器的訪問許可權,所以使用 ls 命令只能看到乙個資料...

通過堡壘機自動進入伺服器

language python inte ce 1.0 crt.screen.synchronous true 開啟新的標籤頁 def opentab ipaddr gtab crt.session.connectintab ssh2 p 22 l password 10.定義等待的字串 passi...