Python 批量备份交换机配置脚本 - 使用Paramiko库
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)
使用方法
- 安装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命令可能需要根据你的交换机型号进行调整。
更多信息
希望以上信息对您有所帮助,如有任何疑问请随时提出!
原文地址: https://www.cveoy.top/t/topic/pjCl 著作权归作者所有。请勿转载和采集!