Wie schütze ich meine Familie im Internet?

English translation available here.

Start with why!

Meine Tochter wird bald anfangen sich in den weiten des Internet herumzutreiben. Eine Horrorvision. Die beste Vorgehensweise ist natürlich, sich mit Ihr hinzusetzen und Ihr zu zeigen was sie machen darf und was nicht, wo die Gefahren lauern und warum man vorsichtig sein muss. Aber auch wenn ich nicht zu Hause bin, will ich einen Weg haben, meine Familie gegen Gefahren aus dem internet abzusichern.

Aber auch einige andere Gründe sprechen für die Umsetzung dieser Lösung:

  • Homeautomation
    Immer mehr Geräte (Kaffeemaschine, Heizung, Lüftung, Receiver, Fernseher, etc.) werden über das Internet aktualisiert und ferngesteuert. Gleichzeitig geraten entsprechende Hersteller immer mehr in Kritik, dass die Systeme nicht anständig gegen Angriffe von außen abgesichert sind.
  • Testumgebungen
    Ich beschäftige mich viel SCCM. Ein Hype-Thema ist die Verteilung der Software via Internet und in DMZ Umgebungen. Mit einer solchen Firewall lassen sich günstige aber doch realitätsgetreue Simulationen erstellen.

Aus diesem Grund habe ich mich entschlossen einen Proxy Server mit Filter Engine zu installiert. Als Software kommt verschiedene Ansätze in Frage. IPCop, IPFire und PFSense sind wohl die bekanntesten freien Firewall Lösungen. Der folgende Artikel beschreibt die Installation mit IPFire. Dies ist aber nicht als Empfehlung zu betrachten, heute nutze ich aus verschiedenen Gründen ein PFSense System. jedes der Systeme hat seine Berechtigung. Neben der Sofwarelösung, soll das ganze natürlich aber auch möglichst stromsparend, wartungsarm und so günstig wie möglich sein.

Die Hardware

Nach einiger Suche bin ich auf die APU Boards von PCEngine gestoßen. Nach einiger Recherche habe ich mich für das APU 1D4 Modell entschieden. die etwas günstigeren ALIX Boards sind nicht in Frage gekommen, da diese noch mit Compact Flash Karten bestückt sind und ohne Modifikation des zugrundeliegenden Linux OS nicht zu betreiben sind (zudem ist ein dauerhafter Betrieb auf einer Compact Flash Karte nicht zu empfehlen). PCengines ist ein Schweizer Hersteller und da dieser keine Direkt-Vertrieb macht, ist die Herausforderung einen Reseller zu finden. In meinem Fall war dies Varia-Store.com. Folgend sind einige Bilder über die Hardware zu sehen, die notwendig ist, das Gerät zu konfigurieren:

Diese Diashow benötigt JavaScript.

Ein wenig „tricky“ ist die Installation der Kühleinheit (das kleine blaue Board auf der linken Seite mit dem Bild auf dem alle Komponenten zu sehen sind). Eine genaue Anleitung hat PCEngines hier veröffentlicht.

Serielle Verbindung

Ist die Hardware einmal montiert, muss eine serielle Verbindung mit dem APU Board hergestellt werden. Genutzt wird hierfür der USB->Serial Adapter und ein Terminal Client (folgend nutze ich Royal TS, aber es geht auch jeder andere Terminal Client). Ist das Kabel mit dem PC verbunden, muss im Device Manager der genutzte genutzte COM-Port notiert werden (hier COM4).

COMPort

Anschließend kann die Serielle Verbindung wie folgt konfiguriert werden.

Capture_SerialPortConfig

Erst nach Verbindungaufbau wird das APU Board eingeschaltet. Funktioniert alles, kann der Start des Systems in der Terminal Anwendung verfolgt werden.

Capture_Connected

Installation des Images

Es gibt verschiedene Möglichkeiten, das Image auf das System aufzuspielen, ich habe mich für die Variante mit dem USB Stick entschieden. Als Software wird der Win32 Disk Imager benötigt, das Image kann direkt von IPFire heruntergeladen werden. WICHTIG: Es muss das „Flash Image für Geräte mit serieller Konsole“ verwendet werden.

Nach dem download wird das image auf den USB Stick übertragen und dieser mit dem APU Board verbunden.

Capture_WinImage

Je nach USB Port wird in der Seriellen Konsole nun der Start vom USB Stick mit „a“ oder „b“ bestätigt und mit „E“ diese Booteinstellung übernommen. Ggf. kann es passieren, dass das System mehrfach neu gestartet werden muss, bis die Installation des IPFire System beginnt.

Install and Configure IPFire

Im ersten Schritt müssen die Grundeinstellungen wie Tastatursprache, Region und der Host-/ Domainname konfiguriert werden.

Diese Diashow benötigt JavaScript.

Nachfolgend wird noch das Kennwort für den Administrator und den root-user definiert.

Der nächste Schritt dreht sich um die Konfiguration des Netzwerks. In meinem Fall habe ich den Typ „GREEN + ORANGE + RED“ gewählt. Mein Ziel war es, ein internes Netz für alle Geräte des täglichen Gebrauch (GREEN), ein extra abgesichertes Netz für kritisches Haussteuerung (ORANGE) und das Netz für den Zugang nach außen (RED) zu konfigurieren.

Nun werden die physischen Netzwerkkarten zu den Netzwerktypen zugeordnet. In meinem Fall war die niedrigste MAC-Adresse auf der linken Seite des APU Boards (in der nähe des Serial Adapters) installiert.

WP_20160520_12_21_10_Rich.jpg

Entsprechend werden die Netzwerkkarten dann den Zonen zugeordnet.

Capture_SSH_IPFire_Setup08_CardOverview.PNG

Nun werden die IP Adressen in den „Address Settings“ zugeordnet. In meinem Fall habe ich den DSL Router vorweg auf die interne Adresse 192.168.24.1 konfiguriert. Somit erhielt das RED-Interface die 192.168.24.2. ORANGE und GREEN wurden je ein Subnetz höher mit ORANGE=192.168.25.1 sowie GREEN=192.168.26.1 angelegt.

Capture_SSH_IPFire_Setup13_AdressSettingsREDIP

Danach geht es and die Konfiguration des DNS und Gateway Servers. In normalen heimnetzen kann hier der Router als DNS Server eingetragen werden, dieser wird sich dann um das DNS Forwarding zu den entsprechenden öffentlichen Systemen kümmern.

Capture_SSH_IPFire_Setup15_DNSAndGateway

Diese Diashow benötigt JavaScript.

Der letzte Schritt konfiguriert den DHCP Server. Dies kann später auch in der Administrationskonsole geschehen, aber es macht Sinn dies schon während des Setups durchzuführen um die Funktion des Systems zu testen.

Capture_SSH_IPFire_Setup16_DHCPServer

Nach der Konfiguration des DHCP Servers wird die APU Einheit neu gestartet und das IPFire System ist einsatzbereit. Das RED Interface wird nun mit dem DSL Router verbunden und ein PC mit dem GREEN Interface.

Die Konfiguration

Um das Admin Interface zu öffnen wird die URL …

https://<ip-adresse&gt;:444 aufgerufen

… und der zuvor konfigurierte Account verwendet um sich anzumelden.

Der Proxy

Im Prinzip besteht nun schon ein Schutz der Geräte im Heim-Netz. Nun soll aber auch sichergestellt werden, dass kein User im Heim-Netz in der Lage ist, nicht gewünschten Inhalt anzuzeigen. Dies wird erledigt, indem aller Traffic über einen Proxy Server geroutet wird und dieser den Inhalt analysiert. Für die Konfiguration des Proxy Servers in IPFire wird nach „Network -> Webproxy“ navigiert.

Nun wird die Option „Enable on green“ und „transparent on green“ aktiviert. Die Option „transparent on green“ sorgt dafür, dass alle Web-Anfragen innerhalb der IPFire auf den Proxy umgeleitet wird. Damit entfällt die Notwendigkeit, den Proxy Server auf jedem Endgerät konfigurieren zu müssen.

IPFire-Proxy02

Proxy filter

Nach der Aktivierung des Proxy-Servers kann nun der Filter aktiviert werden. Um ungewünschte Web-Inhalte zu identifizieren ist eine entsprechende Liste notwendig. Es stehen im Internet einige kommerzielle und Community-getriebene Listen zur Verfügung, ich persönlich nutze shallalist.de. Für die initiale Konfiguration muss die Liste einmalig manuell heruntergeladen werden. Die Konfiguration erfolgt im Menüpunkt „Network -> URL Filter„.

Dort wird unter „URL filter maintenance“ die liste eingespielt.

IPFire-URLFilter01

Nach dem Import der Liste stehen die Kategorien zur Verfügung (hoch scrollen), die blockiert werden können.

IPFire-URLFilter02

Nach Aktivierung und Übernahme der Änderungen mit „Save & Restart“ ist der Filter aktiv und kann getestet werden. Hierzu wird ein Browser geöffnet und eine Testseite (z.B. Playboy.com bei blockade der Kategorie „porn“) geöffnet. Das IPFire System sollte nun den Zugriff blockieren und eine entsprechende Seite ausgeben.

Version:1.0 StartHTML:000000224 EndHTML:000003256 StartFragment:000002840 EndFragment:000003220 StartSelection:000002840 EndSelection:000003220 SourceURL:https://wordpress.com/posts/my/crankdesk.wordpress.com?s=porn

IPFire-URLFilter03

Im letzten Schritt, kann nun noch das „automatic blacklist update“ konfiguriert werden um regelmäßige Aktualisierungen der Blacklist automatisch einzuspielen.

Einschränkungen

Die hier beschrieben Methode stellt einen grundlegenden Schutz dar. Werden aber nicht gewünschte Inhalte embedded auf verschlüsselten Seiten dargestellt, kann die Firewall diese Inhalte nicht ausblenden, da diese nicht auf den Inhalt des Datenstroms zugreifen kann. In diesem Fall ist es notwendig, dass die Firewall den Datenstrom entschlüsselt, analysiert und für den weiterversandt zum Endgerät (mit einem eigenen Zertifikat) neu verschlüsselt. Die Herausforderung bei einem Heim-Netzwerk ist (neben dem technischen Know-How), für jedes Gerät das entsprechende Zertifikat der Firewall einzuspielen oder eben ein SSL Zertifikat eines entsprechenden Herstellers kostenpflichtig zu beziehen..

Zusammenfassung

Grundsätzlich lässt sich mit einer eigenen Hardware, einem entsprechendem offenen System, einigem Willen zum „basteln“ und grundlegendem Know-How eine Firewall für den Heimgebrauch bauen und beliebig erweitern. Ich betreibe die Firewall in der hier beschriebenen Weise nun seit knapp einem Jahr außer dass ich nach jeder Änderung ein Backup (mit den integrierten Möglichkeiten) durchführe liegt der Wartungsaufwand bei nahezu null. Auch gröbere Eingriffe wie das mehrfache Abschalten des Stroms durch den Elektriker (Neubau) hat das System klaglos überstanden.

 

 

Advertisements

3 Gedanken zu „Wie schütze ich meine Familie im Internet?

  1. Pingback: How to protect your childs from porn | Crankdesk…

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s