Beiträge

ClearPass, Active Directory und DNS

Es gibt heutzutage praktisch kein Unternehmen, das ohne ein Active Directory auskommt. Dort sind Anmeldeinformationen von Benutzern genauso gespeichert wie Sicherheitsrichtlinien für Computer. Wenn es darum geht, Netzwerkzugänge mit ClearPass abzusichern, erspart es den Administratoren viel Arbeit die Informationen aus dem Active Directory für ClearPass zu nutzen. Dieser Artikel zeigt die verschiedenen Einsatzzwecke und eventuelle Stolperfallen.

ClearPass und Active Directory

Ein Active Directory enthält neben Anmeldeinformationen auch Informationen über Gruppenzugehörigkeit oder Organisationseinheit des Benutzers. Diese Informationen können vom ClearPass genutzt werden um eine Anmeldung zu akzeptieren oder abzulehnen. Der Zugriff auf diese Informationen erfolgt per Lightweight Directory Access Protocol (LDAP, RFC4511).

Um diese Informationen mit ClearPass nutzen zu können, wird das Active Directory als Authentifizierungsquelle zum ClearPass hinzugefügt:

ClearPass benötigt einen Benutzer und ein Passwort, damit er sich am LDAP Anmelden kann. Wichtig ist darauf zu achten, dass das Passwort nicht abläuft. Danach kann ClearPass alle Informationen zu einem Benutzer aus dem AD lesen. Wenn AD over SSL verwendet wird und das Serverzertifikat überprüft werden soll, muss das Zertifikat der CA im ClearPass bekannt sein.

ClearPass Domain Join

ClearPass kann zwar jetzt Informationen wie zum Beispiel die Gruppenmitgliedschaft aus dem LDAP lesen, aber noch keine MSCHAPv2 (Microsoft Challenge-Handshake Authentication Protocol Version 2, RFC2759) Hash überprüfen. Diese wird aber für eine Netzwerkanmeldung mit EAP-PEAP und MSCHAPv2 benötigt. Die Kommunikation zwischen ClearPass und Active Directory für eine Überprüfung von MSCHAPv2 Hashes erfolgt mit NTLM (NT LAN Manager). Dazu braucht ClearPass ein Computer Konto im AD, muss also zur Domäne hinzugefügt werden.

Dazu benötigt man den FQDN eines Domain Controllers. Den NetBIOS Name erkennt ClearPass automatisch. Außerdem braucht man einen Domänen Account mit Domänenadministrator Rechten. Er wird nur genutzt um ClearPass hinzuzufügen und wird nicht gespeichert.

ClearPass und MSCHAPv2

Die Überprüfung des MSCHAPv2 Hashes erfolgt nicht gegen die Server die als Authentifizierungsquelle angegeben wurden. ClearPass fragt bei jeder Anmeldung per DNS, welche Domain Controller erreichbar sind. Das bedeutet, das Informationen für ClearPass lesbar im DNS vorhanden sein müssen.

Das kann schwierig sein, wenn ClearPass zu mehreren Domains hinzugefügt werden soll, da die DNS Server, die ClearPass anfragt die Informationen für beide Domains bereitstellen muss.

Können die Informationen nicht per DNS bereitgestellt werden, dann kann man für jede Domain die AD Server fest angeben:

Dann muss ClearPass nicht per DNS erfragen, welche Server er nutzen kann.

ClearPass und DNS

Wie im vorherigen Absatz beschrieben, verlässt sich ClearPass auf Informationen aus dem DNS. Um die DNS Server zu entlasten, ist es Best Practice DNS Caching zu aktivieren. Dann merkt sich ClearPass die Informationen und muss nicht immer die DNS Server fragen.

Damit wird die Last auf den DNS Servern deutlich gesenkt und ClearPass arbeitet ein wenig schneller.

Mattermost Nachrichten mit ClearPass versenden

Der Access Tracker im ClearPass ist eine wunderbare Möglichkeit, Troubleshooting zu betreiben. Allerdings hat man den Access Tracker nicht ständig im Blick und kann daher nur auf Beschwerden der Nutzer reagieren. Es wäre praktisch, wenn ClearPass aktiv alarmieren könnte, wenn etwas schief geht. Leider sind die Alarmierungsmöglichkeiten im ClearPass beschränkt. Mit einem kleinen Trick kann man jedoch über Systeme wie Microsoft-Teams, Slack oder Mattermost Nachrichten mit ClearPass versenden.

Endpoint Context Server im ClearPass hinzufügen

ClearPass kann Informationen mit anderen Systemen austauschen. Dazu richtet man diese Systeme als Endpoint Context Server im ClearPass ein.

ClearPass Endpoint hinzufügen.

Es gibt viele vorgefertigte Server. Wir werden hier einen Mattermost Server einrichten. Dazu wählen wir einen Generic HTTP Context Server.

ClearPass Endpoint modifizieren.

Dabei tragen wir die URL des Mattermost Servers ein. Soll das Zertifikat des Servers überprüft werden, muss man dir Root-CA des Servers im ClearPass importieren. Das behandeln wir hier nicht, daher ist die Option Validate Server nicht ausgewählt.

Mattermost API im ClearPass hinzufügen

Den Server, mit dem wir kommunizieren wollen, haben wir jetzt angelegt. Als nächstes müssen wir ClearPass beibringen, wie er eine Nachricht schickt. Dazu konfigurieren wir eine Context Server Action. 

Darin definieren wir den Server, den ClearPass anspricht und die Methode, mit der ClearPass die Daten sendet. Die URL muss in Mattermost generiert werden, das soll jedoch kein Bestandteil dieses Blog-Eintrages sein. Eine Anmeldung benötigen wir nicht.

Als Nächstes definieren wir die HTTP-Header.

ClearPass verwendet als Format der gesendeten Daten JSON. Die eigentlichen Daten definieren wir im Reiter Content.

Mattermost JSON FormatIn der Nachricht können Variablen aus ClearPass genutzt werden, wie zum Beispiel der Benutzername der Anmeldung.

Enforcement Profile

Damit ClearPass eine Nachricht verschicken kann, definieren wir ein Enforcement Profile.

Als Typ wählen Sie dabei HTTP Based Enforcement aus, als Target Server wählen Sie unseren Mattermost Server aus und als Action unsere Context Server Action. Immer wenn dieses Enforcement Profile ausgeführt wird, sendet ClearPass eine Nachricht über Mattermost. Damit kann man sich Informieren lassen, wenn sich zum Beispiel jemand an einem Switch anmeldet oder wenn eine Anmeldung fehlschlägt.

Fehlerseite bei zufälligen MAC-Adressen mit ClearPass anzeigen

In einem vorherigen Beitrag haben wir die Auswirkung zufälliger MAC-Adressen im Netz (MAC-Address Randomization) beschrieben. In diesem Artikel zeigen wir, wie Nutzern bei zufälligen MAC-Adressen mit ClearPass eine Fehlerseite angezeigt werden kann. Dabei werden ein Aruba-WLAN mit Controller und Aruba ClearPass eingesetzt. Bitte beachten Sie, dass zufällige MAC-Adressen durchaus sinnvoll sind und in vielen Fällen nicht verboten werden müssen. Ein Beispiel, bei dem es nötig ist, zufällige MAC-Adressen zu verbieten, sind Abfragen von ClearPass bei MDM-Systemen.

Erkennen von zufälligen MAC-Adressen

Auch wenn das zunächst verwunderlich klingt, folgen zufällige MAC-Adressen einem gewissen Schema. Sie haben an der zweiten Stelle die Ziffer 2 oder 6, oder den Buchstaben A oder E. Damit ist es möglich, eine zufällige MAC-Adresse eindeutig zu erkennen. Auf dieser Grundlage können wir das ClearPass Role Mapping nutzen, um einen Benutzer mit zufälliger MAC Adresse zu kennzeichnen. Die folgende Abbildung zeigt den ClearPass Regeleditor und eine Regel, die hierzu einen regulären Ausdruck einsetzt.

Alle Geräte, die sich jetzt mit einer zufälligen MAC-Adresse anmelden, bekommen die Rolle ING_Random_MAC zugewiesen. Das ist die erste Voraussetzung dafür, dass wir eine Fehlerseite anzeigen können.

Fehlerseite im ClearPass konfigurieren

Als Nächstes müssen Sie eine Fehlerseite im ClearPass anlegen. Dazu kann im Gast-Modul von ClearPass eine bereits existierende Seite kopiert und angepasst werden.

Hier ist ein Beispiel wie die Fehlerseite aussehen kann:

Passende Rolle im Controller anlegen

Damit Benutzer auf die Fehlerseite umgeleitet werden, müssen Sie im Controller eine neue Rolle anlegen. Als Policies müssen hier logon-control und captiveportal hinzugefügt werden.

Unter Captive Portal müssen die URL des ClearPass Servers und die entsprechende Fehlerseite angegeben werden. Auch ein Authentifizierung-Server muss angegeben werden. Da hier keine Anmeldung stattfindet, kann der interne Server angegeben werden.

Ein Benutzer, der die Rolle ing-random-mac zugewiesen bekommt, darf per DHCP eine IP-Adresse bekommen, DNS Anfragen stellen und wird beim Aufruf einer http Seite auf die entsprechende Fehlerseite umgeleitet.

ClearPass Enforcement Profile und Enforcement Policies anlegen

Damit Clearpass einem User die Rolle ing-random-mac zuweist, müssen Sie zunächst ein Enforcement Profile dafür anlegen:

Diese Rolle kann dann in einer Policy zugewiesen werden:

Damit können Sie einem User mit ClearPass eine Fehlerseite anzeigen, falls diese versuchen, sich mit zufälligen MAC-Adressen im WLAN anzumelden.

Mac Address Randomization

Zufällige MAC-Adressen (aka MAC-Address Randomization)

Um den Datenschutz bei Mobilgeräten zu erhöhen, haben die großen Software Hersteller Apple, Google und Microsoft in ihren neuen Software Releases ein neues Feature eingeführt: Zufällige MAC-Adressen (engl. MAC-Address Randomization). Wozu dieses Feature da ist und was das für ein Unternehmens-WLAN bedeutet, zeigt dieser Artikel.

Wozu dienen zufällige MAC-Adressen?

Um zu verstehen, warum MAC-Address Randomization ein nützliches Feature ist, ist es wichtig zu wissen, was eine MAC-Adresse eigentlich ist. So wie eine IP-Adresse auf Layer 3 ermöglicht die MAC-Adresse eine eindeutige Identifizierung in einem Layer 2 Netz. MAC steht dabei für Media Access Control. Diese nutzt man also dafür, den Zugriff auf das physikalische Medium zu koordinieren. Mit einer MAC-Adresse können wir ein Gerät identifizieren und Frames (Dateneinheiten auf L2) an das Gerät senden. Umgekehrt sendet das Gerät bei allen Frames seine MAC-Adresse mit, damit der Empfänger weiß, wem er antworten soll.

Eine MAC-Adresse ist also ein essenzieller Teil der Kommunikation auf Layer 2. Ein Client sendet sie immer mit und selbst wenn im WLAN WPA2/3 mit Verschlüsselung eingesetzt wird, ist die MAC-Adresse selbst immer unverschlüsselt. Denn nur so kann ein Empfänger ermitteln, ob ein Paket für ihn bestimmt ist und macht sich die Arbeit, es zu entschlüsseln.

Wenn die MAC-Adresse so wichtig ist, warum sollte man dann eine zufällige Adresse nehmen und was hat das mit Datenschutz zu tun? Wie im vorigen Absatz erwähnt, wird die MAC-Adresse im Frame immer unverschlüsselt gesendet. Das ist gerade im WLAN ein Problem, weil jeder mithören kann. Es ist also möglich festzustellen, wer mit einem WLAN verbunden ist und damit auch, wer sich in der Nähe aufhält.

Und es wird noch problematischer. Um festzustellen, welche WLANs in der Reichweite eines Gerätes sind, sendet jeder WLAN-Client sogenannte Probe-Requests. Damit fordert der Client alle Access Points in der Nähe auf, ihm Informationen über die SSIDs die sie ausstrahlen, zu senden. In diesen Probe-Requests steht ebenfalls die MAC-Adresse des Clients als Absender. Damit ist es möglich, die Position eines WLAN Clients zu verfolgen, ohne dass er mit einem WLAN verbunden ist.

Diese Techniken werden in kommerziellen Lösungen zur Verfolgung von Endgeräten tatsächlich eingesetzt. Ein möglicher Anwendungsfall ist die Analyse von Besuchern von Shoppingcentern. Dabei werden Besucherströme analysiert oder wiederkehrende Besucher identifiziert.

Um diese Analysen zu erschweren, können Sie zufällige MAC Adressen verwenden.

Wie funktionieren zufällige MAC-Adressen?

Da die MAC-Adresse ein so wichtiges Merkmal in der Kommunikation ist, muss es eine gewisse Regelmäßigkeit geben. Sucht Ihr Endgerät nach vorhandenen WLANs mit einem Probe-Request, verwendet es bei den Betriebssystemen Android ab Version 6 und Apple iOS 9 immer eine neue zufällige MAC-Adresse. Das bedeutet, dass eine Lokalisierung erschwert wird, da die MAC-Adresse häufig wechselt.

Wenn man sich jedoch mit einem WLAN verbindet, wurde bisher immer die physikalische MAC Adresse verwendet. Es war also immer noch möglich, ein Gerät zu verfolgen, wenn es sich mit verschiedenen WLANs verbindet. Das hat sich mit iOS 14 und Android 10 geändert. Hier generiert der Client für jede WLAN-SSID mit der er sich verbindet, eine neue zufällige MAC-Adresse. Die MAC-Adresse ist also unterschiedlich für jedes WLAN und ein Gerät kann so nicht über verschiedene WLANs verfolgt werden.

Dabei folgen die zufälligen MAC-Adressen einem gewissen Schema. Wenn wir uns die MAC-Adresse 92:B1:C8:52:D3:84 ansehen, kann man feststellen, dass dies eine zufällige MAC-Adresse ist. Die generierten MAC-Adressen haben an der zweiten Stelle immer die Zahl 2 oder 6, oder den Buchstaben A oder E. Der Rest der MAC Adresse ist dann tatsächlich zufällig.

Verbindet sich ein Client mit einem WLAN, generiert er eine neue zufällige MAC-Adresse. Diese MAC-Adresse bleibt dann für alle zukünftigen Verbindungen mit diesem WLAN bestehen. Das kann man umgehen, indem man das WLAN “vergisst” und sich neu verbindet. Dann generiert er eine neue MAC-Adresse.

In Android 11 und Windows 10 ist es außerdem möglich, dass das System die MAC-Adresse alle 24 Stunden neu generiert. Diese Option ist normalerweise deaktiviert.

Was bedeutet das für ein Unternehmens-WLAN?

Eine gute Nachricht vorweg: Für ein 802.1X gesichertes WLAN ist die MAC-Address Randomization nicht relevant. Hier prüft der Accesspoint keine MAC-Adresse, sondern diese dient nur der Kommunikation von Client und AP.

Verwenden Sie die MAC-Adresse zur Authentifizierung, zum Beispiel in einem WPA2/3-PSK WLAN kann etwas Arbeit auf den Administrator zukommen. Zwar soll zum Beispiel iOS nach dem Update auf iOS 14 alle bis dahin bekannten Netzwerke mit der physikalischen MAC-Adresse ansprechen, jedoch verändert sich diese, sobald der Benutzer das Netzwerk löscht und neu anlegt. Sobald das geschehen ist, muss der Administrator die Liste der erlaubten MAC-Adressen anpassen. Hier ist es besser, auf eine Anmeldung mit 802.1X zu setzen, sofern die Geräte das unterstützen.

Probleme kann es geben, wenn bei der Anmeldung weitere externe Dienste angefragt werden. Ein typisches Beispiel ist ein ClearPass Server der bei der Anmeldung von mobilen Endgeräten ein MDM-System anfragt. Denn die Zuordnung von Anmeldeversuch und Gerät im MDM geschieht meist über die MAC-Adresse. In diesem Fall wäre für alle Endgeräte eine Anmeldung nicht möglich, da eine Abfrage vom MDM keine Ergebnisse liefern kann. In diesem Artikel ist eine Anleitung zu finden, wie man Benutzern mit einer zufälligen MAC Adresse eine Fehlerseite anzeigt.

Automatische VLAN Konfiguration mit Aruba ClearPass

In diesem Blogpost zeigen wir Ihnen die notwenigen Schritte für eine Automatische VLAN Konfiguration mit Hilfe von ClearPass. Aus vielen Unternehmen ist eine Netzwerksegmentierung nicht mehr weg zu denken. Zum einen bietet Sie in Verbindung mit ACLs oder einer Firewall einen enormen Gewinn an Sicherheit, zum anderen kann so die Broadcast-Last in einem Netz gering gehalten werden. Mit zunehmender Segmentierung steigt daher auch die Anzahl der VLANs. Eine mögliche Folge davon ist, dass die Administratoren viel Zeit für die VLAN Konfiguration aufwenden, gerade dann wenn Mitarbeiter umziehen, oder neue Endgeräte in das Netzwerk integriert werden sollen. Außerdem ist es für die Benutzer schwer zu wissen, welches Gerät sie an welchen Port anschließen müssen.

Um sich die Arbeit ein wenig zu erleichtern, haben manche Kunden bestimmte Portgruppen statisch ein VLAN zugewiesen, so dass beispielsweise auf einem Verteiler-Switch Port 1-20 fest für Telefone vorgesehen sind und Ports 21-40 für PC-Systeme. Diese Ports werden dann noch farblich gekennzeichnet, damit man im Verteilerraum schnell erkennen kann, welcher Port zu welchem VLAN gehört. Daher resultiert die Bezeichnung des sog. “Colored”-Ports. Natürlich führt dieses Vorgehen dazu, dass viele Ports ungenutzt bleiben, da die Größe der Portgruppen nicht an den Bedarf angepasst wird.

Aruba ClearPass

An dieser Stelle kann Aruba ClearPass den Netzwerkadministrator entlasten, denn es erhöht nicht nur die Sicherheit eines Netzwerkes, sondern kann auch Switch Ports dynamisch konfigurieren. So können sich die Admins auf wichtige Aufgaben konzentrieren, anstatt unnötige Zeit auf Konfiguration zu verwenden. Außerdem können Sie so alle Ports auf einem Switch dynamisch und nach Bedarf verwenden. Im Gegensatz zu den speziell konfigurierten Colored Ports haben wir jetzt dynamisch nutzbare Colorless Ports.

Bei diesen Ports ist es egal, welches Gerät an den Port angeschlossen wird, da die Konfiguration anhand des Regelwerks des ClearPass Servers vorgenommen wird. ClearPass erkennt, um welchen Gerätetyp es sich handelt konfiguriert den Switchport in das entsprechende VLAN. Außerdem kann ClearPass noch gerätespezifische ACLs auf den Port legen. Das Ganze funktioniert mit einer Kombination aus Device Profiling und MAC Authentication. Zusäzliche Authentifizierungen auf Basis von 802.1X wären ebenso denkbar.

ClearPass Profiler

Das Herzstück ist in diesem Fall der ClearPass Universal Profiler. Mit ihm ist es möglich verschiedene Geräte eindeutig zu identifizieren und in Klassen einzuteilen. Dazu bedient sich ClearPass verschiedener Quellen. Die an häufigsten genutzte Quelle ist der DHCP-Fingerprint. Jedes Gerät, das eine IP Adresse benötigt schickt einen DHCP Request mit verschiedenen Optionen und Attributen. Die Kombination aus den Optionen und Attributen ist so eindeutig, dass ClearPass sagen kann, ob es sich beispielsweise um ein Windows PC mit Windows 7, oder um einen Windows PC mit Windows 10 handelt.

DHCP Fingerprint Windows

Um den Profiler mit Daten zu versorgen, muss sichergestellt sein, dass er alle DHCP Anfragen mitbekommt. Eine gängige Lösung ist dabei, den ClearPass als zusätzlichen DHCP Server für alle VLANs bekannt zu geben. In der Regel müssen Sie also die DHCP Relay Konfiguration auf dem Router oder der Firewall erweitern. Das ist gefahrlos möglich, da ClearPass die Anfragen niemals beantwortet, sondern nur mitliest. Für jeden Client, der versucht per DHCP eine IP Adresse zu beziehen, legt ClearPass einen Eintrag in seiner Endpunktdatenbank an. Dort können alle Informationen zu dem Endpunkt, wie z-B. Gerätetyp oder Betriebssystem abgerufen werden.

ClearPass Enforcement Profile

Dabei ist das VLAN 18, das gewählt wird wenn nichts anderes zutrifft eine Art Quarantäne-VLAN, in dem nur DHCP erlaubt ist um dem ClearPass die Möglichkeit zu geben unbekannte Geräte zu profilen.

ClearPass Service

Ein fertiger Service für MAC Authentifizierung könnte dann so aussehen:

ClearPass Service Automatische VLAN Konfiguration

Dieser Service lässt erst mal alle Geräte zu, die sich per MAC Authentifizierung anmelden. Das ganze kann natürlich auch auf bekannte Geräte eingeschränkt werden. Dann wählt Clearpass anhand der oben abgebildeten Policy das entsprechende VLAN aus. Falls es sich um ein unbekanntes Gerät handelt, kommt es ins VLAN 18 und ClearPass kann es in seine Profiler-Datenbank zuordnen. Wenn das geschehen ist wir der Port an dem das Gerät angeschlossen ist, kurz aus und wieder eingeschaltet, damit sich das Gerät nun authentifizieren muss und dann in das richtige VLAN verschoben werden kann.

Gerade in großen Netzwerken bringt ClearPass einen enormen Gewinn an Produktivität, da nun die VLAN Konfiguration automatisiert abläuft.

Die offizielle Aruba Clearpass Produktseite finden Sie hier.