Table des matières:

Comment sauvegarder un pare-feu Netscreen : 8 étapes
Comment sauvegarder un pare-feu Netscreen : 8 étapes

Vidéo: Comment sauvegarder un pare-feu Netscreen : 8 étapes

Vidéo: Comment sauvegarder un pare-feu Netscreen : 8 étapes
Vidéo: Comment activer les logs du pare-feu WINDOWS 🧱 2024, Novembre
Anonim

Par joeSuivez plus par l'auteur:

Moniteur de garage et système d'alerte Intel Edison
Moniteur de garage et système d'alerte Intel Edison
Moniteur de garage Intel Edison et système d'alerte
Moniteur de garage Intel Edison et système d'alerte
Analyseur de pneus Intel Edison Fat Bike
Analyseur de pneus Intel Edison Fat Bike
Analyseur de pneus Intel Edison Fat Bike
Analyseur de pneus Intel Edison Fat Bike
Moniteur de garage Intel Galileo
Moniteur de garage Intel Galileo
Moniteur de garage Intel Galileo
Moniteur de garage Intel Galileo

À propos: J'aime bricoler avec à peu près n'importe quoi, parfois ça marche à la fin. Amusez-vous à regarder les projets, essayez de déchirer quelque chose et dites-moi comment ça se passe. bravo, -Joe En savoir plus sur Joe »

Cette instructable montre un script qui peut être utilisé pour automatiser les sauvegardes d'un pare-feu netscreen exécutant ScreenOS.

Étape 1: Exigences

Conditions
Conditions

Ce script est écrit en expect et suppose que SSH est activé sur votre netscreen et un environnement Linux. Si vous n'avez jamais consulté attendez, Oreilly a un excellent livre "Exploring Expect"

Étape 2: Variables

Variables
Variables

Nous allons commencer par définir certaines variables. Vous voudrez définir les variables port/nom d'utilisateur/mot de passe/netscreen/prompt pour qu'elles correspondent à votre environnement. #!/usr/bin/expect#Script attendu pour sauvegarder la configuration des pare-feux netscreen#Joe #Définir un délai d'attente varsset 60set user "root"set password "password"set port "2022"set netscreen "foo.bar.com"set basedir "/mnt/netapp/backups/foo.bar.com"set log "[timestamp -format %Y-%m-%d]-config.txt"set mailto "[email protected]"set mailsubject "Error: netscreen échec de la sauvegarde [timestamp -format %Y-%m-%d] " set mailfail " " set prompt " foo->"

Étape 3: Connectez-vous

Relier
Relier

Ensuite, dans le script, nous allons essayer de connecter.send_user "NetScren Backup Script\n"send_user "Connexion à $netscreen\n"spawn ssh $user@$netscreen -p$port expect { "password:" { send "$password\ r" expect { "$prompt" { send_user "Connected" } "Autorisation refusée" { send_user "Mot de passe invalide, sortie" set mailfail "Mot de passe invalide, sortie" close } timeout { send_user "Aucune invite renvoyée" set mailfail "Aucune invite renvoyée " close } } } "Pas de route vers l'hôte" { send_user "Impossible de se connecter à $netscreen\n" set mailfail "Impossible de se connecter à $netscreen\n" } "Nom ou service inconnu" { send_user "Impossible de se connecter à $netscreen\n" set mailfail "Impossible de se connecter à $netscreen\n" } timeout{ send_user "Timeout de connexion à $netscreen" set mailfail "Timeout de connexion à $netscreen" close } }if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Étape 4: Désactiver la pagination

Désactiver la pagination
Désactiver la pagination

Vous devez désactiver la pagination - ou le plus d'invite sur l'écran net. #Désactiver l'invite "plus" envoyer "définir la page de la console 0\r"expect { "$prompt" { send_user "\nPaging Disabled\n" } default { send "ScreenOS n'a pas excepté l'option de pagination.\n" set mailfail "ScreenOS n'a pas pas sauf l'option de pagination." close } timeout { send_user "ScreenOS n'a pas excepté l'option de pagination\n" set mailfail "ScreenOS n'a pas excepté l'option de pagination." close }}if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Étape 5: Obtenez la configuration

Obtenir la configuration
Obtenir la configuration

Nous allons maintenant récupérer la config. send_user "Téléchargement de la configuration\n"fichier_journal $basedir/$logsend "get config\r"expect { "$prompt" { log_file send_user "\nConfiguration téléchargée\n" } timeout { send_user "\nErreur lors du téléchargement de la configuration." set mailfail "Erreur lors du téléchargement de la configuration." }}closeif { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Étape 6: Vérifiez si la configuration est de la bonne taille

Vérifiez si la configuration est de la bonne taille
Vérifiez si la configuration est de la bonne taille

Nous saurons vérifier si la configuration est d'au moins 1k. La configuration Netscreen est trop petite, veuillez vérifier\n" exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}

Étape 7: nettoyage

Nettoyer
Nettoyer

Exécutons un petit nettoyage pour supprimer les configurations de plus de deux semaines. #Supprimer la configuration de plus de 2 semainesexec find $basedir -name '*config.txt*' -mtime +14

Étape 8: Tous ensemble

Assemblez le tout maintenant. Il est joint sous forme de fichier texte. Il enverra des e-mails en cas d'échec. #!/usr/bin/expect#Script attendu pour sauvegarder la configuration des pare-feux netscreen#Joe#Définir un délai d'attente varsset 60set user "root"set password "password"set port "2022"set netscreen "foo.bar.com"set basedir "/mnt/netapp/backups/foo.bar.com"set log "[timestamp -format %Y-%m-%d]-config.txt"set mailto "[email protected]"set mailsubject "Error: netscreen la sauvegarde a échoué [timestamp -format %Y-%m-%d] "set mailfail ""définir l'invite "foo-> "send_user "NetScren Backup Script\n"send_user "Connexion à $netscreen\n"spawn ssh $user@$ netscreen -p$port expect { "password:" { send "$password\r" expect { "$prompt" { send_user "Connected" } "Autorisation refusée" { send_user "Mot de passe invalide, en cours" set mailfail "Mot de passe invalide, en cours " close } timeout { send_user "Aucune invite renvoyée" set mailfail "Aucune invite renvoyée" close } } } "Aucune route vers l'hôte" { send_user "Impossible de se connecter à $netscreen\n" set mailfail "Impossible de se connecter à $netscreen\ n" } "Nom ou service inconnu" { send_user "Impossible de se connecter à $netscreen\n" s et mailfail "Impossible de se connecter à $netscreen\n" } timeout{ send_user "Timeout de connexion à $netscreen" set mailfail "Timeout de connexion à $netscreen" close } }if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}#Maintenant que c'est terminé, continuez#Désactivez les invites "more"send "set console page 0\r"expect { "$prompt" { send_user "\nPaging désactivé\ n" } default { send "ScreenOS n'a pas excepté l'option de pagination.\n" set mailfail "ScreenOS n'a pas excepté l'option de pagination." close } timeout { send_user "ScreenOS n'a pas excepté l'option de pagination\n" set mailfail "ScreenOS n'a pas excepté l'option de pagination." close }}if { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}send_user "Téléchargement de la configuration\n" log_file $basedir/$logsend "get config\r "expect { "$prompt" { log_file send_user "\nConfiguration téléchargée\n" } timeout { send_user "\nErreur lors du téléchargement de la configuration." set mailfail "Erreur lors du téléchargement de la configuration." }}closeif { $mailfail != "" } { exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}définir la taille du fichier [taille du fichier $basedir/$log]if { $filesize <= 1024 } { send_user "La configuration du réseau est trop petite, veuillez enquêter\n" set mailfail "La configuration du réseau est trop petite, veuillez enquêter\n" exec /bin/mail -s$mailsubject $mailto << "$mailfail" exit}#Remove config plus de 2 semainesexec find $basedir -name '*config.txt*' -mtime +14

Conseillé: