Heimnetzzentrale für Infos, Texte und Notizen einrichten

Eine Heimnetzzentrale für Notizen, Adressen, technische Infos und oft benötigte Dateien ist eine hervorragende Einrichtung. Im Optimalfall sollte dieser Serverdienst einfach zugänglich und hardwaretechnisch anspruchslos sein.

Es sind Kriterien der Textmengen, der Datenschutz-Sensibilität und der Anzahl der Clientgeräte, die darüber entscheiden, ob man für seine Infos einen Netzwerkdienst braucht. Wer ausschließlich an einem PC arbeitet, kann seine Notizen dort auch lokal ablegen. Für unsensible Einkaufsnotizen genügen sicher auch die „Google Notizen“. Wenn aber Adressen, Kennwörter, technische Infos, Scripts, Webrecherchen von mehreren Personen auf mehreren Geräten zentral, bequem und sicher zugänglich sein sollen, ist das ein Fall für eine Infozentrale. Dies steht im Zentrum dieses Artikels, der aber zunächst auch andere populäre Lösungen streift.

Lokale Notizen und Cloudnotizen

Komfortable Notizenprogramme gibt es in Menge für jedes System. Wenn es unter Linux eine rein lokale Rechnerlösung sein darf, ist Tomboy (Paketname „tomboy“) erste Wahl: Das Tool organisiert Einzelnotizen in Notizbüchern, bietet reichhaltige Textformatierungen und eine schnelle Suchfunktion. So wirklich zeitgemäß sind aber lokale Lösungen wie Tomboy oder „Klebezettel“ nicht mehr. Die populärsten Notizsammler sind plattformübergreifend und nutzen einen externen Cloudspeicher – so etwa Evernote, Google Keep oder Microsofts One Note . Diese Text- und Infosammler sind ausgereift und elegant (die „Google-Notizen“ eher simpel), haben aber zwei Nachteile: Alle Infos lagern auf amerikanischen Servern. Außerdem sind sie auf die persönliche Infoablage einer Person mit einem Zugangskonto ausgerichtet, nicht primär für Personengruppen.

Wer es komplexer haben will, landet schnell bei Kollaborationssoftware wie Google Docs, Nextcloud oder Feng Office. Diese Lösungen ermöglichen natürlich auch einfache Infosammlungen, schießen aber mit zahlreichen weiteren Funktionen und einem zum Teil beträchtlichen Einrichtungsaufwand (Nextcloud, Feng Office) weit übers Ziel hinaus.

Empfehlenswerte Wiki-Lösungen

Wikis sind eine ideale Plattform, um umfangreiche Textsammlungen zu sammeln und zu organisieren. Selbst bei der Einschränkung auf kostenlose Angebote ist die Anzahl solcher Wiki-Lösungen mittlerweile unübersichtlich, wie die Wikipedia-Seite . Die populärsten Lösungen basieren auf PHP, und das gilt auch für die beiden hier empfohlenen Kandidaten Mediawiki und Dokuwiki . Beide bieten weit mehr als nur Textsammlungen, wobei die meisten Audio-, Video- und Bildfunktionen durch zahlreiche externe Plug-ins gelöst werden. Das Mediawiki ist die angestammte Basis der Wikipedia und kann daher exzellente Pflege und Zukunftssicherheit garantieren. Das Dokuwiki steht dem aber kaum nach und hat wesentliche Vorteile für Heimanwender, da es auf mehreren Ebenen einfacher ist als das Mediawiki:

Das Dokuwiki benötigt keine Datenbank und speichert alles in einfachen Textdateien.

Die Trennung der Daten von der Software und ist rigoros, sodass die Sicherung oder Synchronisierung des kompletten Datenbestands des Unterverzeichnisses „data“ (typischerweise „/var/www/dokuwiki/data/“) sehr einfach wird.

Die Struktur in gliedernde Namensräume (auf Dateiebene Verzeichnisse) und Seiten (auf Dateiebene TXT-Dateien) ist simpel.

Auszeichnungssprache und Editor sind relativ einfach. Wysiwyg bietet der Standardeditor nicht, kann aber über einen Plug-in-Editor nachgerüstet werden.

Für Nutzer, die auch Windows verwenden, gibt es ein absolut einfaches Gesamtpaket mit integriertem Apache.

(Wiki-)Freigabe im Internet

Die Anleitungen in diesem Kasten beantworten die Frage, wie Sie heimische Serverdienste wie etwa ein Wiki für den Fernzugriff aus dem Internet öffnen. Sie gelten analog auch für andere Serverdienste, die in diesem Special vorgestellt werden. Generell gibt es für Webfreigaben zwei Gegenanzeigen: Erstens bietet jeder nach außen geöffnete Port (und ohne solchen geht es nicht) eine Angriffsfläche. Hier müssen strikte Zugangsregeln und sichere Passwörter benutzt werden. Zweitens ist der Datendurchsatz in der Regel bescheiden, weil alles, was über das Internet als Download angefordert wird, am heimischen Router als Upload verschickt wird – und die Uploadbandbreite typischer DSL-Verträge liegt selten über 1–2 MBit/s.

Technisch entstehen drei Aufgaben:

1. Der Router benötigt eine Portfreigabe. Welchen Port (1 bis 65535) Sie nach außen öffnen, ist unerheblich – Sie müssen sich die Zahl nur merken. Die Portfreigabe geschieht in der Fritzbox unter „Internet -> Freigaben -> Portfreigaben“, bei anderen Routern unter „Portforwarding“, „Portmapping“ oder „Virtual Server“. Das Prinzip ist überall gleich: Sie tragen neben „von Port“ und „bis Port“ eine frei gewählte Portnummer ein, die nach außen geöffnet wird. Unter „an Port“ müssen Sie genau den Port angeben, mit dem der Serverdienst arbeitet. Das kann Port 22 für SSH, Port 80 für einen Webserver wie das Dokuwiki oder Port 25565 für einen Minecraft-Server sein.

2. Der Heimserver benötigt eine feste lokale IP, damit der Router die Anfrage aus dem Web an das richtige Gerät schickt. Die Fritzbox vergibt feste IPs unter „Heimnetz -> Heimnetzübersicht -> Netzwerkverbindungen“ mit der Option „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“.

3. Für den Fernzugriff auf den heimischen Server benötigen Sie die öffentliche WAN-IP. Der Fernzugriff auf ein Heim-Wiki sieht dann im entfernten Browser so aus
http://[WAN-IP]:[Freigegebener Port]/dokuwiki/
und könnte in einem konkreten Beispiel so lauten:
http://178.27.67.34:80/dokuwiki/
Dabei stellt sich jedoch das Problem, dass Sie die WAN-IP Ihres Heimnetzes nicht ermitteln können, wenn Sie sich außerhalb Ihres Netzwerks befinden. Dafür gibt es zwei Lösungen:

3a. Sie registrieren eine Pseudodomain etwa bei www.noip.com, www.dlinkddns.com (für D-Link-Router) oder über das Myfritz-Konto (für Fritzbox-Router). Kontodaten und Pseudohost geben Sie dann in die dafür vorgesehenen Eingabefelder des Routers ein. Bei der Fritzbox finden Sie diese unter „Internet -> Freigaben -> Dynamic DNS“. Der Router wird ab so - fort bei jeder Neueinwahl die WAN-IP sofort an diesen Dienst weitergeben. Folglich bringt Sie die Angabe der Pseudodomain in Ihr Heimnetz.

3b. Sie sorgen selbst dafür, dass die aktuelle WAN-IP Ihres Netzwerks stets im Internet hinterlegt ist. Dafür ist im Prinzip nur eine kleine Textdatei auf einem Cloud- oder Webspeicher erforderlich. Eine genauere Anleitung würde jedoch den Rahmen dieses kleinen Exkurses sprengen.

Vorbereitungen für das Dokuwiki

Ideales Gerät für ein Wiki ist ein ständig laufender Server von der Sorte Raspberry & Co. Im Falle des Dokuwiki können Raspberry & Co. diese zusätzliche Aufgabe mühelos neben sonstigen Serverdiensten übernehmen, denn das Dokuwiki stellt geringe Ansprüche an die Hardware. Voraussetzung ist jedoch ein laufender Apache-Server mit PHP. Sofern dieser noch nicht vorliegt, installieren Sie diesen unter Raspbian, Debian oder Ubuntu mit diesem Kommando:

sudo apt install apache2 php5 libapache2-mod-php5 php5-curl

Das nur gut drei MB große Installationspaket von Dokuwiki holen Sie mit wget ab.

wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz

Unter den Debian/Raspbian-Distributionen liegt das Standardverzeichnis für Apache-Webdienste unter „/var/www/“, bei Ubuntu unter „/var/www/html“. Entpacken Sie mit

sudo tar xzvf dokuwiki-stable.tgz -C /var/www/[html/]

das Archiv an die richtige Stelle. Das dort entstandene Verzeichnis mit Versionsangabe im Namen benennen Sie mit

sudo mv /var/www/[html/]dokuwiki* /var/www/[html/]dokuwiki

nach „dokuwiki“ um und setzen die Zugriffsrechte für Apache:

sudo chown -R www-data:www-data /var/www/[html/]dokuwiki

Ab sofort ist das Wiki betriebsbereit und die weitere Einrichtung erfolgt im Browser mit der Adresse „http://[IP-Adresse]/dokuwiki/install.php?l=de“, wobei als „[IP-Adresse]“ diejenige des Serverrechners einzugeben ist. Beim Start des Install-Scripts mit Firefox kommt es vor, dass der Browser den Script-Inhalt anzeigt, anstatt das Script zu starten: Verwenden Sie in diesem Fall einfach einen beliebigen anderen Browser.

Die Grundkonfiguration erfordert nur wenige Schritte: Notwendig sind das Einrichten eines Administratorkontos und die Vergabe eines Wiki-Namens. Weitere Einstellungen wie das Festlegen der Startseite oder der Sprache finden Sie jederzeit auch später unter „Admin -> Konfiguration“.

Dokuwiki: Seiten anlegen und organisieren

Eine neue Wiki-Seite entsteht dadurch, dass Sie in der Browseradresse hinter „[IP]/dokuwiki/doku.php?id=“ einen bisher nicht benutzten Seitennamen eintragen und dann auf „Seite anlegen“ klicken. Der Editor erlaubt Auszeichnungen wie fett oder kursiv, Überschriftenebenen und das Einfügen von Bildern und Dateien. Für das Einfügen von internen Links innerhalb des Wikis und externen URL gibt es Schaltflächen, welche die Eingabe deutlich vereinfachen. Der Editor entspricht weitgehend demjenigen anderer Wikis oder Blogeditoren wie Wordpress. Einige Eigenheiten sollte man aber kennen:

Beachten Sie, dass ein Return im Editor keinen Zeilenumbruch auf der Ergebnisseite bewirkt. Sie müssen im Editor mit zwei Returns eine sichtbare Leerzeile erzeugen oder das Zeilenende durch Doppelbackslash (\\) erzwingen. Bei Listen aller Art (Telefonliste, Adressen, Scripts) wäre es nicht zumutbar, die notwendigen Zeilenumbrüche manuell einzutragen. Formatieren Sie in solchen Fällen den gesamten Text mit dem Button „Listenpunkt“.

Ohne weitere Gliederung landen alle Seiten auf oberster Ebene, was selbst bei kleinen Sammlungen schnell unübersichtlich wird. Um hierarchische Ebenen zu organisieren, gibt es „Namensräume“ (Namespaces). Um einen Namensraum anzulegen, verwenden Sie den Befehl

[IP-Adresse]/dokuwiki/doku.php?id=[Namensraum:][Seitenname]

oder als konkretes Beispiel „[IP-Adresse]/dokuwiki/doku.php?id=Anna:Adressen“. Die neue Wiki-Seite „Adressen“ wird dann unter der neuen Ebene „Anna“ eingerichtet.

Da Namensräume auf Dateiebene durch Verzeichnisse, Wiki-Seiten durch TXT-Dateien repräsentiert werden, ist es für den Basisaufbau oder bei Umbauten des Wikis oft einfacher, die Grundstruktur unter „/var/www/[html/]dokuwiki/data/pages“ auf Dateiebene zu unternehmen. Die Wiki-Ansicht im Browser folgt solchen Änderungen sofort oder spätestens nach dem Seitenrefresh mit Taste F5.

Für das Löschen oder Umbenennen von Seiten gibt es keine Option. Zum Löschen öffnen Sie die Wikiseite und gehen auf „Diese Seite bearbeiten“. Nach Löschen des kompletten Inhalts und „Speichern“ ist die Seite entfernt. Namensräume verschwinden automatisch, wenn alle Seiten unterhalb des Namensraums gelöscht werden. Zum Umbenennen von Seiten kopieren Sie den kompletten Inhalt in eine neue Seite mit dem gewünschten Namen und löschen dann die ursprüngliche Seite auf die beschriebene Weise.

Dokuwiki: Anpassung und Erweiterungen

Über „Admin -> Konfiguration“ erreichen Sie die zahlreichen Basiseinstellungen. Ganz oben unter „Basis“ definieren Sie die Designvorlage. Das ist beim Dokuwiki nicht nur eine optische Entscheidung, sondern bestimmt auch, ob und wo die Wiki-Übersicht, die Editieraktionen und die Konfiguration erreichbar sind. Beachten Sie, dass jedes Design im allerletzten Punkt „Template“ der Konfiguration noch diverse Detailanpassungen vorsieht: Das betrifft nicht nur die Farben, sondern auch die gewünschte Position der Elemente.

Über „Admin -> Erweiterungen verwalten -> Suchen und Installieren“ ist das Dokuwiki erweiterbar. Es gibt zahlreiche funktionale Erweiterungen und Templates. Wer in den Plug-ins stöbern will, sollte zunächst die Seite www.dokuwiki.org/extensions aufsuchen und danach die gewünschte Erweiterung über „Suchen und Installieren“ in der Konfigurationsoberfläche einrichten. Ein auf diese Weise heruntergeladenes Template können Sie dann unter „Admin -> Konfiguration -> Designvorlage“ auswählen und dann ganz unten auf „Speichern“ gehen. In der Regel benötigt der Browser mit Taste F5 einen Seitenrefresh, um das neue Theme anzuzeigen.

Dokuwiki: Portabel für Windows

Sowohl das Dokuwiki als auch das Mediawiki gibt es auch als portables Windows-Paket, jedoch ist hier das Dokuwiki erneut ungleich einfacher einzurichten. Diese Option ist nützlich für ein gemischtes Heimnetz, um auf einfachste Weise ein vollständiges Windows-Backup vorzuhalten. Den Download finden Sie unter dokuwiki download und hier ganz nach unten als „MicroApache“. Dieses Paket enthält das Dokuwiki komplett mit einem minimalen Apache-Webserver – einfach entpacken und im entstandenen Ordner die Batchdatei „run.cmd“ aufrufen.

Das Wiki lädt automatisch im Standardbrowser am lokalen Rechner, andere Rechner erreichen es über die Adresse „http://[IP-Adresse]:8800/doku.php“.

Recoll: Infosuche im Netzwerk

Wikis eignen sich für den Aufbau zentraler Texte und leisten dabei unter der Haube automatisch eine Indexierung für schnelle Textsuche (Mediawiki, Dokuwiki). Eine spezialisierte Suchsyntax gibt es aber nicht und außerdem müssen alle Texte neu eingepflegt werden. Die Rolle eines zentralen Suchservers für Texthalden aller Art können solche Wikis daher nicht erfüllen.

Die empfohlene Software für diese Aufgabe ist das Programm Recoll: Es lässt sich nicht nur am lokalen Rechner, sondern über eine Weboberfläche im gesamten Netzwerk nutzen. Außerdem verarbeitet es alle relevanten Dateiformate. Recoll ist überall in den Standard-Paketquellen (sudo apt install recoll), jedoch oft veraltet. Wer die aktuelle Version nutzen will, kann ein externes PPA einbinden:

sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
sudo apt update
sudo apt install recoll

Da es hier ausschließlich um den Recoll-Server im Netzwerk geht, überspringen wir hier alle Hinweise zur Erstellung des Index, die unter „Einstellungen -> Index-Einstellungen“ gut strukturiert und weitgehend selbsterklärend ist.

Als Webserver kann Recoll sowohl unterhalb unter Apache laufen als auch „stand-alone“. Die nachfolgende Kurzanleitung beschreibt die einfachere Stand-alone-Variante: Zuerst laden Sie über https://github.com/koniu/recoll-webui die passende Version der Weboberfläche herunter. Suchen Sie dort weiter unten nach „Download“. Hier finden Sie zwei Varianten – eine für Recoll 1.18.2 und neuer, ein zweite für alle ältere Recoll-Versionen (Ihre Recoll-Version verrät der Terminalbefehl recoll - -version). Erstellen Sie etwa im Home-Verzeichnis einen Ordner „recoll“ und entpacken Sie dort das heruntergeladene ZIP-Archiv. Der Ordner enthält eine Reihe von Python-Scripts, unter anderem „webui-standalone.py“ für den Miniserver. Damit dieses funktioniert, benötigen Sie noch folgendes Paket:

sudo apt install python-recoll

Danach funktioniert der Recoll-Server, sobald Sie das genannte Script mit

python webui-standalone.py

starten. Allerdings läuft die Recoll-Suchmaske erst mal nur mit der Adresse „http://127.0.0.1:8080“ im lokalen Browser. Damit es auf jedem Browser im Netzwerk funktioniert, müssen Sie eine Zeile im Python-Script modifizieren: Statt

default='127.0.0.1'

tragen Sie

default='[IP-Adresse des Servers]'

ein, also beispielsweise

default='192.168.178.12'

Der Recoll-Server sollte (wie jeder Server) eine feste IP-Adresse beziehen, damit die hier eingetragene IP dauerhaft gilt. Bei gestartetem Stand-alone-Server erreicht nun jeder Browser die Recoll-Weboberfläche. Die entspricht dem lokalen Suchdialog und erlaubt alle Filter und Operatoren. Wenn der Recoll-Server immer erreichbar sein soll, sollte der Aufruf des Scripts „webui-standalone.py“ als Autostart-Programm oder in die Crontab eingetragen werden.