Python to Backup Cisco Configuration
Here is an example of how to write a Python script to backup the configuration of a Cisco device using the paramiko
library, which is a Python implementation of the SSH protocol:
import paramiko
# create an SSH client object
ssh = paramiko.SSHClient()
# add the Cisco device’s host key to the SSH client’s list of known hosts
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# connect to the Cisco device
ssh.connect(hostname=’cisco-device’, username=’cisco’, password=’cisco’)
# run the ‘show run’ command and save the output to a variable
stdin, stdout, stderr = ssh.exec_command(‘show run’)
output = stdout.read().decode()
# write the output to a file
with open(‘cisco-config-backup.txt’, ‘w’) as f:
f.write(output)
# close the SSH connection
ssh.close()
This script connects to a Cisco device with the hostname ‘cisco-device’, username ‘cisco’ and password ‘cisco’ using SSH. It then runs the command ‘show run’ to retrieve the current configuration of the device. The output of this command is saved to a variable, and then written to a file named ‘cisco-config-backup.txt’. Finally, the script closes the SSH connection.
You might also add a timestamp to the backup file name and also handle errors if can’t connect to the device or something went wrong, like file write.