Der Raspberry Pi als 3G-Hotspot

Router

Der RasPi soll als Router und Firewall dienen, also Datenpakete weiter ins Internet schicken und gleichzeitig das interne Netz vor Angriffen von außen schützen. Das erfordert noch ein paar weitere Handgriffe: Fügen Sie erst einmal der Konfigurationsdatei /etc/sysctl.conf die Zeile net.ipv4.ip_forward=1 hinzu. Diese Option sorgt für das Weiterleiten von Netzwerkpaketen auf Kernel-Ebene und wird nach einem Neustart aktiv.

Auf der Seite der Firewall müssen Sie einmalig die Befehle aus Listing 6 ausführen. Die letzte Zeile sichert die Konfiguration in der Datei /etc/iptables.3ghotspot. Das System lädt diese beim Einrichten der Netzwerkschnittstelle entsprechend Listing 4, Zeile 8 automatisch. Mit Seiten wie dem Heise-Netzwerkcheck [4] prüfen Sie, ob das RasPi-System wirklich keine Ports nach außen öffnet – so gehen Sie sicher, dass das System möglichst wenig Angriffsfläche bietet. Weitergehende Informationen zum Thema gibt es zum Beispiel im Debian-Firewall-Wiki [5].

Listing 6

 

$ sudo iptables -A FORWARD -i ppp0 -o br0 -m state --state RELATED,ESTABLISHED -j ACCEPT
$ sudo iptables -A FORWARD -i br0 -o ppp0 -j ACCEPT
$ sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
$ sudo iptables-save > /etc/iptables.3ghotspot

Intern

Nachdem die Verbindung nach außen nun steht, kommt das interne Netz an die Reihe. Der RasPi spannt als Access Point und Router ein eigenes Netz auf. Wie eingangs beschrieben, schalten wir WLAN und Ethernet zu einer Bridge zusammen. Das erledigen die Zeilen 10 bis 17 aus Listing 4 – hier vergeben Sie auch die IP-Adresse des Routers und des privaten Netzwerks (im Beispiel 192.168.100.0/24). Mehr gibt es nicht zu tun – das Paket bridge-utils steht in Listing 1 nur zur Dokumentation, unter Raspbian ist es im Gegensatz zu Bananian für den Banana Pi [6] (sollten Sie die etwas leistungsfähigeren RasPi-Alternativen bevorzugen) schon installiert.

Für das Aufspannen eines WLAN-Access-Points benötigt das System die Access-Point-Software aus dem Paket hostapd. Hier lauert eine Hürde in der Hardware, denn nicht jeder WLAN-Chip unterstützt den Access-Point-Modus: Bevor Sie einen USB-WLAN-Dongle anschaffen, sollten Sie daher mit einer kurzen Internetrecherche prüfen, ob das gewünschte Exemplar die Funktionen unterstützt. Manche Chipsätze bieten zudem zwar den AP-Modus an, aber er funktioniert nicht mit dem Standard-Hostapd von Raspbian. Im Zweifelsfall hilft simples Ausprobieren mittels sudo iw list: Erscheint hier eine Fehlermeldung wie nl802ll not found, dann unterstützt der aktuelle Hostapd den Chip nicht. Wie Sie WLAN-Chips auf Basis des Realtek RTL8192 zum Laufen bringen, beschreibt der Kasten "WLAN-AP mit Realtek-Chip RTL8192".

WLAN-AP mit Realtek-Chip RTL8192

Der Realtek-Chip RTL8192 und seine Varianten kommen in vielen kostengünstigen WLAN-Sticks vor, so zum Beispiel auch in dem bei RasPi-Nutzern zu Recht beliebten Stick Edimax EW-7811UN. Er baut sehr kompakt, kostet wenig und bietet doch guten Empfang. Den Access-Point-Modus beherrscht der Chip, allerdings arbeitet er nicht mit der aktuellen Version des von Raspbian ausgelieferten Hostapd zusammen.

Der Workaround gestaltet sich unkompliziert, denn Realtek stellt die Quellen für Treiber und Hostapd bereit [14]. Ein Beitrag im Forum des Banana-Pi-Herstellers LeMaker [15] beschreibt im Detail die notwendigen Schritte für den Selbstbau der beiden Programme hostapd und hostapd_cli. Damit der Hostapd-Daemon beim Start das alternative Binary auch findet, müssen Sie den Pfad zur Datei in der Startdatei /etc/init.d/hostapd anpassen. Zudem verweisen Sie in der Konfigurationsdatei statt auf den generischen Treiber nl80211 auf den manuell installierten Treiber rtl871xdrv (Listing 7, Zeile 6).

Die Konfiguration des Hostapd erfolgt in einer eigenen Datei, deren Pfad und Namen Sie frei wählen dürfen, etwa /etc/hostapd.conf. Den Inhalt übernehmen Sie aus Listing 7. Damit der Dienst die Konfigurationsdatei findet, tragen Sie diese in der /etc/default/hostapd ein (Variable DAEMON_CONF). Den Kanal in Zeile 7 wählen Sie am besten nach lokalen Gegebenheiten aus – eine Wi-Fi-Scanner-App wie etwa Jaws [7] leistet hier gute Dienste. Optional schalten Sie in Zeile 11 mit ieee80211n=1 den 80211n-Modus ein und erhöhen in Kombination mit geeigneten Geräten die maximal möglichen Transferraten – ab und an führt dies jedoch zu instabileren Verbindungen. Das zum Aufbau der Verbindung nötige WLAN-Passwort steht in Zeile 16. Bei den Verschlüsselungsmethoden in den Zeilen 18 und*19 lauern weitere Fallstricke, insbesondere mit einfacheren Geräten wie WLAN-Druckern. Bei Problemen hilft ein Blick in die Dokumentation und eine Suche im Internet.

Ob alles klappt, zeigt ein Neustart des Hostapd mit sudo service hostapd restart und ein Blick auf die Liste der in der Nähe aktiven WLANs. Prüfen Sie dies zum Beispiel mit Ihrem Smartphone. Damit aber tatsächlich eine Verbindung zustande kommt, benötigen Sie noch einen DHCP- und DNS-Server. Beides erledigt der Dienst Dnsmasq, den Sie eingangs schon installiert haben.

Listing 7

 

ssid=rpi-hotspot
ctrl_interface=/var/run/hostapd
interface=wlan0
bridge=br0
driver=nl80211
channel=11
beacon_int=100
hw_mode=g
ieee80211n=0
wmm_enabled=1
ht_capab=[SHORT-GI-20][SHORT-GI-40][HT40-]
wpa=2
wpa_passphrase=Bitte+unbedingt-ändern!
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP TKIP
max_num_sta=8
wpa_group_rekey=86400
ignore_broadcast_ssid=0

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 8 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Aktuelle Ausgabe

12/2019
RasPi-Alternativen

Diese Ausgabe als PDF kaufen

Preis € 9,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Grußbotschaften

    Mit Sonic Pi zaubern Sie komplexe Sounds, die Sie bei Bedarf sogar noch während des Abspielens modifizieren.

  • Das Runde und das Eckige

    Mit dem MCP4725 ergänzen Sie einen RasPi um einem D/A-Wandler, der bei Bedarf noch weitere Funktionen erfüllt.

  • Alles unter Kontrolle

    Schon ein einfaches Mikrocontrollerboard wie das CY8CKIT-049-42xx bietet erstaunlich viele Möglichkeiten beim Ansteuern von Hardware.

  • Viele Kerne

    Das Spresense Development Board von Sony lässt sich mit der Arduino IDE programmieren und bringt auch ein eigenes Entwickler-SDK mit.

  • Exotische Früchte

    Der aus China stammende Orange Pi positioniert sich mit einem guten Preis und interessanten Features gegen die RasPi-Truppe. Kann er sich auch behaupten?

  • Flexibler Surfer

    Mit dem neuen RasPi 4 setzen Sie einen öffentlichen Webkiosk schnell und kostengünstig auf.

  • Auskunftsfreudig

    Viele Devices, so auch der E.ON-Aura-Controller, verwenden eine Schnittstelle namens REST, um Zustandsdaten zu übermitteln. Mit ein wenig Bastelei lesen Sie diese auch über Ihr Smartphone aus.

  • Doppelt gemessen

    Mit wenig Aufwand und einem Pi Zero realisieren Sie einen mobilen Zweikanal-Spannungsprüfer.

  • Elegant zusammengeführt

    Tizonia streamt Musik von Online-Quellen und lokalen Sammlungen. Die schlanke Architektur macht den Player zur guten Wahl für den Einsatz auf dem RasPi.

  • Kommunikativ

    Nicht jeder traut sich zu, sein eigenes Smartphone zu bauen. Allerdings kann jeder Linux-Nutzer den Raspberry Pi im Handumdrehen zu einem VoIP-Telefon aufrüsten.