Sommario:

Come eseguire il backup di un firewall Netscreen: 8 passaggi
Come eseguire il backup di un firewall Netscreen: 8 passaggi

Video: Come eseguire il backup di un firewall Netscreen: 8 passaggi

Video: Come eseguire il backup di un firewall Netscreen: 8 passaggi
Video: SRX340 upgrade process 2024, Novembre
Anonim

Di joeFollow Altro dell'autore:

Sistema di monitoraggio e avviso di Intel Edison Garage
Sistema di monitoraggio e avviso di Intel Edison Garage
Sistema di monitoraggio e avviso di Intel Edison Garage
Sistema di monitoraggio e avviso di Intel Edison Garage
Analizzatore di pneumatici per fat bike Intel Edison
Analizzatore di pneumatici per fat bike Intel Edison
Analizzatore di pneumatici per fat bike Intel Edison
Analizzatore di pneumatici per fat bike Intel Edison
Monitor per garage Intel Galileo
Monitor per garage Intel Galileo
Monitor per garage Intel Galileo
Monitor per garage Intel Galileo

A proposito: mi piace armeggiare con qualsiasi cosa, a volte alla fine funziona. Divertiti a guardare i progetti, prova a strappare qualcosa e fammi sapere come va. saluti, -Joe Maggiori informazioni su joe »

Questa istruzione mostra uno script che può essere utilizzato per automatizzare i backup di un firewall netscreen che esegue ScreenOS.

Passaggio 1: requisiti

Requisiti
Requisiti

Questo script è scritto in Expect e presuppone che tu abbia attivato SSH sul tuo netscreen e un ambiente Linux. Se non hai mai aspettato il check out, Oreilly ha un ottimo libro "Exploring Expect"

Passaggio 2: variabili

Variabili
Variabili

Inizieremo con l'impostazione di alcune variabili. Dovrai impostare le variabili port/username/password/netscreen/prompt in modo che corrispondano al tuo ambiente. #!/usr/bin/expect#Aspetta uno script per il backup della configurazione dei firewall netscreen#Joe #Imposta un timeout varsset 60imposta utente "root"imposta password "password"imposta porta "2022"imposta netscreen "foo.bar.com" imposta basedir "/mnt/netapp/backups/foo.bar.com"set log "[timestamp -format %Y-%m-%d]-config.txt"set mailto "[email protected]"set mailsubject "Errore: netscreen backup non riuscito [timestamp -format %Y-%m-%d] "set mailfail ""set prompt "foo->"

Passaggio 3: Connetti

Collegare
Collegare

Successivamente nello script proveremo a connettere.send_user "NetScren Backup Script\n"send_user "Connessione a $netscreen\n"spawn ssh $user@$netscreen -p$port Expect { "password:" { send "$password\ r" Expect { "$prompt" { send_user "Connesso" } "Permesso negato" { send_user "Password non valida, in uscita" set mailfail "Password non valida, in uscita" close } timeout { send_user "Nessun prompt restituito" set mailfail "Nessun prompt restituito " close } } } "Nessuna route all'host" { send_user "Impossibile connettersi a $netscreen\n" set mailfail "Impossibile connettersi a $netscreen\n" } "Nome o servizio sconosciuto" { send_user "Impossibile connettersi a $netscreen\n" set mailfail "Impossibile connettersi a $netscreen\n" } timeout{ send_user "Timeout connessione a $netscreen" set mailfail "Timeout connessione a $netscreen" close } }if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Passaggio 4: disattivare il cercapersone

Disattiva cercapersone
Disattiva cercapersone

È necessario disattivare il paging - o il prompt more sul netscreen. #Disabilita il prompt "more"send "set console page 0\r"expect { "$prompt" { send_user "\nPaging Disabled\n" } default { send "ScreenOS non ha escluso l'opzione di paging.\n" set mailfail "ScreenOS ha fatto non tranne l'opzione di paging." close } timeout { send_user "ScreenOS non ha escluso l'opzione di paging\n" set mailfail "ScreenOS non ha escluso l'opzione di paging." close }}if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Passaggio 5: ottenere la configurazione

Ottieni configurazione
Ottieni configurazione

Ora otterremo il config. send_user "Scaricamento configurazione\n"log_file $basedir/$logsend "get config\r"expect { "$prompt" { log_file send_user "\nConfigurazione scaricata\n" } timeout { send_user "\nErrore durante il download della configurazione." set mailfail "Errore durante il download della configurazione." }}closeif { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Passaggio 6: verificare se la configurazione è della dimensione corretta

Controlla per vedere se la configurazione è della giusta dimensione
Controlla per vedere se la configurazione è della giusta dimensione

Sapremo controllare se la configurazione è almeno 1k.set filesize [file size $basedir/$log]if { $filesize <= 1024 } { send_user "Netscreen config è troppo piccolo, per favore indagare\n" set mailfail " La configurazione di Netscreen è troppo piccola, per favore indagare\n" exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Passaggio 7: pulizia

Ripulire
Ripulire

Eseguiamo una piccola pulizia per rimuovere le configurazioni più vecchie di due settimane. #Rimuovi configurazione più vecchia di 2 settimaneexec find $basedir -name '*config.txt*' -mtime +14

Passaggio 8: tutti insieme

Metti tutto insieme ora. È allegato come file di testo. Invierà e-mail su eventuali errori. #!/usr/bin/expect#Aspetta lo script per il backup della configurazione dei firewall netscreen#Joe#Imposta un timeout varsset 60imposta utente "root"imposta password "password"imposta porta "2022"imposta netscreen "foo.bar.com"imposta basedir "/mnt/netapp/backups/foo.bar.com"set log "[timestamp -format %Y-%m-%d]-config.txt"set mailto "[email protected]"set mailsubject "Errore: netscreen backup non riuscito [timestamp -format %Y-%m-%d] "set mailfail ""set prompt "foo-> "send_user "Script di backup NetScren\n"send_user "Connessione a $netscreen\n"spawn ssh $user@$ netscreen -p$port aspetta { "password:" { invia "$password\r" aspetta { "$prompt" { send_user "Connesso" } "Autorizzazione negata" { send_user "Password non valida, in uscita" set mailfail "Password non valida, in uscita " close } timeout { send_user "Nessun prompt restituito" set mailfail "Nessun prompt restituito" close } } } "Nessuna route all'host" { send_user "Impossibile connettersi a $netscreen\n" set mailfail "Impossibile connettersi a $netscreen\ n" } "Nome o servizio sconosciuto" { send_user "Impossibile connettersi a $netscreen\n" s et mailfail "Impossibile connettersi a $netscreen\n" } timeout{ send_user "Timeout connessione a $netscreen" set mailfail "Timeout connessione a $netscreen" close } }if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}#Ora che è finito, continua#Disabilita il prompt "more"send "imposta pagina console 0\r"expect { "$prompt" { send_user "\nPaging disabilitato\ n" } default { send "ScreenOS non ha escluso l'opzione di paging.\n" set mailfail "ScreenOS non ha escluso l'opzione di paging." close } timeout { send_user "ScreenOS non ha escluso l'opzione di paging\n" set mailfail "ScreenOS non ha escluso l'opzione di paging." close }}if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}send_user "Scaricamento configurazione\n"log_file $basedir/$logsend "get config\r "expect { "$prompt" { log_file send_user "\nConfigurazione scaricata\n" } timeout { send_user "\nErrore durante il download della configurazione." set mailfail "Errore durante il download della configurazione." }}closeif { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}set filesize [file size $basedir/$log]if { $filesize <= 1024 } { send_user "La configurazione di Netscreen è troppo piccola, per favore indaga\n" set mailfail "La configurazione di Netscreen è troppo piccola, per favore indaga\n" exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}#Rimuovi configurazione più vecchio di 2 settimaneexec trova $basedir -name '*config.txt*' -mtime +14

Consigliato: