pedant
Goto Top

DD-WRT: MAC-Filter kann max. 64-Adressen verwenden

Hallo liebe Kollegen,

wenn sich GUI-Designer und Programmierer nicht unterhalten passiert Folgendes:

Im Webinterface von dd-wrt kann man in der Eingabemaske der MAC-Filter-Liste 128 oder 256 MAC-Adressen (je nach Version) eintragen.
Das ist solange gut, bis man tatsächlich mal mehr als 64 Einträge vornimmt.
Die GUI findet das prima, aber der Treiber, der die MAC-Filterung ausbaden muss, kann nur mit maximal 64 Einträge umgehen.
Werden ihm mehr zugemutet, so versagt er seinen Dienst dahingehend, dass kein WLan-Client mehr Zugang erhält.

Routerseitig poppt aber keine Warnung auf und clientseitig erhält man beim Verbindungsversuch uninformative oder irreführende Meldungen:
"Keine Verbindung mit diesem Netzwerk möglich"
"Authentifizierung fehlgeschlagen"
oder anderes, je nach Client.


Eine kleine Leidenswegbeschreibung

Wichtiger Netzwerktraffic läuft im Büro in der Regel drahtgebunden.
WLan existiert im Wesentlichen nur für Mitarbeiter-Smartphones, es wird aber auch immer wieder mal für das eine oder andere Laptop genutzt,wenn ein Kollege damit nicht an seinem Schreibtisch arbeitet.
Sollte das WLan mal ausfallen, so ist das lediglich ein Komfortverlust, die Arbeit kann dennoch weiter gehen.
Die Geräte, die Zugang erhalten sollen, werden manuell in den MAC-Filterlisten von insgesamt drei räumlich verteilten Accesspoints eingetragen.

Von "heute auf morgen" hat plötzlich keiner mehr Zugang zum WLan.
Es hat gestern ein paar Stunden gedauert, bis ich dahinerkam, woran es lag, da ich mir nicht mehr bewusst war, dass ich kürzlich zwei weitere Einträge vorgenommen hatte.
Ich stand vor einem System, an dem sich eigentlich nichts geändert hat, das aber dennoch einfach nicht mehr funktionierte.
Bei der Fehlersuche wurde auch die Mac-Sperre ausgeschaltet, was sofort Besserung brachte, aber bis daraus Erkenntniss wurde, dauert noch geraume Zeit.
Tante Google ist leider etwas zu gesprächig, wenn man "kein WLan-Zugang" eintippt.
Als ich soweit war, den Fehler auf die Einträge in der Filterliste eingrenzen zu können, konnte ich gezielter recherchieren und fand das hier:

Zitat von <Kong>:
...this is a driver limitation, I just checked and used the wl commandline to add macs by hand directly on the router you can exactly set 64 MAC adresses, after that the driver returns invalid range.
Quelle: https://www.dd-wrt.com/phpBB2/viewtopic.php?p=874596

Auf den betroffenen Accesspoints ist DD-WRT v3.0-r32170M kongac (06/11/17) installiert.
Wie es aussieht ist das aber eine generelle Einschränkung von dd-wrt und nicht versionsabhängig.

Es kann gut sein, dass das Problem nur Wenigen begegnet, da größere WLan-Umgebungen vermutlich selten mit Mac-Filtern versehen sind und mit semi-professionellen Geräten realisiert werden.
Ich dachte dennoch, dass es nicht schadet Euch dieses versteckte Problem mitzuteilen.

Gruß Frank

Content-Key: 356495

Url: https://administrator.de/contentid/356495

Printed on: April 20, 2024 at 03:04 o'clock

Member: maretz
maretz Nov 29, 2017 at 13:36:28 (UTC)
Goto Top
Moin,

danke für die Info... ich würde allerdings mal überlegen nen FreeRadius aufzusetzen. Das ding ist in 5 Min konfiguriert - und du hast nicht 3 verschiedene Listen zu pflegen... Und auch kein Problem mehr damit wieviel Adressen nun frei sind oder nicht... Ich weiss nur nicht ob das DD-Zeug Radius kann
Member: Pedant
Pedant Nov 29, 2017 at 18:38:36 (UTC)
Goto Top
Hallo maretz,

Zitat von @maretz:
ich würde allerdings mal überlegen nen FreeRadius aufzusetzen.
ja, ich glaube es wird Zeit dafür.
Als "Pedant" habe ich zwar ein gewisses Vergnügen daran Listen abzugleichen, aber ich bin ja nicht zum Spaß hier.

Zitat von @maretz:
Ich weiss nur nicht ob das DD-Zeug Radius kann
Ja, kann es, zumindest soweit man deren GUI noch trauen darf (siehe 1. Beitrag) .

Gruß Frank
Member: aqui
aqui Jan 25, 2018 updated at 15:32:13 (UTC)
Goto Top
Abgesehen von dem interessanten Feedback sind das aber ja Steinzeit Methoden. Auf 3 oder mehr APs eine gleiche und wasserdichte immer up to date MAC Filterliste zu pflegen macht ja heute kein (IT) Mensch mehr. Abgesehen von dem Aufwand ist das eine potentielle Fehlerquelle. Und ganz davon abgesehen das das eigentlich Spielkram ist denn Macs kann man faken.
Normal trenn man ja das WLAN logischerweise in ein separates Netzwerk Segment oder VLAN.
Hier würde man dann zentral entweder mit Mac auf Layer 2 filtern oder auf die IPs mit L3.
Noch sinnvoller, da sicherer, ist die vom Kollegen maretz zu Recht vorgeschlagene Radius Server Lösung mit ebenfalls zentraler Verwaltung.
Mit einem simplen 35 Euro Raspberry Pi ist das in 15 Minuten aufgesetzt:
Netzwerk Management Server mit Raspberry Pi
Member: Pedant
Pedant Jan 30, 2018 at 10:33:41 (UTC)
Goto Top
Hallo aqui,

Zitat von @aqui:
...macht ja heute kein (IT) Mensch mehr.
n-1

Zitat von @aqui:
Noch sinnvoller, da sicherer, ist die vom Kollegen maretz zu Recht vorgeschlagene Radius Server Lösung mit ebenfalls zentraler Verwaltung.
Mit einem simplen 35 Euro Raspberry Pi ist das in 15 Minuten aufgesetzt:
Ich möchte mir eigentlich keinen Pi ins Serverrack basteln, wenn ich dort einige Windows-Server drin habe, denen tendenziell eher langweilig ist, zumal mir Linux auch noch recht fremd ist.

Zitat von @aqui:
...ganz davon abgesehen das das eigentlich Spielkram ist denn Macs kann man faken.
Das das nur eine geringe Hürde für einen Einbrecher ist, ist mir gewahr.
Der Mac-Filter dient in meinem Fall nur dazu, dass nicht jeder Kollege jedem Kunden oder Gast mal eben den WLan-Schlüssel nennen kann und der dann ins Büronetzt kommt.
Für diesen Bedarf gibt es ein komplett getrenntes Gast-Netz mit Internetzugang.

Ich hatte mal angefangen mich in das Thema Radius einzulesen.
Als Alternative für Windows stieß ich dann auf den Netzwerkrichtlinienserver.
Nach einigem Lesen (nicht Studieren) war ich dann aber eher verwirrt denn erleuchtet und habe mich wieder ganz anderen Aufgaben zugewandt.

Was ich möchte ist eine einfache, gerätespezifische Zugangskontrolle (Whitelist).
Gerne natürlich eine zentrale Liste, statt wie im Moment drei unabhängige Mac-Filterlisten auf den AP.
Was ich nicht möchte ist, für den Zugang auf allen Clients irgendetwas installieren zu müssen, wie beispielsweise Zertifikate, es sei denn es wäre clientseitig eine Ein-Klick-Lösung, die auf allen OS (Android, Windows, Linux Mac, iOS usw.) problemlos funktioniert.
(Für den Nutzer soll es nicht kompliziert werden.)
Als Sicherheit genügt mir ein einheitlicher WLan-Schlüssel und der fragwürdige Mac-Filter.
Gäste und Kunden sollen das Gastnetzwerk nutzen.
Nur gelegentlich ist es mal nötig, dass ein "fremdes" Gerät per WLan ins Büronetz muss.
In dem Fall sollte der Zugang unkompliziert einzurichten sein, aber ein administratives Zutun meinerseits erfordern und mir die Möglichkeit bieten den Zugang wieder zu beenden.

Bietet Radius oder der Netzwerkrichtlinienserver ein entsprechend simples Szenario oder wäre sowas komplett sinnentleert?
Was wäre der Ansatz, also die Alternative zu den Mac-Filterlisten in den AP?
(Das "Wie" würde ich dann schon selbst recherchieren.)

Gruß Frank
Member: aqui
aqui Jan 31, 2018 updated at 11:01:36 (UTC)
Goto Top
Ich möchte mir eigentlich keinen Pi ins Serverrack basteln, wenn ich dort einige Windows-Server drin habe
Ne simple kleine VM mit Ubuntu oder Debian tuts auch...oder noch besser dann gleich den Radius Server (NPS) von Winblows verwenden.
zumal mir Linux auch noch recht fremd ist.
Kann man ja als Winblows Knecht auch mal sein Horizint erweitern. Aber wie gesagt man kann auch bei Klicki Bunti bleiben und den NPS Dienst (Radius) nutzen.
Ich hatte mal angefangen mich in das Thema Radius einzulesen.
Lesenswert dazu:
https://www.heise.de/ct/artikel/Radius-mit-Windows-Server-2087800.html
https://blog.matrixpost.net/?p=4
https://www.andysblog.de/windows-wireless-lan-802-1x-und-nps
war ich dann aber eher verwirrt denn erleuchtet
Oha...bei solch sehr banalen Sachverhalten schon ? How come ? Und du administrierst Windows Server ?
Dann starte doch erstmal mit den einfachen Grundlagen dazu:
https://de.wikipedia.org/wiki/IEEE_802.1X
oder auch
Sichere 802.1x WLAN-Benutzer Authentisierung über Radius
Das sollte helfen.
Zertifikate sind nicht unbedingt nötig, es geht auch ohne. Zusätzlich muss nicht zwingend was installiert werden wenn du z.B. nach Client Mac oder Client User- oder Hostname gehst.
es sei denn es wäre clientseitig eine Ein-Klick-Lösung, die auf allen OS (Android, Windows, Linux Mac, iOS usw.)
Gäbe es auch, allerdings musst du dann erheblich mehr Budget investieren in APs die sowas supporten.
Als Sicherheit genügt mir ein einheitlicher WLan-Schlüssel
Für Gastnetze wäre das überflüssiger Unsinn, denn den müsstest du ja jedem verraten und das wäre dann sinnfrei. Hier ist ein Captive_Portal mit oder ohne Voucher die bessere Lösung.
Nur gelegentlich ist es mal nötig, dass ein "fremdes" Gerät per WLan ins Büronetz muss.
Das macht man über dynmaische ACLs an der FW.
Bietet Radius oder der Netzwerkrichtlinienserver ein entsprechend simples Szenario
Das ist wieder relativ, denn es bleibt die Frage was für dich "simpel" ist. Nach deinen Äußerungen von oben wirft das natürlich Fragen auf.
Ggf. ist es dann für dich einfacher eine simple [ Firewall] zu installieren und mit einem flexiblen Regelwerk zu arbeiten. Für den einen eine Handvoll Mausklicks, der andere scheitert schon am Grundlagenverständnis.
Das ist alles relativ und für Externe schwierig eine passende Antwort darauf zu geben.
Member: Pedant
Pedant Jan 31, 2018 at 17:06:03 (UTC)
Goto Top
Hallo aqui,

da Du Dir die Mühe gemacht hast mir zu antworten (danke dafür), habe ich mir die Mühe gemacht Deine Links zu lesen und diverse Querverweise.

war ich dann aber eher verwirrt denn erleuchtet
Oha...bei solch sehr banalen Sachverhalten schon ? How come ? Und du administrierst Windows Server ?
Die Verwirrung ist geblieben.
Damit meine ich nicht, dass ich die Tutorials nicht nachturnen könnte, sondern eher dass ich nicht erkenne wie ich mein Ziel damit erreichen könnte.
Der NPS scheint für mich nicht der richtige Weg zu sein, da geht es immer nur in die Richtung Domänenbenutzerverwaltung.
Nach dem heutigen Lesen könnte ich mir vorstellen, dass ich mit FreeRadius dahin kommen könnte, dass ich den Zugang über eine Benutzernamen/Kennwort-Liste und eine Mac-Adressen-Whitelist realisiert bekomme, sodass erlaubte Logindaten und erlaubte Mac-Adresse nötig sind.

Die gelesenen Artikel gehen übrigens entweder nicht auf Zugang via Smartphone ein oder erzählen von etlichen Schwierigkeiten damit.
Das macht mir allerdings weniger Sorgen, da wird sich ein gangbarer Weg finden.

Zertifikate sind nicht unbedingt nötig, es geht auch ohne. Zusätzlich muss nicht zwingend was installiert werden wenn du z.B. nach Client Mac oder Client User- oder Hostname gehst.
Soweit beschrieben ist zumindest immer ein Serverzertifikat im Spiel, das beim Client importiert werden muss.
Möglicherweise ist das aber auch nur optional und empfohlen, aber nicht zwingend nötig.

Bietet Radius oder der Netzwerkrichtlinienserver ein entsprechend simples Szenario
Das ist wieder relativ, denn es bleibt die Frage was für dich "simpel" ist.
Die Erstinstallation kann beliebig kompliziert sein, simpel muss die anschließende Administration im Alltag sein.
Nicht simpel wäre etwas, das nicht in wenigen Minuten erledigt ist und was nicht in einem einfachen HowTo beschreibbar wäre, damit es auch mal jemand machen kann, der es lange Zeit nicht oder noch nie gemacht hat.
Simpel könnte ein Textdatei/Webinterface/Datenbank/o.ä. sein, in der Zugangsdaten und Mac-Adressen als Whitelist gepflegt werden und sich Änderungen auswirken auch ohne irgendwelche Dienste neu zu starten, deren Neustart eine Unterbrechung bestehender Verbindungen bewirken würde.

Ich werde mir mal ein Linux als VM aufsetzen und FreeRadius installieren.
Ich glaube dann seh' ich leichter was damit geht und was nicht.
Die Sache mit dem Serverzertifikat werde ich dann auch einfach mal ausprobieren und sehen ob das bei den Clients tatsächlich Schwierigkeiten oder erhebliche Umständlichkeiten bedeutet oder eben nicht.

Bis dahin, hab' Dank für Deine Antwort und auch für die unzähligen Tutorials, die Du schon geschrieben hast.

Gruß Frank
Member: Pedant
Pedant Feb 23, 2018 at 09:38:26 (UTC)
Goto Top
Hallo,

seit ein paar Tagen habe ich jetzt einen Radius-Server im Einsatz.
Die von maretz angekündigten 5 Minuten hatten allerdings nicht ausgereicht.

Wenn man sich strikt an die Vorgaben und Zielsetzungen der Anleitungen hält ist es vermutlich relativ schnell erledigt.
Weicht man davon ab, wird man mit unzähligen Informationen konfroniert, die eben nicht wirklich passend sind und muss Unmengen lesen, bis man anfängt eine Vorstellung zu bekommen auf was es ankommt und auf was nicht und wie das Konstrukt "FreeRadius" ungefähr tickt.
Von "ich fang mal an", bis "ich nehme es in den produktiven Einsatz" lagen geschätzte 50 Stunden Arbeitszeit.

Ich habe jetzt was ich wollte:
- Radiusserver auf einer Linux-VM (Ubuntu 16.04.3 Desktop (64-bit))
- Ein selbsigniertes Serverzertifikat, das von den Clients einfach akzeptiert werden kann
- Auf den Clients muss nichts installiert werden (auch kein Zertifikat)
- Die Zugangsdaten (Userverwaltung) liegen in einer selbstentworfenen MySQL-Datenbank
- Geräte werden ebenfalls in dieser DB verwaltet
- Für die DB habe ich ein Webinterface geschrieben um darüber User und Geräte anzulegen und zu pflegen
- Der Radiusserver greift bei Anmeldeanforderungen auf diese DB zu
- Ein Benutzer muss sich mit Username/Kennwort verifizieren und zusätzlich muss das Client-Gerätes eine zugelassene Mac-Adresse haben

Für den Betrieb ist es jetzt so simpel wie ich es gerne habe.
Ich oder wer auch immer, geht aufs Webinterface und klickt auf User "neu" oder "bearbeiten" und füllt ein paar Felder aus (Name, Loginname, Passwort), desgleichen bei "Geräte" und fertig ist die Zugangsberechtigung.
Dann muss der User nur noch bei der WLan-Anmeldung Username und Kennwort eingeben und ab dann verbindet sich das Gerät automatisch mit dem WLan.
Auf der Adminstrationsseite ist es also einfach und auf der Clientseite ebenfalls und auf beiden Seiten sogar einfacher als zuvor.

Gruß und Dank
Frank
Member: aqui
aqui Feb 23, 2018 updated at 19:18:38 (UTC)
Goto Top
Von "ich fang mal an", bis "ich nehme es in den produktiven Einsatz" lagen geschätzte 50 Stunden Arbeitszeit.
Diese Erfahrung und Lernprozess ist aber unbezahlbar und kann dir keiner mehr nehmen face-wink

Warum du allerdings ein Zertifikat generierst, was du dann eh am Client NICHT installierst ist sehr fragwürdig.
Das Zertifikat dient ja gerade dazu den Radius Server dem Client gegenüber zu legitimieren und zu authorisieren und dazu MUSS der Client logischerweise zwingend das Server Zertifikat haben !
Klar kannst du natürlich dem Client im Setup die Zertifikatsüberprüfung ganz abschalten, dann kann allerdings jeder dir oder besser gesagt den Clients einen x-beliebigen Radius Server unterjubeln was dann fatal und tödlich wäre für die Sicherheit.
Damit würde man das ganze .1x Konzept ja in sich ad absurdum führen, denn das wäre so (un)sicher wie Pre shared Keys.
Hier irrst du also denn sowas wie "Auf den Clients muss nichts installiert werden (auch kein Zertifikat)" ist natürlich fataler und laienhafter Unsinn wenn man wirkliche Radius Sicherheit haben will.
Ein Benutzer muss sich mit Username/Kennwort verifizieren und zusätzlich muss das Client-Gerätes eine zugelassene Mac-Adresse haben
Das können aber nicht alle APs bzw. Switches. Also sowas wie 802.1x before Mac usw. Da muss man aufpassen. Das geht in der Regel nur mit Hersteller spezifischen Radius Attributen, denn der Standard sieht sowas nicht vor.
Das Webinterface klingt aber ganz spannend. Gibts da irgendwo was zum runterladen und testen ?
Member: Pedant
Pedant Feb 23, 2018 at 21:00:30 (UTC)
Goto Top
Hallo aqui,

Zitat von @aqui:
Klar kannst du natürlich dem Client im Setup die Zertifikatsüberprüfung ganz abschalten, dann kann allerdings jeder dir oder besser gesagt den Clients einen x-beliebigen Radius Server unterjubeln was dann fatal und tödlich wäre für die Sicherheit.
Den x-belibigen Radius-Server müsste derjenige aber in unser Büro-Netzwerk bringen und das ist unwahrscheinlich genug.
Wer das machen könnte und mit bösen Absichten tun würde, hätte dann auch ganz andere Möglichkeiten als mir einen Radius unterzuschieben.

Zitat von @aqui:
Hier irrst du also denn sowas wie "Auf den Clients muss nichts installiert werden (auch kein Zertifikat)" ist natürlich fataler und laienhafter Unsinn wenn man wirkliche Radius Sicherheit haben will.
Will ich garnicht in dem Unfang wie es möglich wäre.
Preshared mit Macfilter hätte mir weiterhin gereicht, wenn nicht die Maclisten auf den drei Accesspoint so unpraktisch wären.

Zitat von @aqui:
Das können aber nicht alle APs bzw. Switches. Also sowas wie 802.1x before Mac usw. Da muss man aufpassen. Das geht in der Regel nur mit Hersteller spezifischen Radius Attributen, denn der Standard sieht sowas nicht vor.
Ich erhalte von den Accesspoint die Mac-Adresse als %{Calling-Station-Id} geliefert.
Falls die Übermittlung herstellerspezifisch sein sollte, würde mich das nicht weiter stören.
Ich habe nur drei baugleiche AP als Clients am Radius und keine Switche oder sonstiges.
Abfackeln tue ich das in der Datei "default" mit einer sql-Abfrage:
post-auth {
...
# See "authentification Logging Queries" in sql.conf 
#	sql
	# Hier die folgenden Zeilen eingefügen:
	# Mac-Adresse auf Gültigkeit prüfen
	if("%{sql:SELECT COUNT(*) FROM devices WHERE device_mac = '%{Calling-Station-Id}' AND device_aktiv = '1'}" > 0){  
		ok
	}
	else{
		reject
	}

Zitat von @aqui:
Das Webinterface klingt aber ganz spannend. Gibts da irgendwo was zum runterladen und testen ?
Die User/Geräte-DB und das Webinterface habe ich von grund auf selbst geschrieben.
Zum Runterladen gibts das daher nicht.
Ich kann Dir aber gerne einen DB-Dump und die Webskripte zukommenlassen.
Zuvor muss ich nur ein paar Zeilen anpassen, damit das eigenstängig verwendbar wird, was aber kein Aufwand ist.
Ich schick Dir was am WE.

Gruß Frank
Member: aqui
aqui Feb 24, 2018 updated at 09:59:56 (UTC)
Goto Top
und das ist unwahrscheinlich genug.
Wenn du das meinst... Da reicht ein kleines Stück Software auf einem USB Stick um deinen Radius damit dann sofort auszuhebeln. Das kann auch ein Laie. Deine Entscheidung !

Gravierender ist aber deine komplett falsche Schlussfolgerung hier im Forum das du so tust als müsste man kein Zertifikat haben und auch keins installieren.
Damit propagierst du hier die denkbar unsicherste Implementation dieser WiFi Enterprise Lösung was für ein Administrator Forum nicht gerade positiv ist, denn andere, technisch weniger Bemittelte könnten sich animiert fühlen es dir gleichzutun. Das würde so ein Konzept wie gesagt aber ad absurdum führen denn man will ja gerade eine erhöhte Sicherheit bei gleichzeitiger einfacher und zentraler User Administration.
Das sollte eigentlich nur mal angemerkt werden, da du dich ja sehr wenig selbstkritisch zu dieser Installation äußerst.
Auch Macfilter sind einfach in wenigen Sekunden durch cusatomizte Mac Adressen überwunden. Auch das können Laien. All das macht ein WLAN nicht sicher. Man denkt es nur.
Aber egal...wenn du in deinem Umfeld so damit leben kannst und es selber als "sicher" ansiehst ist es ja gut.
Das Webinterface ist aber dennoch eine gute und sinnvolle Sache, denn damit erspart man sich die Frickelei mit den Asci Konfig Dateien.
Member: Pedant
Pedant Feb 24, 2018 at 20:46:38 (UTC)
Goto Top
Hallo aqui,

Zitat von @aqui:
Da reicht ein kleines Stück Software auf einem USB Stick um deinen Radius damit dann sofort auszuhebeln.
Für alle, die sich innerhalb des Büros befinden, ist das Netzwerk komplett offen.
Da braucht sich keiner die Mühe zu machen mit irgendwelcher Software sich ein Hintertürchen zu öffnen, wenn der Haupteingang nicht mal eine Tür hat. Hier basiert alles auf Vertrauen und das mehr als in einem familiären Umfeld.

Zitat von @aqui:
Gravierender ist aber deine komplett falsche Schlussfolgerung hier im Forum das du so tust als müsste man kein Zertifikat haben und auch keins installieren.
Damit propagierst du hier die denkbar unsicherste Implementation dieser WiFi Enterprise Lösung was für ein Administrator Forum nicht gerade positiv ist, denn andere, technisch weniger Bemittelte könnten sich animiert fühlen es dir gleichzutun.
Da gebe ich Dir recht.
Pädagogisch wertvoll ist das nicht.
In einer Hotel-, Internetcafé- oder "normalen" Bürosituation würde ich das so auch sicher nicht machen und wenn ich Teenager in meiner Wohnung hätte, vielleicht auch nicht.
Zertifikate sind wichtig, notwendig und schnell einzurichten.

Zitat von @aqui:
Das Webinterface ist aber dennoch eine gute und sinnvolle Sache, denn damit erspart man sich die Frickelei mit den Asci Konfig Dateien.
Da hast Du mich eventuell missverstanden.
Das Webinterface ist nicht für die Grundkonfiguration des Radius-Servers, sondern für die Administration der User- und Geräte-Datenbank geschrieben.
Ich habe es Dir dennoch mal hochgeladen und ein kurzes Readme dazugepackt.
(Link kommt gleich per PN.)

Gruß Frank