bruening-bw.de/edv/net

Netzwerk

2019-09-03

Problemstellung

Für meine Datenverarbeitung nutze ich verschiedene Computer an verschiedenen Orten. Über einen VPN-Tunnel erstreckt sich mein Heimnetzwerk bishin zu meinem Arbeitsplatz. Ich pflege in meinem Netzwerk insgesamt sechs Linux-Rechner, von denen zwei an meinem Arbeitsplatz stehen. Ich möchte natürlich, dass meine Dateien auf allen Rechnern synchronisiert werden. Herumtragen von Daten auf USB-Sticks kommt für mich selbstverständlich nicht in Frage.

2018-07-16

Mein eigener Server

Im laufe des Jahres 2017 habe ich hierfür diverse Lösungen ausprobiert. Ich hatte auch zeitweise ein gebrauchtes NAS vom Typ Synology DS211+ in Betrieb. Ich war jedoch mit keiner Variante richtig zufrieden. Das NAS ist sicher nicht schlecht, aber von der Vielfalt der Einstellungsmöglichkeiten habe ich mich schlichtweg erschlagen gefühlt. Mittlerweile verwende ich das NAS nicht mehr und habe es durch einen Server ersetzt, der unter openmediavault (OMV) läuft.

In meinem Server betreibe ich einen AMD Athlon II X2 270u. Mit einer thermischen Verlustleistung von maximal 25W ist es einer der sparsamsten Athlon Prozessoren. Als Mainboard verwende ich ein ASUS M5A78L mit ECC-RAM von Kingston und Festplatten von Western Digital. Eine Grafikkarte hat das Betriebsystem noch nie gesehen, da ich es bei der Installation mit einem Terminalprogramm über Nullmodemkabel an der seriellen Schnittstelle bedient habe. Verbaut sind alle Komponenten in dem eher billigen Gehäuse "Asgard" vom Hersteller Xigmatek. Beim Netzteil habe ich etwas tiefer in die Tasche gegriffen und ein Huntkey Jumper 300G importiert. Ich könnte den Server komplett passiv kühlen, aber ich habe keinen Grund gesehen, den Lüfter aus dem Netzteil auszubauen. Der Luftstrom, der durch das Netzteil aus dem Gehäuse geführt wird, ist kalt. Der Server steht im Keller in einem Stahlschrank des IVAR Regalsystems von IKEA. Natürlich kann man auch in einen richtigen Serverschrank investieren. Je nach Bauart kann man aber für dessen Anschaffungspreis das Komplette IVAR-Sortiment kaufen. Der IVAR-Schrank ist natürlich nicht ganz staubdicht, aber um Längen besser, als den Server einfach in ein offenes Regal zu stellen. Er hat auch den Vorteil, dass ein kleiner Spalt unter den Ecken des ersten Einlegebodens die Durchführung von Kabeln problemlos möglich macht. Man muss also keine Löcher in den Schrank bohren.

OMV bietet ein aufgeräumtes Webinterface. Als ich den obigen Screenshot gemacht habe, war der Server 129 Tage am Stück gelaufen. Er ist jedoch schon viel länger - seit Anfang 2018 - in Betrieb. Allerdings habe ich das Bedürfnis ihn alle paar Monate nach den Updates neu zu booten, daher nur 129 Tage. Nach einem weiteren Neustart läuft er seit 2018-12-09 mit Linux Kernel 4.18.

Seit der Server läuft, habe ich nichts mehr von ihm bemerkt. Er tut einfach seine Arbeit ohne jeden Fehler. Mittlerweile ist mein Vertrauen in diese Maschine gefestigt und ich kann nur jedem empfehlen, auf den kauf proprietärer NAS-Lösungen zu verzichten. Da OMV auf Debian Linux basiert, habe ich mich sofort auf dem System zurechtgefunden. Insbesondere gefällt es mir, dass ich selbst entscheiden darf wo meine Daten abgespeichert werden und ich alle Festplatten mit LUKS verschlüsseln kann, nicht nur einzelne Verzeichnisse. Im Problemfall hätte ich die Möglichkeit, die Festplatten an jeden anderen Linux-PC anzuschließen und könnte sofort auf alle Daten zugreifen. Bei Synology wüsste ich nicht einmal wo meine Daten überhaupt liegen oder wie sie verschlüsselt werden und irgendwelche proprietären Rettungstools für Windows würden mir im Ernstfall auch nicht weiter helfen.

2018-07-16

Synchronisation und Backup ohne Cloud

Für die Synchronisation meiner Computer verwende ich Syncthing. Das Programm ist einer der Gründe, warum ich OMV einsetze. Es will mir nicht einleuchten, dass weder Synology noch Qnap eine Installationspaket für Syncthing anbieten. Ich habe manchmal den Eindruck, dass große Firmen grundsätzlich feindselig gegen freie Software agieren. Hier bildet der Hersteller Thecus die Ausnahme, auf deren Geräten man in einigen Fällen sogar OMV installieren kann. Wenn ich mir ein NAS kaufen würde, dann ganz sicher ein Thecus. Aber zurück zu Syncthing.

Syncthing kann komplett über ein Webinterface bedient werden, es gibt jedoch auch Programme, die eine Benutzeroberfläche und ein Tray-Icon bieten. Das Hauptprogramm ist für Linux, Mac und Windows gleichermaßen verfügbar. Bei Syncthing ist jedes teilnehmende Gerät gleichberechtigt. Ich benötige deshalb nicht zwingend einen Server. Trotzdem habe ich Syncthing auf meinem Server laufen, denn anders als bei Cloud-Lösungen läuft die Synchronisation via Syncthing nur dann, wenn die zu synchronisierenden Rechner gleichzeitig in Betrieb sind. Da mein Server immer läuft, habe ich ihn in einer sternförmigen Topologie in die Mitte gesetzt. Eine direkte Synchronisation zwischen den Rechnern habe ich nur in wenigen Ausnahmefällen konfiguriert, da ich normalerweise nur einen Computer gleichzeitig nutze.

Die Konfiguration von Syncthing ist sehr einfach, aber nicht idiotensicher. Zumindest muss man lesen können und auch begreifen, was man gelesen hat. So einfach wie eine Dropbox ist es freilich nicht. Hier ist mein Standpunkt, dass EDV einfach nichts für Idioten ist.

Um nun den Kontakt zwischen zwei Syncthing-Instanzen herzustellen, melden sich diese standardmäßig bei einem globalen Discovery-Server, der in Amerika steht. Wenn der Kontakt hergestellt ist, verläuft die direkte Kommunikation über Ports, die standardmäßig via UPNP geöffnet werden. Diese Methoden habe ich aber allesamt deaktiviert. Ich lasse die Geräte alle über ihre lokalen Hostnamen oder festgelegte IP-Adressen auffinden. Um unterwegs auf die Syncthing-Instanz meines Servers zuzugreifen, benötige ich daher einen VPN-Tunnel und einen DynDNS-Dienst. Das ist meiner Ansicht nach die sicherste und zugleich auch einfachste Lösung. Der Nachteil ist, dass die VPN-Verbindung etwas langsamer ist, weil das tatsächlich übertragene Datenvolumen wegen der kryptografischen Verwaltungsdaten wesentlich größer wird. Im Alltag fällt das aber nicht auf. Nur beim Transfer großer Datenmengen macht es sich bemerkbar.

Die dezentrale Speicherung meiner Daten auf mehreren Rechnern schützt mich zwar vor Datenverlust durch defekte Hardware, sie ersetzt jedoch kein Backup. Hierfür verwende ich Rsnapshot auf meinem Server. Täglich um 3:00 Uhr wird auf einer weiteren Festplatte ein gesamtes Abbild aller meiner Daten erstellt. Diese Festplatte ist ebenfalls im selben Gehäuse verbaut, wofür ich derzeit keine Redundanz habe. Wenn also jemand eine Handgranate in meinem Serverschrank detoniert oder mein Haus abbrennt, sind alle meine Backups verloren. Meine aktuellen Daten wären zwar an meinem Arbeitsplatz unversehrt, trotzdem suche ich noch nach einem Standort für einen zweiten OMV-Server, um dort ebenfalls tägliche Backups zu machen.

Das hier beschriebene Szenario klingt für manchen vielleicht kompliziert. Das ist aber nicht der Fall. Die Konfiguration von openmediavault, Syncthing und Rsnapshot gelingt vollständig per Browser im Webinterface und man muss kein Kommandozeilenkönig sein, um das hinzukriegen.

2018-07-16

VPN-Tunnel zum Arbeitsplatz

In meinem Heimnetz benutze ich eine Fritz!Box 7490. Die Router-Firmware ist teilweise proprietär. Das ist eine der wenigen Ausnahmen, die ich in Kauf nehme. Ich sehe keinen einfachen Weg, mal eben schnell meine komplette Telefonanlage mit freier Software zu betreiben. Ich spiele aber mit dem Gedanken, einen geeigneten gebrauchten Router zu kaufen, der mit OpenWRT/LEDE oder einer anderen freien Firmware kompatibel ist. Am Arbeitsplatz stehen mir nur Windows 10 Rechner zur Verfügung, was für mich selbstverständlich keine Option ist. Da private Endgeräte im Schulnetzwerk nicht erlaubt sind, betreibe ich dort eine FRITZ!Box 6820 LTE mit einem congstar HomeSpot-Tarif.

Ich nutze MyFritz!, um beide Fritz!Boxen permanent mit einem VPN-Tunnel zu verbinden. Auf diese Weise können meine Arbeitsplatzrechner ebenfalls auf meinen Server zugreifen. Wenn ich unterwegs bin, kann ich mich ebenfalls in mein VPN reintunneln - sofern ich nicht in einem Land bin, in dem das verboten ist. Für Syncthing ist der VPN-Tunnel nicht unbedingt erforderlich, weil es auch einen öffentlichen Syncthing Discovery-Server gibt, der den Kontakt zwischen verschiedenen Syncthing Clients herstellen kann. Ich glaube, der Server steht in Kanada. Ich ziehe aber die Nutzung des VPN-Tunnels vor. Sollte ich jemals irgendwelche SmartHome-Geräte nutzen, werde ich denen garantiert keinen Internetzugang gewähren, sondern ausschließlich den VPN-Tunnel nutzen.

2018-07-16

Besonderheiten am Arbeitsplatz

Am Arbeitsplatz weiche ich von der Sterntopologie für Syncthing ab. Mein dortiger Arbeitsplatz-PC synchronisiert sich auch mit meinem dienstlichen Laptop. Der Hauptgrund ist, dass ich so mit dem Laptop größere Datenmengen in mein Labor tragen kann, ohne das Datenvolumen meines LTE-Tarifs zu belasten. Den Laptop kann ich auch problemlos einfach mal laufen lassen, ohne dass es jemand bemerkt. Wenn ich meinen Arbeitsplatz-PC laufen lasse, befürchte ich immer, dass eine eifrige Reinigungskraft ihn herunterfährt bzw. einfach den Strom abstellt.

Ich habe jederzeit die Möglichkeit am Arbeitsplatz meine Rechner hochzufahren, um etwa eine Synchronisation durchzuführen. Dazu kann ich vom Web Interface der Fritz!Box ein Magic Packet an den entsprechenden Rechner schicken. Schwieriger ist es, das Betriebsystem zu starten, weil das Passwort für die Festplattenverschlüsselung eingegeben werden muss, bevor überhaupt der SSH-Server Dienst läuft. Es gibt hierfür die Möglichkeit, einen Mini-SSH-Server bereits während des frühen Bootvorgangs zu starten. Vielleicht mache ich das irgendwann mal. Ich habe das Problem anders gelöst, indem ich ein gebrauchten Lantronix KVM over IP Switch gekauft habe.