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

04/2019
TV & Multimedia

Diese Ausgabe als PDF kaufen

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

Stellenmarkt

Neuigkeiten

  • Finger weg

    Ein Temperatursensor verrät, ob Sie einen Gegenstand gefahrlos berühren dürfen. Beim Messen brauchen Sie dabei noch nicht einmal Kontakt zum Objekt.

  • Aus einer Hand

    Um einen Mikrocontroller zu programmieren, genügt ein Raspberry Pi. Wir zeigen, was Sie dazu noch benötigen.

  • Im Gleichtakt

    Synchronisierte Live-Loops und selbst erstellte Funktionen helfen dabei, Sonic Pi wie ein Live-Instrument zu spielen.

  • Mach mal

    Das Ftduino-Modul schlägt die Brücke zu Fischertechnik und ermöglicht es unter anderem, einen Drei-Achsen-Roboter anzusteuern.

  • Eleganter Diener

    Jeden Morgen dieselben Handgriffe, um zu sehen, ob die S-Bahn fährt und wie das Wetter wird? Ein cleverer Infoscreen auf RasPi-Basis automatisiert den Vorgang.

  • Bienenflüsterer

    Bienenzüchter, die ihre Völker besser kennenlernen möchten, müssen die fleißigen Insekten nicht pausenlos stören. Mit einem Raspberry Pi und verschiedenen Sensoren überwachen sie Temperatur, Luftfeuchtigkeit und bald auch das Gewicht des Bienenstocks.

  • Beerige Musik

    Für echten Hi-Fi-Sound braucht es mehr als einen kleinen Bluetooth-Brüllwürfel. Mit Volumio und einem Raspberry Pi rüsten Sie Ihre klassische Hi-Fi-Anlage mit smarten Funktionen auf.

  • Ton ab!

    Auf den ersten Blick erscheint der RasPi zu schwachbrüstig für den Betrieb leistungshungriger DAW-Software. Doch der Schein trügt.

  • Himbeer-TV

    Der DVB TV µHAT rüstet den Raspberry Pi mit einem DVB-T/T2-Tuner auf. Die deutsche TV-Landschaft schränkt dessen Möglichkeiten allerdings ein.

  • Git à la RasPi

    Mit wenigen Handgriffen zum Git-Hoster: Die dezentrale Arbeitsweise von Git erleichtert in Kombination mit der Netzwerkfähigkeit des RasPi das Verwalten von Quellcode.