====== Gekapseltes Gäste-WLAN ====== ===== Eine saubere Lösung mit DD-WRT ===== Quelle:[[http://pedrett.org/dd-wrt-gaestenetzwerk/]] ------------------------------ Um das Gästenetzwerk wirklich sauber einzurichten braucht man wesentlich mehr Kontrolle über den WLAN-Router, als standardmässig vorgegeben. Gerade für kleinere Netzwerke empfiehlt sich deswegen die alternative Routerfirmware DD-WRT. DD-WRT ersetzt dabei die beschränkte Standardfirmware des Herstellers und ermöglicht wesentlich mehr Features und Feineinstellungen (mehr Infos zu geeigneten Routern bzw. die Installation von DD-WRT findet man hier) Das endgültige Ergebnis sieht dann in etwa so aus: {{ :pasted_image.png?650 |}} Sicheres Gästenetzwerk mit DD-WRT Es erfolgt eine vollständige Trennung von Internem und Gästenetzwerk – und zwar bereits auf demWLAN- Router. Gleichzeitig wird hier auch ein direkter Zugriff vom Gästenetz auf alle Router unterbunden – einzig und allein ein „kontrollierter Internetzugang“ wird erlaubt. ==== Schritt 1: Virtuelles Gästenetz erstellen ==== Virtuelles Interface erstellen (in DD-WRT) Zuerst wird in DD-WRT ein neues, virtuelles Interface für den WLAN – Zugang erstellt. Dieses wird ausschliesslich für den Gästenzugang genutzt (z.B. WLAN_Gast). Vorgehen: Unter Wireless >> Basic Settings den Button „Add“ klicken {{ ::pasted_image002.png?650|}} ==== Schritt 2: WLAN verschlüsseln / mit Passwort schützen ==== WLAN Intern/Gästenetz absichern Anschliessend sollte man die grundlegenden Sicherheitseinstellungen für beide WLAN-Zugänge konfigurieren. Das Gästenetzwerk offen (d.h. ohne Verschlüsselung) zu lassen, empfiehlt sich in den meisten Fällen nicht. Vorgehen: Unter Wireless >> Wireless Security die Verschlüsselung für beide Interfaces konfigurieren. {{ ::pasted_image003.png?650|}} ==== Schritt 3: Bridge erstellen ==== Neue Bridge br1 für das virtuelle Interface erstellen Nun muss eine Bridge für das in Schritt 1 erstellte virtuelle Interface erstellt werden. Wichtig! Die bereits bestehende Bridge br0 nicht ändern, löschen oder überschreiben! Vorgehen: Unter Setup >> Networking >> Create Bridge „Add“ klicken und die IP-Einstellungen für das Gästennetzwerk definieren. Anschliessend unter dem Punkt „Assign to Bridge“ das virtuelle Interface der neu erstellten Bridge zuweisen. {{ ::pasted_image004.png?650|}} ==== Schritt 4: Neue DHCP Instanz erstellen ==== Der Bridge br1 eine neue DHCP Instanz zuweisen Da Gäste automatisch eine IP-Adresse zugewiesen bekommen sollen, muss eine neue DHCP – Instanz erstellt werden. Vorgehen: Unter Setup >> Networking >> Multiple DHCP Server mittels des Buttons „Add“ der neu erstellten Bridge eine DHCP – Instanz zuweisen. {{ ::pasted_image005.png?650|}} ==== Schritt 5: Zusätzliche DNSMasq Optionen konfigurieren ==== Zusätzliche DNSMasq Optionen Zusätzliche DNSMasq Optionen setzen {{ ::pasted_image007.png?650|}} Damit DHCP schlussendlich funktioniert müssen noch folgende Optionen unter „Additional DNSMasq Settings“ ergänzt werden. # Aktiviert DHCP auf br1 interface=br1 # Setzt das Standard Gateway für Clients von br1 dhcp-option=br1,3,192.168.5.1 # Setzt den DHCP Bereich und Default Lease Time für br1 dhcp-range=br1,192.168.5.100,192.168.5.150,255.255.255.0,24h ==== Schritt 6: IPTables konfigurieren ==== IPTables Konfiguration DD-WRT IPTables Konfiguration einfügen und „Save Firewall“ klicken {{ ::pasted_image009.png?650|}} Zu guter Letzt müssen noch die Firewallregeln des Routers konfiguriert werden. Bis zu diesem Punkt hat das Gastnetzwerk auch noch keinen Internetzugang (das eigentliche Ziel dieser Übung…) Firewallregeln kann man in DD-WRT mithilfe von IPTables konfigurieren. Man findet die entsprechende Eingabemaske unter Administration >> Commands. Dort sollen folgende Konfigurationseinstellungen eingefügt und mittels „Save Firewall“ gespeichert werden: #br1 (Gästewlan) Internetzugriff erlauben iptables -I FORWARD -i br1 -m state --state NEW -j ACCEPT iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu #Zugriff zwischen Intern und Gäste blockieren iptables -I FORWARD -i br0 -o br1 -m state --state NEW -j DROP iptables -I FORWARD -i br1 -d `nvram get lan_ipaddr`/`nvram get lan_netmask` -m state --state NEW -j DROP #NAT erlaubt Internetverbindung iptables -t nat -I POSTROUTING -o br0 -j SNAT --to `nvram get lan_ipaddr` #Torrent und P2P Netzwerke blockieren iptables -I FORWARD -p tcp -s 192.168.5.0/24 -m connlimit --connlimit-above 50 -j DROP iptables -I FORWARD -p ! tcp -s 192.168.5.0/24 -m connlimit --connlimit-above 25 -j DROP #Direktzugriff auf Router aus Gästenetzwerk verweigern iptables -I INPUT -i br1 -p tcp --dport telnet -j REJECT --reject-with tcp-reset iptables -I INPUT -i br1 -p tcp --dport ssh -j REJECT --reject-with tcp-reset iptables -I INPUT -i br1 -p tcp --dport www -j REJECT --reject-with tcp-reset iptables -I INPUT -i br1 -p tcp --dport https -j REJECT --reject-with tcp-reset ==== Schritt 7: DD-WRT in Netzwerk einbinden ==== Zum Schluss muss der Router mit DD-WRT noch ins bestehende Netzwerk eingebunden werden. Da die Internetverbindung in dieser Konfiguration durch einen anderen Router / Modem (vergl. Abb. 3) hergestellt wird, brauchen wir das WAN nicht. Es sollte deshalb deaktiviert werden (unter „Setup“). Anschliessend sollte man dem Router noch eine plausible IP-Adresse vergeben (z.B. 192.168.1.2), sowie die Subnetmask und den DNS-Server ergänzen. Den DHCP Server sollte man auf „Disable“ stellen – fürs interne Netzwerk brauchen wir ihn nicht und fürs Gästenetzwerk haben wir ihn bereits manuell konfiguriert. Erst nachdem diese Einstellungen ergänzt wurden auf „Apply Settings“ klicken. {{ ::pasted_image010.png?650|}} Um die Konfiguration abzuschliessen sollte man den Router anschliessend neu starten.