Paramiko | Automatizar transferencias de imagenes Cisco en multiples dispositivos (TFTP)

Todo network engineer reconoce que actualizar un software de un dispositivo IOS
de Cisco es un trabajo muy tedioso ya que es muy susceptible al error humano al depender completamente del tradicional "copiar  y pegar"

Para ello, hemos creado este script para automatizar las transferencias de imagenes de Cisco (.bin) a vuestros dispositivos IOS/IOS-XE con la ayuda de la librería de paramiko.

SCRIPT

import paramiko
import time
import getpass

username = "ssh_user"
password = "ssh_password"

f = open (r"C:\Users\angel\scripts\hosts")

for line in f:

        ip_address = line.strip()
        ssh_client = paramiko.SSHClient()
        ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh_client.connect(hostname=ip_address,username=username,password=password)
        print ("Successful connection", ip_address)
        remote_connection = ssh_client.invoke_shell()
        remote_connection.send("copy tftp:cat3k_caa-universalk9.16.12.05b.SPA.bin flash:cat3k_caa-universalk9.16.12.05b.SPA.bin\n")
        remote_connection.send("192.168.1.10\n")
        remote_connection.send("\n")
        remote_connection.send("\n")

        output = remote_connection.recv(65535)
        decoded_output = output.decode('utf-8')
        print (decoded_output)
        
        ssh_client.close

Comentarios

Entradas populares de este blog

EVE-NG: Instalación de EVE-NG

Fortigate: Capturar paquetes (Packet capture/sniffer)

Cisco ISE | Certificados SSL públicos para Guest Portal