Com fer còpies de seguretat d'un tallafoc Netscreen: 8 passos
Com fer còpies de seguretat d'un tallafoc Netscreen: 8 passos
Anonim

Per joe Segueix-ne més per l'autor:

Quant a: M'agrada jugar amb gairebé qualsevol cosa, de vegades funciona al final. Diverteix-te mirant els projectes, prova d’obrir alguna cosa i fes-me saber com va. ànims, -Joe Més sobre joe »

Aquesta instrucció mostra un script que es pot utilitzar per automatitzar les còpies de seguretat d’un tallafoc de xarxa de pantalla que executa ScreenOS.

Pas 1: requisits

Aquest script està escrit amb expectativa i suposa que teniu SSH activat a la pantalla de xarxa i un entorn Linux. Si no heu comprovat mai, Oreilly té un llibre fantàstic "Exploring Expect"

Pas 2: variables

Començarem per configurar algunes variables: voldreu configurar les variables de port / nom d’usuari / contrasenya / netscreen / prompt perquè coincideixin amb el vostre entorn. #! / usr / bin / expect # Espereu l'script a la còpia de seguretat de la configuració de tallafocs de netscreen # Joe #Estableix un temps d'espera de varsset 60set usuari "root" establir contrasenya "contrasenya" establir port "2022" establir netscreen "foo.bar.com" establir basedir "/mnt/netapp/backups/foo.bar.com"set log" [timestamp -format% Y-% m-% d] -config.txt "set mailto" [email protected] "set mailsubject" Error: netscreen ha fallat la còpia de seguretat [timestamp -format% Y-% m-% d] "set mailfail" "set prompt" foo->"

Pas 3: connecteu-vos

A continuació, a l'script intentarem connect.send_user "Script de còpia de seguretat de NetScren / n" send_user "Connexió a $ netscreen / n" spawn ssh $ user @ $ netscreen -p $ port expect {"password:" {send "$ password / r "espera {" $ prompt "{send_user" Connected "}" Permis denegat "{send_user" Contrasenya no vàlida, sortint de "set mailfail" Contrasenya no vàlida, sortint de "tancar} temps d'espera {send_user" No s'ha tornat cap avís "s'estableix un error de correu electrònic" No s'ha retornat cap avís "close}}}" No hi ha cap ruta per allotjar "{send_user" No es pot connectar a $ netscreen / n "defineix un error de correu" No es pot connectar a $ netscreen / n "}" Nom o servei desconegut "{send_user" No es pot connectar a $ netscreen / n "set mailfail" No es pot connectar a $ netscreen / n "} timeout {send_user" Timeout connecting to $ netscreen "set mailfail" Timeout connecting to $ netscreen "close}} if {$ mailfail! =" "} { exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit}

Pas 4: desactiveu la pàgina

Heu de desactivar la cerca, o el missatge més ràpid a la pantalla de xarxa. #Disable la pàgina "0" de la consola "més" promptsend "espera {" $ prompt "{send_user" / nPagina desactivada / n "} per defecte {enviar" ScreenOS no va excepte l'opció de paginació. / N "va establir un error de correu" ScreenOS ho va fer excepte l'opció de paginació. " close} timeout {send_user "ScreenOS no va excepte l'opció de paginació / n" va establir un error de correu "ScreenOS no va excepte l'opció de paginació." close}} if {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit}

Pas 5: Obteniu la configuració

Ara rebrem la configuració. send_user "Descarregant la configuració / n" log_file $ basedir / $ logsend "get config / r" expect {"$ prompt" {log_file send_user "\ nConfiguració descarregada / n"} Temps d'espera {send_user "\ nError durant la descàrrega de la configuració." set mailfail "Error durant la descàrrega de la configuració." }} closeif {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit}

Pas 6: comproveu si la configuració té la mida adequada

Sabrem si la configuració té una mida de fitxer com a mínim 1k.set [mida del fitxer $ basedir / $ log] si {$ filesize <= 1024} {send_user "La configuració de Netscreen és massa petita, investigueu / n" definiu un error de correu " La configuració de Netscreen és massa petita; investigueu / n "exec / bin / mail -s $ mailsubject $ mailto <<" $ mailfail "exit}

Pas 7: neteja

Permet fer una mica de neteja per eliminar les configuracions de més de dues setmanes. #Retireu la configuració anterior a 2 setmanesexec trobeu $ basedir -name '* config.txt *' -mtime +14

Pas 8: tots junts

Poseu-ho tot ara. S'adjunta com a fitxer de text. Enviarà correus electrònics en cas de fallades. #! / usr / bin / expect # Espereu l'script a la còpia de seguretat de la configuració de tallafocs de netscreen. "/mnt/netapp/backups/foo.bar.com"set log" [timestamp -format% Y-% m-% d] -config.txt "set mailto" [email protected] "set mailsubject" Error: netscreen fallada de la còpia de seguretat [timestamp -format% Y-% m-% d] "set mailfail" "set prompt" foo-> "send_user" NetScren Backup Script / n "send_user" Connexió a $ netscreen / n "spawn ssh $ user @ $ netscreen -p $ port expect {"password:" {send "$ password / r" expect {"$ prompt" {send_user "Connected"} "Permis denegat" {send_user "Contrasenya no vàlida, sortint de" set mailfail "Contrasenya no vàlida, sortint "tancar} temps d'espera {send_user" No s'ha tornat cap missatge "establir un error de correu" No s'ha tornat cap missatge "tancar}}}" No hi ha ruta per allotjar "{send_user" No es pot connectar a $ netscreen / n "establir un error de correu" No s'ha pogut connectar a $ netscreen / n "}" Nom o servei desconegut "{send_user" No es pot connectar a $ netscreen / n "s et mailfail "No es pot connectar a $ netscreen / n"} temps d'espera {send_user "Temps d'espera que connecta a $ netscreen" estableix un error de correu "Temps d'espera que es connecta a $ netscreen" close}} si {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit} #Ara ja s'ha acabat, continueu # Inhabiliteu la pàgina de la consola "més" promptsend "set {r" espereu {"$ prompt" {send_user "\ nPagina desactivada / n "} per defecte {enviar" ScreenOS no va fer excepció de l'opció de paginació. / n "va establir un error de correu" ScreenOS no va exceptar l'opció de paginació. " close} timeout {send_user "ScreenOS no va excepte l'opció de paginació / n" va establir un error de correu "ScreenOS no va excepte l'opció de paginació." close}} if {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit} send_user "Descarregant la configuració / n" log_file $ basedir / $ logsend "get config / r "espera {" $ prompt "{log_file send_user" / nConfiguració descarregada / n "} Temps d'espera {send_user" / nError durant la descàrrega de la configuració. " set mailfail "Error durant la descàrrega de la configuració." }} closeif {$ mailfail! = ""} {exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit} defineix la mida del fitxer [mida del fitxer $ basedir / $ log] si {$ filesize <= 1024} {send_user "La configuració de Netscreen és massa petita, investigueu / n" configureu un error de correu "La configuració de Netscreen és massa petita, investigueu / n" exec / bin / mail -s $ mailsubject $ mailto << "$ mailfail" exit} #Retire config més de 2 setmanesexec troben $ basedir -name '* config.txt *' -mtime +14

Recomanat: