Blog

SSH Verbindung mit privaten/öffentlichen Schlüssel

Veröffentlicht am

Üblicherweise kennt man einen SSH Login mit Passwort. Was ist aber, wenn es erforderlich ist, eine Verbindung ohne Password herzustellen? Hier kommt die Schlüssel-Authentifizierung ins Spiel. Bei dieser Art der Authentifizierung wird mit Schlüsseln gearbeitet. Genauer gesagt dem öffentlich- und dem privaten Schlüssel.  Wollen wir z.B., dass Server1 sich ohne Passwort Abfrage auf dem Server2 anmelden kann, so erstellen wir auf Server1 einen privaten, samt öffentlichen Schlüssel. Server2 müssen wir den öffentlichen Schlüssel mitteilen. Schauen wir uns das untere Bild mal genauer an. Server1 möchte eine SSH Verbindung nach Server2 aufbauen. Server2 schickt eine Random Antwort, die Server1 mit einer […]

Blog

icinga2 auf dem Raspberry Pi mit Postgresql

Veröffentlicht am

Icinga2 und Icingaweb2 installieren Damit wir Icinga2 und Icingaweb2 installieren können, benötigen wir das entsprechende Repository. Sobald dies eingerichtet ist, installiert es mit dem apt Befehl. cuurl https://packages.icinga.com/icinga.key | sudo apt-key add – echo „deb http://packages.icinga.com/raspbian icinga-stretch main“ \ | sudo tee /etc/apt/sources.list.d/icinga.list sudo apt update sudo apt install icinga2 icingaweb2 http://localhost/icingaweb2   Nachdem wir auf die Seite gelangt sind, verlangt Icinga ein Token zur Authentifizierung von uns. Dem wollen wir nun nachgehen. sudo icingacli setup config directory –group icingaweb2; sudo icingacli setup token create;   Optional könnten wir noch überprüfen, ob die erforderlichen Gruppen für Icinga existieren. Es sollte […]

Blog

check_mk Update durchführen

Veröffentlicht am

Das Update von check_mk verhält sich ein wenig anders als man es gewohnt ist. Es muss zuerst dass jeweilige Paket runtergeladen und installiert werden. Achtet dabei auf die Version, die ihr haben wollt und die Edition, die ihr benötigt. Nehmt aus der unteren Tabelle das Editionskürzel. CRE ist dabei die kostenlose Variante. Auf der Seite werden die unterstützten Distributionen aufgelistet. Ladet eure richtige Version herunter. https://checkmk.de/download_version.php?&version=1.6.0&edition=cee Die Dateiendung .cee steht für Checkmk Enterprise Edition. Neben dieser gibt es noch .cre Checkmk Raw Edition .demo Demo Version der Checkmk Enterprise Edition .cme Checkmk Managed Services Edition   wgett https://checkmk.de/support/1.6.0/check-mk-enterprise-1.6.0_0.xenial_amd64.deb Überprüfen wir […]

Blog

multiple Datenbanken mit Django

Veröffentlicht am

Django hat durch sein MVC(Model-View-Controller) von Beginn an eine Datenbank mit am Board. Mein Projekt basiert auf mysql, jedoch hatte ich weitere Datenbanken, die ich über Django managen wollte, die allerdings nicht in der Default DB von Django sind. Daher müssen diese Django bekannt gemacht und Models für diese Datenbanken erstellt werden. Die Bekanntmachung findet in der settings.py statt. Hier trägt man die weiteren DB Verbindungen ein. Dabei könnte es wie folgt aussehen. In dem DATABASE Dictionary können neben dem Default weitere Werte eingetragen werden. Die ENGINE bestimmt dabei, ob mysql, sqlite oder die anderen unterstützen DBs eingetragen werden. Im […]

Kali

Kali Linux Android hack

Veröffentlicht am

Ein Hinweis vorweg: Ich übernehme keinerlei Haftung für Schäden, die durch diesen Artikel verursacht wurden. Ein mutwilliges Hacken anderer ist eine Straftat, führt diesen Selbstversuch also bitte nur bei euren Geräten aus. Wer ein Android Handy hacken möchte, braucht dazu nicht viel. Es ist leider auch sehr erschreckend wie wenig es benötigt, damit der Hack erfolgreich ausgeführt werden kann. Zum einen reicht Kali Linux und die vermeintliche Unachtsamkeit des Smartphone Users, damit der Angreifer vollen Zugriff auf das Handy hat. Meine Teststellung bestand aus einem Samsung S5 Neo, geflasht auf Android 6 und meinem Laptop, auf dem ich eine virtuelle […]

Blog

openweather

Veröffentlicht am

Ich war auf der Suche nach einen kostenlosen Onlineservice um Wetterdaten via API abzugreifen. Ziel ist es, ein lokales Chart über das Wetter zu bekommen, welches über Jahre auswertbar ist. Mit den erworbenen Wetterdaten möchte ich vor allem die Windgeschwindigkeiten Vorort im Auge behalten. Fündig geworden bin ich bei Openweather. Um den Service und somit die API abzufragen, benötigt ihr ein Key. Dieser muss bei jeder Abfrage angegeben werden. Den Key erhält man bei der Registrierung im Portal. Ihr könnt dort ebenfalls zur kostenpflichtigen Version wechseln. Diese bietet gegenüber der Kostenfreien mehr Funktionen an. Für mich reicht die kostenlose Variante. […]

Blog

Django mit Mysql Datenbank

Veröffentlicht am

Django benötigt für das Model Prinzip eine eigene Datenbank. Standardmäßig hat es die SQLite Datenbank mit am Board , jedoch kann die Datenbank auch auf eine besser skalierbare Datenbank wie PostgreSQL, MySQL oder Oracle laufen. Ich habe mich gegen die SQLite Version und für die MySQL Datenbank entschieden, daher gehe ich in diesem Beitrag auf die MySQL Integrierung ein. SQLite sollte unter keinen Umständen in einer produktiv Umgebung genutzt werden! Um Mysql verwenden zu können, benötigen wir ein DB API Treiber wie mysqlclient. Mysqlclient ist ebenfalls die bevorzugte Wahl von Django. Die dazugehörige Dokumentation von Django kann unter dem Tutorial […]

Blog

Shell Backup Script erzeugen

Veröffentlicht am

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 […]

Blog

Python Datenbank Klasse Update

Veröffentlicht am

In meiner Datenbank Klasse habe ich lange Zeit die Update Funktion missen lassen. Hier gelangt ihr zum alten Artikel. Einfach aus dem Grund weil ich sie vorher noch nicht benötigt habe. Das habe ich hiermit nun nachgezogen(Eigentlich existiert sie schon wesentlich länger, aber ich habe jetzt erst den Artikel verfasst 😉 ). Das Update kann separat aufgerufen werden, macht aber auch Sinn in Zusammenhang mit einem Insert. Falls dort z.B. ein Primärschlüssel schon existiert, kann dieser geupdated werden. Für ein internes Projekt habe ich folgende Befehlszeilen dafür benutzt if not DB.QueryInsert(„insert into AUX_PROJECTS(%s) VALUES(%s)“,{„ID“:PList[i][0],PList[0][1]:PList[i][1],“ZINS“:str(PList[i][2]).replace(„,“,“.“),PList[0][3]:PList[i][3],“ANLAGE“:PList[i][4],“STATUS“:PList[i][5],“SCORE“:PList[i][6],PList[0][7]:PList[i][7],PList[0][8]:PList[i][8],“UNIT“:PList[i][9],“UPLOADED_AT“:PList[i][10]}, True): DB.QueryUpdate(„update AUX_PROJECTS SET %s where […]