Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Este instructivo mostrará un script que se puede usar para automatizar las copias de seguridad de un conmutador / enrutador / firewall de redes de fundición.
Paso 1: requisitos
Este script usa espera para automatizar las copias de seguridad y se ejecuta en un sistema Linux. Si nunca ha comprobado lo esperado, Oreilly tiene un gran libro "Exploring Expect"
Paso 2: Variables
Configure algunas variables. Deberá cambiar el nombre de usuario, la contraseña, la fundición y las variables de solicitud. #! / usr / bin / esperan # Espere un script para hacer una copia de seguridad de la configuración de los dispositivos de fundición # Joe McManus # Establecer algún tiempo de espera de varsset 60set usuario "telnet" establecer contraseña "contraseña" establecer fundición "foundry.foo.bar.com" establecer basedir "/ mnt / netapp / backups / foundry.foo.bar.com "set log" [marca de tiempo -formato% Y-% m-% d] -config.txt "set mailto" [email protected] "set mailsubject" Error: fundición la copia de seguridad falló [timestamp -format% Y-% m-% d] "set mailfail" "set prompt" telnet @ FLS648"
Paso 3: conectar
Esta parte de la secuencia de comandos intenta conectarse a foundry.send_user "Foundry Backup Script / n" send_user "Conectando a $ foundry / n" spawn telnet $ foundry espera {"Contraseña:" {enviar "$ contraseña / r" espera {" $ prompt "{send_user" Connected "}" failure "{send_user" Contraseña no válida, saliendo de "set mailfail" Contraseña no válida, saliendo de "close} timeout {send_user" No se ha devuelto ningún mensaje "set mailfail" No se ha devuelto ningún mensaje "close}}}" No hay ruta al host "{send_user" No se puede conectar a $ foundry / n "set mailfail" No se puede conectar a $ foundry / n "}" Nombre o servicio no conocido "{send_user" No se puede conectar a $ foundry / n "set mailfail "No se puede conectar a $ foundry / n"} tiempo de espera {send_user "Tiempo de espera para conectarse a $ foundry" establecer mailfail "Tiempo de espera para conectarse a $ foundry" cerrar}} si {$ mailfail! = ""} {exec / bin / mail - s $ mailsubject $ mailto << "$ mailfail" exit}
Paso 4: Desactive la paginación
Desactive el indicador "más" para que podamos descargar la configuración. enviar "habilitar / r" esperar {"$ prompt Switch #" {send_user "Enabled"} predeterminado {send_user "Habilitar fallido" establecer mailfail "ScreenOS no excepto la opción de paginación". close}} if {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit} enviar "skip-page-display / r" espera {"Desactivar el modo de visualización de la página * $ prompt "{send_user" / nPaging Disabled / n "} default {send" ScreenOS no excepto la opción de paginación. / n "set mailfail" ScreenOS no excepto la opción de paginación. " close} timeout {send_user "ScreenOS no excepto la opción de paginación / n" set mailfail "ScreenOS no excepto la opción de paginación". close}} si {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" salir}
Paso 5: obtener la configuración
Esta parte del script obtiene la configuración. send_user "Descargando configuración / n" log_file $ basedir / $ logsend "show running / r" espera {"$ prompt" {log_file send_user "\ nConfiguration Downloaded / n"} timeout {send_user "\ nError durante la descarga de la configuración." set mailfail "Error durante la descarga de la configuración". }} closeif {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" salir}
Paso 6: Verifique el tamaño del archivo
Compruebe el. establecer [tamaño de archivo $ basedir / $ log] si {$ <= 512} {send_user "La configuración de Netscreen es demasiado pequeña, investigue / n" set mailfail "La configuración de Netscreen es demasiado pequeña, investigue / n" exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit}
Paso 7: limpieza
Limpiar configuraciones de más de dos semanas. # Eliminar configuraciones de más de 2 semanas sexec find $ basedir -name '* config.txt *' -mtime +14
Paso 8: Ponlo todo junto
Ponlo todo junto. La secuencia de comandos está adjunta, se enviará por correo electrónico en caso de fallas.