Während die Folien der Präsentation durchlaufen, liefert ein kleiner Dokumentenserver auf Basis des GL-AR300M-ext zusätzliche Informationen aus.
Wer etwas zu sagen hat, möchte seinen Zuhörern meist zusätzlich etwas an die Hand geben. Ein Verweis auf eine Webseite mag diesen Zweck erfüllen, ihm fehlt aber der Charme des Besonderen. Wie wäre es mit einem kleinen Server für Dokumente, der nur für Teilnehmer eines Vortrags zu erreichen ist? Mit einem GL-inet kein Problem.
Der kleine Router der Firma GL Technologies [1] war an dieser Stelle bereits Thema [2]. Abbildung 1 zeigt den Router, von einer Powerbank gespeist. Es handelt sich um das Modell GL-AR300M-ext, das bei 5 Volt einen Strom von knapp 300 mA zieht. Nach dem Einschalten signalisiert die grüne LED die Betriebsbereitschaft. Nach einer gefühlten Ewigkeit von ungefähr einer Minute beginnt die rote LED zu blinken, und der Router spannt ein WLAN auf.

Abbildung 1: Der Router zieht so wenig Strom, dass eine Powerbank ausreicht, um ihn zu versorgen. Das macht die Kombination tatsächlich mobil.
Der Router meldet sich beim ersten Aufruf abhängig vom Modell mit einem Namen, dessen Prefix aus GL- besteht, sowie einer angehängten Kombination aus Ziffern und Buchstaben. Die IP-Adresse und das Kennwort sind auf der Rückseite des Geräts aufgedruckt.
Nach dem Einbuchen ins WLAN und der Eingabe der IP-Adresse im Browser öffnet sich die Konfiguration. Hier legen Sie Sprache und Zeitzone fest, außerdem geben Sie an dieser Stelle das Kennwort für die Seite mit der Konfiguration ein.
Abbildung 2 zeigt die Maske Wireless Settings, über die Sie den WLAN-Zugang regeln. Neben der Wahl der SSID, hier NTW, ersetzen Sie an dieser Stelle das Standardkennwort durch ein neues Passwort.
Über Advanced Settings oben rechts öffnen Sie das Fenster zu LuCI, dem Menü des offenen Betriebssystems OpenWRT. Hinter den Menüs system / administration versteckt sich ein weiteres Feld für die Eingabe eines Kennworts. Darüber kontrollieren Sie den Zugriff über SSH. Ändern Sie nichts, ist das Kennwort identisch mit dem für die Konfiguration.
Des Weiteren verbirgt sich hinter dem Menü New Connection die Option, den Router als Repeater zu betreiben. Gelingt die Verbindung zu einem bereits bestehenden WLAN, leitet der Router Anfragen weiter ins Internet.
Speicherausbau
Die Dateien der Dokumente liegen üblicherweise auf einem externen Speicher. Einige Modelle der Serie verfügen über einen Slot für eine SD-Speicherkarte. Um an diesen zu gelangen, ist es aber notwendig, das Gerät zu öffnen. Einfacher ist es, das Speichermedium über den USB-Anschluss zu koppeln.
Den netzgebundenen Speicher (englisch: Network Attached Storage, kurz NAS) schalten Sie in der Konfiguration über den Reiter Share frei (Abbildung 3). Nach Setzen der Häkchen und Speichern über Apply starten Sie den Router neu, um die Änderungen zu übernehmen.

Abbildung 3: Möchten Sie Dateien über den Mini-Router verteilen, nutzen Sie dazu etwa einen USB-Stick am eingebauten Port des Geräts und verwandeln dies so in ein kleines NAS.
Sie sprechen den Speicher über das SMB-Protokoll an. Dateimanager unter Linux beherrschen es ebenso wie die unter Windows oder iOS. Unter Android hilft etwa die App Total Commander mit dem Plugin “LAN” weiter. Die Eingabe von Protokoll sowie IP-Adresse, also im Beispiel smb://192.168.8.1, öffnet den Pfad zum Speichermedium (Abbildung 4).
Die Kür
Für die meisten Fälle reichen die Einstellungen. Wenn Sie auf dem Router jedoch Dokumente speichern möchten, um diese während eines Vortrags anzubieten, ist der Zugriff über Samba zu kompliziert. Einen Webbrowser schafft dagegen jeder. Aber dieser versteht kein Samba. Und nicht jeder ist in der Lage, den Browser so zu konfigurieren, dass er das richtige Hilfsprogramm aufruft.
Stattdessen passen Sie den Webserver des Routers an. Um nur geringfügig zu ändern und die Änderungen unter Umständen wieder rückgängig machen zu können, bietet es sich an, statische Webseiten zu nutzen, also keine Installation von PHP und keine angepassten Lua-Skripte.
Der Werkzeugkasten beschränkt sich auf wenige Befehle: SSH gewährt den Zugriff auf den Router über die Kommandozeile. Mit SCP übertragen Sie die Dateien. Opkg dient als Programm zum Verwalten von Paketen unter OpenWRT.
Anpassungen
Der Webserver meldet sich mit der Übersicht über die Konfiguration ähnlich wie in Abbildung 2. Möchten Sie stattdessen eine eigene Webseite starten, benennen Sie im ersten Schritt die Standardseite des Routers um (Listing 1). Zeile 1 gewährt Zugang zum Server. Zeile 2 gibt der Datei /www/index.html einen neuen Namen, statt sie zu löschen.
Listing 1
$ ssh root@192.168.8.1 router:~# mv /www/index.html /www/indexa.html router:~# exit $ scp index.html root@192.168.8.1:/www/index.html router:~# ln -s /mnt/sda1/ /www router:~# exit
Listing 2 ist ein Vorschlag, wie die neue Startseite index.html aussehen könnte. Der Befehl scp, Zeile 4 in Listing 1, kopiert sie aus dem aktuellen Verzeichnis des Rechners auf den Router.
Listing 2
<html>
<head>
<title>Willkommen</title>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta http-equiv="refresh" content="3; URL=sda1/index.html">
</head>
<body>
<h1>Willkommen auf dem Dokumentenserver von GLI</h1>
Hier geht es zum <a href="sda1/index.html">sda1-Stick</a>.
</body>
</html>
Der Router bindet einen USB-Stick automatisch als /mnt/sda1/ ein. Zeile 6 in Listing 1 setzt einen symbolischen Link in den Pfad des Webservers. Das berechtigt ihn, diese Dateien anzuzeigen. Andernfalls würde der Link in der HTML-Datei in Listing 2 nicht funktionieren.
Zeile 5 in der HTML-Datei leitet die Seite automatisch nach drei Sekunden weiter. Möchten Sie, dass dies direkt geschieht, ersetzen Sie die Ziffer 3 durch eine Null. Oder Sie löschen die Zeile, wenn nur ein manueller Zugriff auf die weitere Seite gewünscht ist.
HTML-Hilfestellungen
Auf dem Verzeichnis des USB-Sticks angekommen, ist der Webserver zunächst ratlos. Ihm fehlt der Name der Datei, die er für dieses Verzeichnis anzeigen soll. Abhilfe schafft die Konfiguration, sie legt fest, wie er mit unvollständigen Aufrufen umgeht.
Die Konfigurationsdatei des Webservers Lighttpd finden Sie in /etc/lighttpd/lighttpd.conf. Hier haben die Entwickler bereits konfiguriert, dass der Dienst bei der Fehlermeldung 404 – Datei existiert nicht – automatisch auf die Konfigurationsseite des Routers weiterleitet.
Sie legt ebenfalls fest, dass er nach der Datei index.html sucht, wenn Sie nur das Verzeichnis angeben. Bei einem Dokumentenserver ist es wünschenswert, bei fehlender Index-Datei keinen Fehlerbericht auszugeben, sondern den Inhalt des Verzeichnisses.
Listing 3
opkg update opkg install nano nano /etc/lighttpd/lighttpd.conf /etc/init.d/lighttpd restart
Listing 3 erläutert die Schritte, die Sie jeweils auf dem Router erledigen. Zeile 2 installiert den Texteditor Nano. Zeile 3 öffnet die Konfigurationsdatei, die Sie um die Zeile server.dir-listing = "enable" erweitern. Über [Strg]+[O] und [Strg]+[X] speichern Sie die Änderungen. Anschließend starten Sie den Webserver neu. Abbildung 5 zeigt die vom Server automatisch generierte Übersicht.

Abbildung 5: Richtig konfiguriert zeigt Lighttpd die Dateien an, die der Server in einem Verzeichnis findet.
Es geht aber noch etwas schicker: Der untere Teil von Abbildung 6 zeigt eine statisch erzeugte Index-Datei. Den Kern dafür bildet das Programm Tree [3].

Abbildung 6: Neben der Einstiegsseite (oben) lohnt es sich, die Ansicht mit den verlinkten Dateien auf dem USB-Stick noch etwas aufzupeppen. Dabei hilft das Programm Tree.
Es beginnt den Scan im aktuellen Verzeichnis (-H "."), listet bis in eine Tiefe von 4 (-L 4), unterdrückt Ausgaben bezüglich des Status (--noreport), ignoriert bestimmte Dateien (-I "index.html") und leere Verzeichnisse (--prune), gibt die Dateigröße aus (-h), vergibt einen Titel (-T "Verzeichnis") und schreibt alles in eine Datei (> index.html) (Listing 4).
Listing 4
$ tree -H '.' -L 4 --noreport --charset utf-8 -I "index.html" -h --prune -T "Verzeichnis" > index.html
Keiner möchte gerne IP-Nummern eingeben. Hier hilft die Host-Datei, der Vorläufer des DNS. Dazu rufen Sie den Editor Nano auf dem RasPi auf und fügen die Zeilen aus Listing 5 in die Textdatei ein, in der Regel unterhalb des Ausdrucks 127.0.0.1 localhost, mit dem die Datei üblicherweise vorbelegt ist.
Listing 5
192.168.8.1 ntw 192.168.8.1 ntw.ntw
Die Zeile 2 ist ein Ausweg speziell für Handys. Dort interpretiert der Browser Ausdrücke ohne Punkt als Suchanfragen, die Eingabe von ntw.ntw leitet er aber an den Router weiter, der sie in die IP-Adresse 192.168.8.1 übersetzt.
Fazit
Für Vorträge oder Präsentationen ist es eine nette Dreingabe, wenn die Zuhörer exklusiven Zugriff auf begleitende Informationen über ein lokales WLAN haben. Wenige Einstellungen genügen, um aus dem Mini-Router GL-inet einen Server für Dokumente zu machen.
Dank seiner offenen Struktur verwandelt sich das kleine NAS, das Sie sonst über Samba ansprechen, in einen webbasierten Dateiserver, der den Inhalt eines USB-Sticks veröffentlicht. Ein RasPi wäre zwar zu viel mehr in der Lage, würde aber mehr Arbeit erfordern.
Infos
- GL Technologies: https://www.gl-inet.com
- GL-inet: (siehe RPG 01-02/2018 http://www.raspberry-pi-geek.de/article/info/39962)
- Tree: http://mama.indstate.edu/users/ice/tree/tree.1.html






