Gäste WLAN auf OpenWRT Access Point

Wer einen WLAN Access Point betreibt, möchte vielleicht auch ein extra Gäste WLAN einrichten, welches vom eigenen Heimnetzwerk getrennt ist. Gäste sollen schließlich nur Zugriff aufs Internet bekommen, ohne die heimischen Ressourcen sehen zu können. Einige Router bzw. Access Point Hersteller liefern so eine Funktionalität bereits mit der Standard Firmware mit. Bei der alternativen Open Source Router Firmware „OpenWRT“ lässt sich auch ein Gäste WLAN einrichten. Die Konfiguration hierfür muss jedoch in Handarbeit erledigt werden. Dieser Blogpost beschreibt die Einrichtung eines Gäste WLANs auf einem eigenständigen WLAN Access Point, der per Kabel mit dem Router verbunden ist. Die generelle Konfiguration eines WLAN Access Points ist im OpenWRT Wiki bereits gut beschrieben. Klick


Als Erstes wird zum bereits vorhandenen WLAN eine weitere SSID für das Gäste WLAN hinzugefügt. Ob diese für 2,4 GHz, 5 GHz oder beide Frequenzbänder hinzugefügt wird, spielt erstmal keine Rolle.

OpenWRT Gäste WLAN

Das neue WLAN bekommt eine eigene SSID, um gleich zu erkennen, dass es sich um ein Gastnetz handelt. Um das Netzwerk später vom eigenen LAN durch Firewall Regeln sauber trennen zu können, wird für das neue Gäste WLAN ein eigenes Netz „guest“ konfiguriert.

guest_wlan02
Über den Reiter „Wireless Security“ kann die WLAN Verschlüsselung nach eigenen Wünschen angepasst werden.

OpenWRT Gäste WLAN
Als nächstes wird das neue Netzwerk Interface „guest“ bearbeitet.

OpenWRT Gäste WLAN

Das Protokoll wird auf „Static Address“ geändert. Um die IP Konfiguration anpassen zu können, muss noch der Button „Switch protocol“ geklickt werden.

OpenWRT Gäste WLAN

Danach können folgende Werte gesetzt werden.

  • IP Adresse des Interfaces (z.B. 10.0.0.1)
  • Subnetzmaske (255.255.255.0)
  • DNS Server (ich verwende hier OpenDNS. Kann natürlich auch jeder andere öffentliche DNS Server sein)

OpenWRT Gäste WLAN

Zusätzlich muss noch ein DHCP Server für das neue Netzwerkinterface konfiguriert werden.

OpenWRT Gäste WLAN

Über den Reiter „Firewall Settings“ wird für das Netzwerkinterface „guest“ noch eine neue Firewall Zone „guest“ angelegt. Diese wird benötigt, um eine Trennung zwischen LAN und Gastnetz zu erreichen.

OpenWRT Gäste WLAN

Mit dem Menüpunkt „Network\Firewall“ lässt sich die neu erstellte Zone bearbeiten.

OpenWRT Gäste WLAN

Wichtig ist das der Haken bei „Masquerading“ gesetzt wird. Als Netzwerk wird das zuvor erstellte Netz „guest“ ausgewählt. Wichtig ist auch noch den Traffic in das bestehende Netz „LAN“ weiterzuleiten. In einem späteren Schritt wird der Zugriff noch eingeschränkt.

OpenWRT Gäste WLAN

Im nächsten Schritt wird über die „Firewall Traffic Rules“ ein „Source NAT“ konfiguriert, um den Traffic aus dem Gastnetz ins Internet zu leiten. In der Übersicht werden die ersten Felder ausgefüllt.

  • Name: Allow-Guest-Internet
  • Source zone: guest
  • Destination zone: lan
  • To Source IP: IP Adresse des WLAN Access Points

OpenWRT Gäste WLAN

In der Detailkonfiguration können die Details noch einmal eingesehen werden.

OpenWRT Gäste WLAN

Nach dem „Source NAT“ wird eine „Forward Rule“ angelegt, um den Zugriff aus dem Gäste Netz auf das interne LAN zu blockieren.

OpenWRT Gäste WLAN

Die Regel sieht dann wie folgt aus. Es wird jeder Traffic vom Gast Netz ins LAN blockiert. Bei „Destination address“ muss das eigene Interne Netz angegeben werden.

OpenWRT Gäste WLAN

Optional können noch durch zwei weitere „Forward Rules“ die Zugriffe auf den Access Point über http und SSH blockiert werden.

OpenWRT Gäste WLAN

OpenWRT Gäste WLAN

Wer das Gäste WLAN nicht über LUCI konfigurieren möchte, kann natürlich per SSH alle Konfigurationen durchführen. Im Folgenden werden alle relevanten Konfigurationen aufgelistet.

/etc/config/network

config interface 'guest'
        option _orig_ifname 'wlan1-1'
        option _orig_bridge 'false'
        option proto 'static'
        option ipaddr '10.0.0.1'
        option netmask '255.255.255.0'
        option dns '208.67.220.220 208.67.222.222'

/etc/config/wireless

config wifi-iface
        option device 'radio1'
        option mode 'ap'
        option ssid 'wifinet_guest'
        option network 'guest'
        option encryption 'psk2+ccmp'
        option key 'foo'
        option isolate '1'

Der Parameter „option isolate ‚1‘“ sorgt dafür, dass die WLAN Clients aus dem Gästenetz nicht untereinander kommunizieren können. Diese Einstellung lässt sich nicht über LUCI setzen!

/etc/config/dhcp

config dhcp 'guest'
        option start '100'
        option interface 'guest'
        option limit '10'
        option leasetime '1h'

/etc/config/firewall

config zone
        option forward 'REJECT'
        option output 'ACCEPT'
        option input 'ACCEPT'
        option network 'guest'
        option name 'guest'
        option masq '1'

config forwarding
        option dest 'lan'
        option src 'guest'

config redirect
        option target 'SNAT'
        option src 'guest'
        option dest 'lan'
        option proto 'all'
        option src_dip '192.168.10.2'
        option name 'Allow Guest Internet'

config rule
        option src 'guest'
        option dest 'lan'
        option name 'Disable Guest LAN Access'
        option proto 'all'
        option dest_ip '192.168.10.0/24'
        option target 'DROP'

config rule
        option src 'guest'
        option target 'DROP'
        option dest_port '80'
        option proto 'tcp udp'
        option name 'Disable Guest AP HTTP Access'

config rule
        option proto 'tcp udp'
        option name 'Disable Guest AP SSH Access'
        option src 'guest'
        option dest_port '22'
        option target 'DROP'

Um die Änderungen zu aktivieren, müssen noch folgende Befehle ausgeführt werden.

/etc/init.d/network reload
/etc/init.d/dnsmasq reload
/etc/init.d/firewall reload

Ab jetzt kann der Besuch über ein eigenes abgeschottetes WLAN ins Internet, ohne dass Passwörter bzw. Ressourcen des eigenen Netzwerks freigegeben werden müssen.