Python 批量备份交换机配置脚本 - 使用Paramiko库

本文将提供一个使用Python编写批量备份交换机配置的脚本示例,方便用户快速实现网络设备配置的备份操作。

代码示例

import paramiko

def backup_switch_config(ip, username, password):
    # 创建SSH客户端
    client = paramiko.SSHClient()
    # 自动添加主机密钥
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    
    try:
        # 连接SSH服务器
        client.connect(ip, username=username, password=password)
        
        # 执行备份命令
        stdin, stdout, stderr = client.exec_command('show running-config')
        
        # 读取输出结果
        output = stdout.read().decode()
        
        # 将配置保存到文件
        with open(f'{ip}_config.txt', 'w') as file:
            file.write(output)
        
        print(f'成功备份交换机 {ip} 的配置')
    except paramiko.AuthenticationException:
        print(f'认证失败,无法连接交换机 {ip}')
    except paramiko.SSHException as e:
        print(f'SSH连接错误:{str(e)}')
    except paramiko.ssh_exception.NoValidConnectionsError as e:
        print(f'无法连接交换机 {ip}:{str(e)}')
    finally:
        # 关闭SSH连接
        client.close()

# 批量备份交换机配置的IP地址列表
# 请替换为实际的交换机IP地址列表
ip_list = ['192.168.1.1', '192.168.1.2', '192.168.1.3']
username = 'admin'
password = 'password'

# 遍历IP列表进行备份
for ip in ip_list:
    backup_switch_config(ip, username, password)

使用方法

  1. 安装Paramiko库:

pip install paramiko

2. **修改代码:**
   * 将`ip_list`列表中的IP地址替换为实际的交换机IP地址列表。
   * 设置正确的SSH用户名和密码。
3. **运行脚本:**
   ```bash
python your_script_name.py

脚本功能

  • 使用paramiko库连接SSH服务器。
  • 执行show running-config命令获取交换机运行配置。
  • 将配置保存到以交换机IP命名的文件中(例如:192.168.1.1_config.txt)。

注意

  • 确保你的Python环境中安装了paramiko库。
  • 确保你的用户具有SSH连接交换机的权限,并且设置了正确的用户名和密码。
  • 脚本中的show running-config命令可能需要根据你的交换机型号进行调整。

更多信息

希望以上信息对您有所帮助,如有任何疑问请随时提出!

Python 批量备份交换机配置脚本 - 使用Paramiko库

原文地址: https://www.cveoy.top/t/topic/pjCl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录