Weblog Auswertung

Es gibt genügend Weblog Dateien, die einem ungefilterte Informationen zu bestimmten Dingen geben. Eine davon ist die von meiner emslandmap auf unser-schoenes-emsland. Auch wenn ich die Logs in diesem Fall selber schreiben lasse, so ist die Masse nicht immer zielführend für Auswertungen und ein simples durchforsten ist meist aufwendig. Zum Glück gibt es Möglichkeiten die Logs mit einer Shell zielgenauer zu filtern. Dies hab ich mit dem Skript aus diesem Beitrag gemacht. Am Anfang stehen ein paar Variablen, die vorher gesetzt werden. Das Skript sucht nach Zeilen mit dem Schlagwort “REMOTE IP”. Wie solch eine Zeile aussieht seht ihr hier: […]

Shell Start Script mit automatischen Neustart

Falls ihr auf der Suche nach einem Shell Start Script seit, habt ihr es hier gefunden. Für das OpenSource Datawarehouse Metabase habe ich mir ein Script geschrieben, welches den Prozess startet und überwacht. Systemd als Service Manager kommt dabei ebenfalls zum Einsatz und sorgt dafür, dass das Script beim Starten des Servers ausgeführt wird. Sollte Metabase nicht mehr Laufen oder der Prozess sich beendet haben, startet das Script es einfach erneut und protokolliert dies in der Log. Die Grundbasis kann dabei für jegliche Prozesse benutzt werden, die automatisch neu gestartet werden sollen. Shell Start Script Vor einiger Zeit hatte ich […]

Shell Backup Script erzeugen

Backups sind wohl eines der wichtigsten Dinge auf einem Server und so darf es natürlich auch nicht auf meinem Server fehlen. Statt einer Software Solution habe ich mir meine mit Hilfe von Shell selbst geschrieben. Das Script ist relativ schmal gehalten, erledigt aber alles mit bravour. Es hat eine Vorhalte Zeit von 5 Tagen welches in der Variable mindir abgespeichert ist. Es werden also insgesamt die letzten 5 Backups beibehalten, die älteren Backups werden automatisch gelöscht.  Die For Schleife beinhaltet alle Ordner die gesichert werden sollen. Das Interessante ist der find Aufruf, um die ältesten Backups zu finden und diese […]

IPs mittels iptables automatisch blockieren lassen

Eigentlich wollte ich meinen vServer noch sicherer machen, indem ich von Seiten wie myip.ms eine vorgefertigte Blackliste herunterlade. Die gezogenen IPs sollten mittels iptables blockiert werden. Ich hatte auch schon soweit alles fertig geschrieben, ein Python3 Script, ein Shell Script und die SQL Scripte zum Anlegen der Datenbank. Allerdings habe ich nach ein “paar” Einträgen folgende Nachricht von iptables bekommen: iptables: Memory allocation problem. Nach ein bisschen Internet Recherche fand ich heraus, dass mich mein Hoster auf eine bestimmte Anzahl an iptable Einträgen begrenzt. Die maximal Möglichen Einträge findet ihr mit diesem Befehl. egrep “failcnt|numiptent” /proc/user_beancounters numiptent steht dabei für […]

Metabase Startup Script

Damit Metabase automatisch starten, habe ich dieses Script geschrieben. Dafür überprüft es, ob Metabase, bzw. eine Java Instanz schon auf Port 3000 lauscht. Falls dies der Fall ist, gehe ich davon aus, dass Metabase schon läuft und schreibe es in die Variable alreadystarted. In die eventuallystarted schreibe ich, falls schon ein Java Dämon existiert. Dies könnte unter Umständen bedeuten, dass Metabase im Boot Mode ist und gerade gestartet wurde. In diesem Fall bricht das Script ab und man muss es manuell ausführen. Metabase ist definitiv nicht am Laufen, wenn beide Variablen nicht gesetzt sind. Dementsprechend sind die export Variablen für […]

Shell Script zum Kopieren

Ich habe mir heute mal ein keines Shell Script geschrieben, welches mir Dateien hin und hier schiebt. Ziel war es die Daten von meinem Test System in die Produktiv Ordner meines Webserver zu schieben. Da es mehrere Ordner sind, war und ist es ziemlich mühselig Änderungen auf die produktiven Seiten zu kopieren. Die Funktionsweise ist eigentlich ziemlich schnell erklärt. Im Array sind meine Produktiv Systeme, bzw. Ordner. In der ersten IF-Anweisung prüft er ob die Datei, die ich der Shell als Parameter übergeben habe, überhaupt im Test existiert. Sollte dies der Fall sein, springt das Script in ein Loop über […]