{"id":485,"date":"2016-06-16T13:54:29","date_gmt":"2016-06-16T11:54:29","guid":{"rendered":"https:\/\/www.boc.de\/watchguard-info-portal\/?p=485"},"modified":"2016-06-16T14:07:55","modified_gmt":"2016-06-16T12:07:55","slug":"reboot-der-watchguard-per-script","status":"publish","type":"post","link":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/2016\/06\/reboot-der-watchguard-per-script\/","title":{"rendered":"Reboot der WatchGuard per Script"},"content":{"rendered":"<p>Dass ein <b>zeitgesteuerter Reboot<\/b> einer WatchGuard eingerichtet werden kann, d\u00fcrfte allgemein bekannt sein (im Policy Manager unter <i>Setup &gt; Global Settings &gt; Automatic Reboot<\/i>). Neulich fragte ein Kunde, ob ein solcher\u00a0<b>Reboot auch event-gesteuert<\/b> eingerichtet werden kann. Konkret sollte die WatchGuard jede Nacht durchbooten &#8211; aber erst dann, wenn die n\u00e4chtlichen Online-Backup Jobs zu Ende gelaufen waren. Die verwendete Backup-Software hat die Option, abschlie\u00dfend ein Programm\/Script zu starten, das diese Aufgabe \u00fcbernehmen k\u00f6nnte.<br \/>\nEine m\u00f6gliche L\u00f6sung sieht so aus: Auf dem Backup-Server wird die 3rd-Party Software <b>Cygwin<\/b> installiert (<a href=\"http:\/\/cygwin.com\/\" target=\"download\">http:\/\/cygwin.com<\/a>). Bei der Installation m\u00fcssen die Module <b>expect<\/b> und <b>openssh<\/b> mitinstalliert werden. Das auszuf\u00fchrende Skript sieht in etwa so aus:<\/p>\n<pre>#!\/usr\/bin\/expect\r\n\r\nset firebox\u00a0\u00a0\u00a0\u00a0\"a.b.c.d\"\u00a0\u00a0\u00a0;# IP-Adresse der WatchGuard\r\n set fbusername \"admin\"\u00a0\u00a0\u00a0\u00a0\u00a0;# admin Account verwenden\r\n set fbpassword \"xxxxxxxx\"\u00a0\u00a0;# admin Kennwort\r\n\r\nspawn ssh $fbusername@$firebox -p 4118\r\n\r\n# SSH Warnmeldung \u00fcbergehen bei erstmaliger Anmeldung\r\n\r\nset logged_in 0\r\n while {!$logged_in} {\r\n expect timeout {\r\n } \"Are you sure you want to continue connecting (yes\/no)? \" {\r\n exp_send \"yes\\r\"\r\n } \"\\[Pp\\]assword*\" {\r\n exp_send \"$fbpassword\\r\"\r\n } -re \"WG.*(#|&gt;)\" {\r\n set logged_in 1\r\n }\r\n }\r\n\r\n# Reboot-Befehl absetzen und SSH Verbindung beenden\r\n\r\nset timeout 20\r\n exp_send \"reboot\\r\"\r\n expect timeout {\r\n } \"Reboot (yes or no)?\" {\r\n exp_send \"yes\\r\"\r\n }\r\n expect -re \"WG.*(#|&gt;)\"\r\n exp_close\r\n exp_wait<\/pre>\n<p>Dieses Script kann nun \u00fcber die Cygwin-Umgebung ausgef\u00fchrt werden:\u00a0<span style=\"font-family: Courier;\">C:\\cygwin\\bin\\bash.exe &#8211;login -c [Dateiname]<\/span>.<\/p>\n<p>Und kann somit flexibel in jegliche Scripting-\/Batch-Umgebungen eingebunden werden. Nat\u00fcrlich kann der v.g. Befehl auch wiederum zeitgesteuert ausgef\u00fchrt werden, wenn \u00fcber den Task Scheduler \/ Aufgabenplanung entsprechende Tasks eingerichtet werden. W\u00e4hrend die integrierte Funktion &#8220;Automatic Reboot&#8230;&#8221; nur t\u00e4gliche oder w\u00f6chentliche Intervalle zul\u00e4sst, k\u00f6nnen auf diesem Weg also auch davon abweichende Reboot-Zyklen umgesetzt werden. <b>Auch alle anderen Command Line Interface (CLI) Befehle lassen sich auf die o.g. Methode von au\u00dfen scripten&#8230;<\/b> Damit sind viele kreative Ideen umsetzbar, z.B. auch das regelm\u00e4\u00dfige Auslesen der XML-Konfigurationsdatei und Ablegen auf einen FTP-Server&#8230;<\/p>\n<p>Die vollst\u00e4ndige <b>Referenz der Kommandozeilen-Befehle<\/b> findet sich auf der WatchGuard Website unter\u00a0<a href=\"http:\/\/www.watchguard.com\/help\/documentation\/xtm.asp\" target=\"doc\">http:\/\/www.watchguard.com\/help\/documentation\/xtm.asp<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dass ein zeitgesteuerter Reboot einer WatchGuard eingerichtet werden kann, d\u00fcrfte allgemein bekannt sein (im Policy Manager unter Setup &gt; Global Settings &gt; Automatic Reboot). Neulich fragte ein Kunde, ob ein solcher\u00a0Reboot auch event-gesteuert eingerichtet werden kann. Konkret sollte die WatchGuard jede Nacht durchbooten &#8211; aber erst dann, wenn die n\u00e4chtlichen Online-Backup Jobs zu Ende gelaufen waren. Die verwendete Backup-Software hat die Option, abschlie\u00dfend ein Programm\/Script &hellip; <a href=\"https:\/\/wordpress.boc.de\/watchguard-info-portal\/2016\/06\/reboot-der-watchguard-per-script\/\" class=\"more-link\">Weiterlesen <span class=\"screen-reader-text\">Reboot der WatchGuard per Script<\/span> <span class=\"meta-nav\">&raquo;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[34,33,31,32],"class_list":["post-485","post","type-post","status-publish","format-standard","hentry","category-watchguard-technischer-blog","tag-cli","tag-command-line","tag-reboot","tag-script"],"_links":{"self":[{"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/posts\/485"}],"collection":[{"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/comments?post=485"}],"version-history":[{"count":1,"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/posts\/485\/revisions"}],"predecessor-version":[{"id":486,"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/posts\/485\/revisions\/486"}],"wp:attachment":[{"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/media?parent=485"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/categories?post=485"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.boc.de\/watchguard-info-portal\/wp-json\/wp\/v2\/tags?post=485"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}