sebastians87
Goto Top

OpenWRT auf WRT54GL - WPA mit externem Freeradius

Hallo ihr Lieben,

ich betreibe hier einen Linksys WRT54GL als reine WLAN Brücke mit der OpenWRT Firmware 8.09 mit X-Wrt Webinterface. Auf einem Debian Server mit der IP 10.0.1.4 Subnet: 255.255.240.0 habe ich einen Freeradius-Server laufen. Habe jetzt schon von mehreren Clients ausprobiert und ein Authentifizierung am Radius klappt Problemlos. Der WRT ist im WLAN-Netz nicht zu erreichen, da er an einer getrennten Netzwerkkarte betrieben wird. Im LAN-Netz hat der WRT die IP 10.0.2.1 Subnet: 255.255.240.0. Von der Console aus kann ich den Radius-Server pingen und umgekehrt. Aber der WRT macht keinerlei Kommunikation mit dem Teil (keine Aktivität am Radius beim Einloggen ins WLAN-Netz).

Konfiguration wie folgt:

Mode: Access Point
WDS: Off
ESSID Broadcast: On
AP Isolation: Off
Encryption Type: WPA + WPA2 (RADIUS)
RADIUS IP Address: 10.0.1.4
RADIUS Port: 1812 (auch schon mit Port 1813 probiert)
RADIUS Server Key: radiussecret
MAC Filter: Disabled

In der clients.conf ist der WRT eingetragen:

client Accesspoint {
ipaddr = 10.0.2.1
secret = radiussecret
require_message_authenticator = no
}


Was mache ich falsch? Müssen eventuell noch Module nachinstalliert werden auf dem WRT?

Content-ID: 116869

Url: https://administrator.de/forum/openwrt-auf-wrt54gl-wpa-mit-externem-freeradius-116869.html

Ausgedruckt am: 22.12.2024 um 04:12 Uhr

aqui
aqui 27.05.2009 um 09:11:26 Uhr
Goto Top
Port 1813 ist Unsinn, denn das ist der Port fürs Accounting !
Radius hat früher andere Ports benutzt nämlich 1645 und 1646 (letzterer wieder fürs Accounting).
Du solltest also sicherstellen, das der Freeradius auch auf Port 1812 hört und nicht auf 1645 !

Das kannst du auch sicher mit einem Radius Test Tool ntradping ausprobieren:

http://www.novell.com/coolsolutions/tools/14377.html

Ist das sichergestellt, kann der Fehler nur am OpenWRT liegen.
Am besten hängst du mal einen Wireshark Sniffer zw. OpenWRT und dem Radius und snifferst mal mit was da vom OpenWRT kommt.
DD-WRT schickt de facto Radius Requests raus...
sebastians87
sebastians87 27.05.2009 um 12:22:48 Uhr
Goto Top
Hallo,
ich denke 1812 ist schon richtig. Im Debugmodus sagt der Freeradius ja "Listening on Port 1812"

Aber was mir vorhin eingefallen ist, dass es daran liegen könnte, dass VLANs eingerichtet sind. Der Accesspoint ist bridged auf VLAN "wifi_wpa" währen der Radius aber im VLAN "lan" hänt. Aber selbst dann sollte der WRT nicht so blöd sein und nur auf dem VLAN abfragen in dem der AP-Mode ist. Den das LAN-Subnet ist ja bekannt!
aqui
aqui 27.05.2009 um 19:37:00 Uhr
Goto Top
Das könnte ein Grund sein !!

VLANs sind ja komplett isoliert untereinander !
Wenn also dein Radius Server in VLAN a ist und dein AP ind VLAN b dann kommen die niemals zueinander....das ist logisch !
Ein Indiz dafür ist das du am Radius im Debugger Modus keine eingehenden Pakete vom AP siehst.

Das solltest du also besser nochmal checken bzw. einen Router dazwischenhängen der zwischen den VLANs routen kann.

Irgendwie ist auch deine IP Adressierung unverständlich...
Du schreibst einerseits ein Adapter ist im Netzwerk
10.0.0.0 /20 das von 10.0.0.1 bis 10.0.15.254 geht

Dann ist aber die 10.0.2.4 /20 auch in diesem Netzwerk und kann niemals auf einem separaten Adapter liegen, denn der müsste ja folglich in einem anderen IP Netz liegen.
Vermutlich sind das aber nur die beiden LAN Adressen im Bridge Netzwerk.... ?! Wenn ein Ping funktioniert ist die Erreichbarkeit ja gegeben !
sebastians87
sebastians87 27.05.2009 um 22:57:43 Uhr
Goto Top
ich häng den AP mal ins VLAN vom Lan-Netz.

Vielleicht habe ich mich unverständlich ausgedrückt:
Ich betreibe eine IPCop mit einer extra Netzwerkkarte nur für WLAN.

LAN Netz: VLAN "lan"
10,0,0,0/20
da hänt der WRT eigentlich nur drin zu Konfigurationszwecken und wegen dem Radius.

WLAN Netz: VLAN "wifi_wpa"
10.1.0.0/22
Da is das VLAN Brigded auf einen Switchport am WRT der dann mit der WLAN-Netzwerkkarte am IPCop verbunden ist.


Jetzt ist halt die Frage ob das VLAN so isoliert, dass er selbst keine Abfrage mehr an das LAN-Netz senden kann.
sebastians87
sebastians87 27.05.2009 um 23:09:23 Uhr
Goto Top
Ok. Hat auch nicht funktioniert. Eventuell fehtl dem WRT da ein Package oder so. Hab das WLAN Interface der LAN-Schnittstelle zugwiesen. Das hat auch nicht geklappt. Bei OpenWRT ist das halt so, dass du beliebig viele virtuelle APs erstellen kannst, die du dann den VLANs zuweist. Da kann man eigentlich richtig schöne spielereien machen!
aqui
aqui 28.05.2009, aktualisiert am 18.10.2012 um 18:38:18 Uhr
Goto Top
Irgendwie würfelst du da was wild durcheinander... ??

Benutzt du nun ein VLAN nach 802.1q
http://de.wikipedia.org/wiki/Virtual_Local_Area_Network
bzw.
http://de.wikipedia.org/wiki/IEEE_802.1q
oder
VLANs über 802.1q Trunk auf Windows und Linux Rechnern realisieren

...oder bezeichnest du einfach fälschlicherweise, vermutlich aus Unwissenheit über die VLAN Materie, einfach die IPCop Interfaces als "VLAN" ???
Letzteres hätte mit VLANs nichts zu tun und ist lediglich eine falsche, laienhafte Benutzung des Begriffs "VLAN".

Gehen wir also mal davon aus das du damit nur die IPCop Interfaces meinst....
Dann hast du aber ein generelles Problem, denn IP Seitig müsste der WRT AP immer erreichbar sein.
Vermutlich ist die Authentifizierung im Bridge Modus auch schlicht und einfach nur deaktiviert, denn WLAN Bridges müssen sich normalerweise nicht authentifizieren, da sie bei einer LAN to LAN Kopplung für die Endgeräte vollkommen transparent sind !
Vermutlich ist das der einfache Grund.

Um das herauszubekommen schliess einfach einen Paket Sniffer an wie bereits gesagt...dann kannst du sehen ob die WRT Box überhaupt Radius Pakete rausschickt !!!
Das sind 5 Minuten in denen du dann ganz sicher bist als 3 tage hier im Forum zu mutmaßen...
sebastians87
sebastians87 28.05.2009 um 10:46:56 Uhr
Goto Top
Nein ich meine nicht die IPCop Interfaces als VLAN. Die VLANs sind rein nur auf dem WRT eingerichtet und auf die Switchports gebrigded. Bin hier gerade auf der Arbeit und hab gerade keine Zeit eine Zeichnung zu basteln. Mache ich heute Abend wenn ich zu Hause bin!
sebastians87
sebastians87 28.05.2009 um 21:16:20 Uhr
Goto Top
d24c20f4a84e8f0e6dd3eb71b5d85dee-aufbau

Erklärung zum Bild: (Grün = LAN / Blau = WLAN)
Das virtuelle Interface für WLAN ist im VLAN "wifi_wpa". Der Switchport 4 am WRT ist ebenfalls im VLAN "wifi_wpa". Vom Switchport 4 geht es direkt an die WLAN-Netzwerkkarte des IPCops.

Alle restlichen Switchports sind im VLAN "lan". Einer dieser Ports ist verbunden mit dem Switch im LAN-Netz. Dieses ist verbunden mit der LAN-Netzwerkkarte des IPCops und mit dem Radius.


Die beiden Netze sind auf jeden Fall voneinander getrennt. Jetzt bin ich mir nur nicht sicher ob die Firmware vom WRT das ganze so abschottet, dass der AP den Radius nicht erreicht. Wenn ich nun aber das virtuelle Interface für WLAN umschalte, dass es auf das VLAN "lan" geht, kommt auch keine Regung auf dem Radius.
aqui
aqui 29.05.2009 um 16:39:51 Uhr
Goto Top
Das kann nicht funktionieren, denn der WRT kann keine VLANs routen, da er kein IP Interface pro VLAN hat. Die VLAN Implementation klappt nur auf Layer 2.
Außerdem sind das dann 802.1q tagged VLAN Pakete die aus dem WRT kommen und die versteht dein Switch nicht und droppt sie.
http://de.wikipedia.org/wiki/IEEE_802.1q

Das ist auch ein Indiz warum keine Radius Pakete am Server ankommen.
Die einzige Möglichkeit die du hast ist den IPCop für Radius (TCP 1812) zu öffnen so das die Pakete vom WRT über den IPCop an den Radius Server gehen.
So wird ein Schuh draus !
sebastians87
sebastians87 29.05.2009 um 16:46:13 Uhr
Goto Top
Dazu müsste ja aber der AP wieder eine eigene IP-Adresse bekommen. Das soll ja möglichst verhindert werden. In dem WLAN soll so wenig wie möglich auffindbar sein. Außerdem unterstützt der IPCop keine Portweiterleitung von WLAN --> LAN. Ist halt relativ komisch, dass der WRT selbst die Radiusauthentifizierung im gleichen VLAN haben muss, denn der Server auf dem Radius läuft lässt sich problemlos pingen. Und dass mein Switch das tagged VLAN nicht versteht ist sowieso klar, da es ein dummes Switch ist. Ist komplett unmanaged das Teil.
sebastians87
sebastians87 29.05.2009 um 21:33:42 Uhr
Goto Top
Da fällt mir gerade noch ein, dass der auch den Radius nicht erreicht wenn alles komplett so eingestellt ist, dass alle Ports + WLAN im gleichen Netz hängen wie der AP. Hatte ich ja gestern ausprobiert!
aqui
aqui 30.05.2009, aktualisiert am 18.10.2012 um 18:38:19 Uhr
Goto Top
Dann hast du aber generell einen fehler im Setup !!
Wenn WLAN AP und Radius im gleichen Netzwerk sind muss eine Verbindung ja in jedem Falle möglich sein sofern du mit iptables nicht irgendwelche Firewall restriktionen auf dem radius Server eingebaut haben solltest ???

Als Alternative solltest du ggf. mal ein Aug auf Monowall werfen, denn die kann problemlos auch mit VLANs umgehen:

VLAN Installation und Routing mit pfSense, Mikrotik, DD-WRT oder Cisco RV Routern

Damit wäre dann eine VLAN Anbindung mit tagged Frames an den AP problemlos möglich !
sebastians87
sebastians87 30.05.2009 um 18:05:44 Uhr
Goto Top
Eigentlich habe ich keine iptables Sachen drin. Ist ein stinknormales Debian mit Apache, MySQL und Radius. Ich weiß halt nicht ob dem WRT noch irgendwelche Packages fehlen um sich am Radius anzumelden. Es gibt ja noch nichtmal eine Möglichkeit das zu testen (radtest oder ähnliches). Mein IPCop kann ja auch sauber mit dem Radius umgehn. Mit CopSpot funktioniert das einwandfrei.
sebastians87
sebastians87 31.05.2009 um 03:05:13 Uhr
Goto Top
OK. ich habe es nun herausgefunden. Ich habe den WRT komplett neu aufgesetzt. Also es liegt definitv am VLAN. Wenn der Radius in diesem VLAN wäre würde es funktionieren. Allerdings komm ich nur über Linux rein mit LEAP. Mit Windows komme ich nicht rein. Aber ich stelle das Projekt nun ein, da das WLAN und der Radius aus Sicherheitsgründen in diesem VLAN bleiben sollen. Wenn ich die Zeit finde werde ich einen weiteren Radius aufsetzen und zwar auf dem WRT selbst. Ich hoffe dieser kann dann wenigstens die Daten von der SQL-Datenbank abrufen die auf dem Radius läuft. Aber da sehe ich keine Probleme, da ja auch ein Ping geht!