千家信息网

Python通过paramiko模块备份H3C交换机配置

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,1.过程思路备份配置前,先保存交换机running config到starup config交换机通过tftp备份配置文件批量备份交换机配置(通过excel文件保存交换机IP)nameipSUZ-SW
千家信息网最后更新 2025年01月20日Python通过paramiko模块备份H3C交换机配置

1.过程思路

  1. 备份配置前,先保存交换机running config到starup config
  2. 交换机通过tftp备份配置文件
  3. 批量备份交换机配置(通过excel文件保存交换机IP)
nameip
SUZ-SW-10110.X.X.1
SUZ-SW-10210.X.X.2
SUZ-SW-10310.X.X.3
SUZ-SW-10410.X.X.4

2.python代码

import xlrdimport paramikoimport timedef ssh_SW(name,ip):    now = time.strftime("%Y%m%d", time.localtime(time.time()))    trans = paramiko.Transport((ip, 22))    trans.connect(username='admin', password='passwd')    ssh = paramiko.SSHClient()    ssh._transport = trans    stdin, stdout, stderr = ssh.exec_command('save')    print(stdout.read().decode())    stdin, stdout, stderr = ssh.exec_command('tftp 10.x.x.100 put startup.cfg ' + name + '-' + now + '.cfg')    print(stdout.read().decode())    trans.close()def main():    workbook = xlrd.open_workbook('./sw.xlsx')    sheet = workbook.sheet_by_name('Sheet1')    count = sheet.nrows    for i in range(count-1):        i = i + 1        rows = sheet.row_values(i)        name = rows[0]        ip = rows[1]        ssh_SW(name,ip)if __name__=="__main__":    main()

3.脚本很简单,还有待完善

paramiko详解见以下链接

https://blog.csdn.net/appke846/article/details/80514024

0