Mostramos un método mejorado para backup (copia de seguridad) automatizada de la configuración de los routers y switches Cisco (y compatibles) de nuestra organización.

Nos basaremos en el método base indicado en este artículo:

Por lo tanto necesitaremos un servidor (equipo virtual) con Linux y un FTP habilitado, como indicamos en el artículo anterior.

En los switches, necesitaremos que tengan el acceso SSH habilitado, como indicamos en este artículo:

Deberemos conocer, como es lógico, IP, usuario y contraseña de cada router/switch Cisco o compatible para el que queramos hacer el backup automático.

Supondremos en este tutorial que vamos a hacer y programar un backup de la configuración del switch Cisco con IP: 192.168.10.10, con usuario de acceso SSH: usu y con contraseña: passwd. Y supondremos que la IP del servidor con Linux y FTP (en el que se harán las copias), será 192.168.10.3.

Desde el equipo servidor Linux con FTP, desde la línea de comandos, conectaremos con el switch por SSH. Solo realizaremos este paso una vez por cada switch, para que nos solicite si quremos guardar la clave pública del switch para futuras conexiones SSH:

Si nos devuelve este error:

Unable to negotiate with 192.168.10.10 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc

Deberemos cambiar el parámetro -c aes128-ctr por un algoritmo de cifrado que acepte (uno de los que muestra en el mensaje de error). Para el ejemplo anterior, cambiaremos -c aes128-ctr por -c -c aes128-cbc, quedando:

Como es la primera vez que accedemos al switch Cisco por SSH desde el servidor Linux, nos solicitará si queremos guardar la clave pública, con el texto:

Are you sure you want to continue connecting (yes/no/[fingerprint])?

Responderemos «yes» e INTRO para que no nos la vuelva a pedir:

Mejorando método de backup automático de configuración switch y router Cisco

Como hemos comentado, esto tendremos que hacerlo una vez por cada switch del que queramos hacer backup automático. No será necesario acceder completamente, será suficiente con responder «yes» en la pregunta anterior.

El siguiente paso será crear los scripts necesarios para realizar la copia de seguridad de la configuración de los switches de forma automática.

Crearemos el script «principal», en la carpeta /home/script, con el nombre backup_cisco.sh y el contenido:

/home/script/backup_cisco.sh

Estableceremos el permisos de ejecución con:

Para cada switch al que queramos hacer backup, se le creará un fichero de script propio, con el nombre del switch (hostname), en la misma carpeta. Por ejemplo, si el switch tiene de nombre SW_FACTURACION_PLANTA1, el fichero tendrá el nombre:

/home/script/SW_FACTURACION_PLANTA1.sh

Este fichero de script será el que se añada al crontab de Linux, como tarea programada, que habrá una por cada swtich (lo explicamos más adelante).

El script de cada swtich tendrá el siguiente contenido:

/home/script/SW_FACTURACION_PLANTA1.sh

En el script anterior, cambiaremos lo siguiente por nuestros datos:

  • SW_FACTURACION_PLANTA1: cambiaremos este nombre por el nombre del switch (hostname) al que queramos hacer la copia.
  • 192.168.10.10: cambiaremos esta IP por la IP del switch al que queremos hacer la copia.
  • 192.168.10.3: IP del propio servidor Linux en el que tenemos el FTP.
  • usu: nombre de usuario de conexión SSH al switch.
  • passwd: contraseña del usuario anterior de conexión SSH al swtich.
  • aes128-cbc: cambiaremos este algoritmo de conexión por el que hayamos comprobado anteriormente, en la primera conexión SSH al switch.

Estableceremos el permiso de ejecución para este script:

Como vemos en el script anterior, los backup del switch quedarán en una carpeta con el nombre del switch, en /home/cisco. Dicha carpeta debe existir previamente a la programación del backup, por lo que la crearemos con el comando:

De esta forma, cada vez que se haga backup de este switch, se almacenará el fichero de configuración en esta carpeta y quedará un histórico, pues no se reemplazarán.

El siguiente paso será añadir una tarea programada para este switch, eligiendo los días y hora en que queramos hacer el backup. Para ello ejecutaremos el comando:

Y en la edición del crontab añadiremos la siguiente línea:

En la línea anterior el script para backup del swtich SW_FACTURACION_PLANTA1 se ejecutará los lunes, miércoles y viernes a las 8 de la tarde.

Guardaremos los cambios pulsando Control + O y cerraremos la edición del contrab pulsando Control + X.

A partir de ahora, todos los lunes, miércoles y viernes a las 20 horas se ejecutará el backup que obtendrá la configuración actual del switch indicado y la guardará en su carpeta.

Si accedemos por FTP, veremos una carpeta por cada swtich. Accediendo a la carpeta de uno de los switch, veremos todos los ficheros de configuración almacenados:

Mejorando método de backup automático de configuración switch y router Cisco

Desde aquí podremos abrirlos o descargarlos y ver su contenido:

Mejorando método de backup automático de configuración switch y router Cisco