Michaels Homepage

Home  |  Persönliches  |  Samtpfoten  |  Lyrik  |  Das Wasser des Lebens  |  Schottland  |  IT-Projekte  |  Radtouren  |  Dies und Das  |  Astronomie 

IT-Projekte


Hier finden sie kurze Einführungen in einige IT-Projekte, mit denen ich mich beschäftigt habe. Da zu den meisten dieser Projekte bereites detaillierte Informationen verfügbar sind, werden sie nicht im Detail, sondern eher allgemein angerissen.

        

Homepage auf dem eigenen Rechner erstellen

Um die eigene Homepage in das Internet zu bringen, gibt es mehrere Möglichkeiten:

  • die Homepage auf einem vom Provider zur Verfügung gestellten Server einrichten
  • die Homepage auf einem gemieteten Server eines Hosters einrichten
  • die Homepage auf dem eigenen Rechner einrichten        
Die ersten beiden Möglichjeiten haben den Vorteil, dass sie nach dem Erstellen der Homepage alles andere dem Betreiber des Servers überlassen können, so ist er für die Sicherheit des Rechners verantwortlich und auch dafür, dass ihre Homepage jederzeit erreichbar ist. Allerdings liegen ihre Daten dann auf einem Server, auf den sie nur eingeschränkt Zugriff haben.

Dies ist bei der Erstellung der Homepage auf dem eigenen Rechner nicht der Fall. Allerdings gibt es hier einen Stolperstein : die IP-Adresse ihres Rechners. Diese wird in der Regel von ihrem Provider dynamisch zugewiesen und ändert sich daher täglich. Zusätzlich sollte ihr Rechner permanent laufen - allein aufgrund der entstehenden Stromkosten ist hier ein Einplatinenrechner (zum Bespiel ein Raspberry Pi) erste Wahl.

Damit eine Webseite im Internet erreichbar ist, wird ihr eine IP-Adresse zugeordnet. Diese Zuordnung IP-Adresse zu Internetseite wird von einem Domain Name Service (DNS) durchgeführt, wobei den Webseiten statische IP-Adressen zugewiesen werden. Da jedoch ihre IP-Adresse (oder genauer die IP-Adresse ihres Routers, denn nur darüber sind sie mit dem Internet verbunden) dynamisch ist, muss sie von einem dynamischen DNS ihrer Website zugewiesen werden. Dabei wird die (Internet-) IP-Adresse ihres Routers permanent mit der im DNS hinterlegten IP-Adresse verglichen und diese gegebenenfalls geändert.  Dieser DynDNS genannte Dienst wird teilweise kostenlos von einigen Anbietern zur Verfügung gestellt:
  • SecurePoint DynDNS
  • DynDNS Service
  • ClickIP
Nach der Registrierung bei einem dieser Anbieter werden einem (meistens mehrere) mögliche Seitennamen zur Verfügung gestellt, die dann dynamisch der IP-Adresse des Routers zugewiesen werden. Diese Zuweisung geschieht unter Linux mit Hilfe eines sogenannten 'daemons', der auf dem lokalen Rechner läuft und in festen Zeitabständen dem DynDNS die IP Adresse ihres Routers im Internet mitteilt.

Eigenen Rechner absichern (ssh, Antivirus-Software, IDS, Firewall)

Wozu den eigenen Rechner absichern? Ich rufe ja gar keine Webseite auf...

Auch wenn sie nicht im Internet surfen, so meldet sich ihr Rechner mit dem Einschalten über die Netzwerkkarte im Internet und hinterlässt dort Spuren. Sollten sie zudem noch ihre Homepage auf dem eigenen Rechner betreiben, so ist er grundsätzlich über die der Webseite zugewiesene IP-Adresse erreichbar.

Um nun zu verhindern, dass ihr Rechner das Opfer von Computerviren oder Trojanern wird oder sich ein Hacker an ihm zu schaffen macht, sollten zunächst einige einfache Grundregeln befolgt werden:

  • niemals auf dem Rechner als Administrator (Windows) oder root  (Linux) anmelden. In diesem Fall hätte ein Hacker unbegrenzten Zugriff auf ihren Rechner. Diese Benutzer sollten daher nur temporär zur Durchführung administrativer Aufgaben verwendet werden
  • Benutzerlogin immer über ein Passwort absichern, welches nicht einfach zu erraten ist (es sollten z. Bsp. keine Namen verwendet werden)
  • Remote -Zugriff auf ihren Rechner nur über ssh zulassen

Bei der Verwendung von ssh sollte zudem ein root-Login unterdrückt werden. Des weiteren kann (für die ssh-Anmeldung über Passwort) die Anzahl der möglichen Login-Versuche begrenzt werden, da es unwahrscheinlich ist, dass sie mehrmals ein falsches Passwort benutzen. Noch einfacher (und sicherer) ist es, eine Anmeldung über Pre-Shared Keys durchzuführen, in diesem Fall wird einmal ein Schlüssselpaar (Public Key und Private Key) erzeugt, und der Public Key wird nun verteilt, um bei der Anmeldung auf dem Rechner mit dem entsprechenden Private Key verglichen zu werden.   

Trotz der Absicherung des Rechnerzugangs über ssh besteht die Gefahr, dass Sie unbemerkt einen Virus auf Ihrem Rechner installiert haben (durch einen falschen Klick auf einer Website, durch Öffnen von Mailanhängen etc.). Eine Übersicht über Viren (oder besser über Schadsoftware) finden sie unter

Viren, Würmer und Trojaner

Wenn Sie sich nicht sicher sind, ob sie einen Virus auf Ihrem Rechner installiert haben (oder sich der Rechner 'auffällig' verhält, zum Beispiel langsamer ist als sonst etc.), sollten Sie die Datenträger Ihres Rechners mit einem Antivirenprogramm überprüfen, welches die Dateien Ihres Rechners auf markante Zeichenketten bekannter Viren untersucht, welche einer Library entnommen werden. Wie Sie sehen, hat dieses Verfahren zur Überprüfung der Datenintegrität Ihres Rechners jedoch zwei Schwachstellen:

        -    der Virus muss bereits bekannt sein
        -    die verwendete Library muss möglichst aktuell sein

Wenn sich also ein bisher unbekannter Virus auf ihrem Rechner befindet, kann er mit einem solchen Antivirenprogramm nicht gefunden werden - oder erst dann, wenn eine dem Virus entsprechende Signatur in die Library übernommen wurde. 

Ein Virus installiert neue (Schad-)Software auf Ihrem Rechner, oder er ersetzt ausführbare Systemdateien (sogenannte Binaries), welche dann neben der eigentlichen Funktion im Hintergrund zusätzliche ungewollte Aufgaben ausführen. Da es quasi unmöglich ist, die Integrität aller Systemdateien täglich zu überprüfen, gibt es sogenannte HIDS - SW (Host Intrusion Detection System) wie z. Bsp. für Linux tripwire. Dieses HIDS legt Prüfsummen der Systemdateien in einer Datenbank ab und verifiziert die Integrität der Dateien durch Vergleichen der Prüfsummen. Durch einen Eintrag in crontab (ermöglicht die zeitgesteuerte automatische Ausführung von Programmen) kann dann zum Beispiel die Systemintegrität wöchentlich, täglich oder auch alle x Stunden verifiziert werden.
Bei einem Systemupdate (Ersetzen installierter SW durch aktuelle Versionen) muß man die Datenbank allerdings neu erstellen.

Das private Netzwerk im Internet - Aufbau eines VPNs

VPN? Was ist das? Nun, die Abkürzung steht für Virtuelles Privates Netzwerk. Aha, werden Sie jetzt sagen. Und wofür braucht man das?

Angenommen, Sie möchten Ihre Urlaubsbilder einem Bekannten zeigen. Sie könnten die Bilder zu diesem Zweck auf Ihrer Homepage veröffentlichen (wo sie dann. wenn der Zugriff nicht über ein Passwort geschützt ist, jeder sehen kann) oder sie auf einem Webserver speichern, von dem der Bekannte die Bilder dann herunterladen kann. 

Die andere Möglichkeit wäre, dem Bekannten die Bilder zu senden. Allerdings ist das Versenden von Digitalbildern als Mailanhang meistens mit dem Problem verbunden, dass der Mailanhang eine bestimmte Grösse nicht überschreiten darf.

Am einfachsten wäre es doch, wenn der Bekannte die Bilder direkt von ihrem Rechner auf seinen eigenen Rechner kopieren könnte. Und genau hier kommt das VPN ins Spiel. Durch dieses private Netzwerk werden Ihre Rechner so verbunden, dass das möglich ist. Hinzu kommt, dass die Datenubertragung verschlüsselt erfolgt. Auch bei der Arbeit im Home Office zum Beispiel müssen sie ja gelegentlich auf Daten zurückgreifen, die sich nicht auf Ihrem Laptop befinden. Auch dieses geschieht über ein VPN.

Für die Erstellung eines VPNs gibt es mehrere Software-Lösungen (OpenVPN, SoftEther VPN, tinc, Wireguard), oder sie können auch einen kommerziellen VPN-Anbieter auswählen.

Eine gute Bescheibung zur Errichtung eines VPNs auf Basis von tinc finden Sie unter

heise - Dezentrales VPN mit tinc

Steganographie

Unter Steganographie versteht man die versteckte Übermittlung von Informationen. In der IT kann zum Beispiel eine Textnachricht versteckt übertragen werden, indem sie in einem Bild oder Video eingebettet wird.

Dieses kann durch einfaches Anhängen der Textdatei an eine Bilddatei geschehen ...

            $ ls bild.jpg
            bild.jpg           
            $ cat geheim.txt
            Diese Textnachricht wird versteckt übertragen.
            $ cat bild.jpg geheim.txt > bild1.jpg

Die so erzeugte Bilddatei kann nun zum Beispiel als Mailanhang verschickt werden. Der Empfänger der Mail kann aus dem Anhang der zugesandten Mail die Textnachricht unter Linux z. Bsp. mit dem Kommando strings wieder extrahieren:

            $ strings bild1.jpg
            JFIF
            ....
            Diese Textnachricht wird versteckt übertragen

Die Textdatei kann jedoch auch durch Command Line Tools wie steghide oder outguess so in die Bilddatei eingefügt werden, dass ein Extrahieren der Textdatei wesentlich schwieriger ist:

            $ steghide embed -ef geheim.txt -cf bild.jpg -p PassWort -sf bild2.jpg
            Bette "geheim.txt" in "bild.jpg" ein... fertig
            Schreibe Stegodatei "bild2.jpg"... fertig

In diesem Fall benötigt der Empfänger der Mail zumindest das Passwort, um die Textdatei auszulesen:

            $ steghide extract -sf bild2.jpg -p PassWort -xf textnachricht.txt
            Extrahierte Daten wurden nach "textnachricht.txt" geschrieben.
            $ cat textnachricht.txt
            Diese Textnachricht wird versteckt übertragen.
 

Aufsetzen eines Domain Name Servers


Netzwerkmonitoring


Wireshark










   © Michael Bomballa

   Letzte Änderung 09.06.2020