Einleitung
Dieses Dokument beschreibt ein Problem mit der Einschränkung des Computerzugriffs (MAR) und bietet eine Lösung für dieses Problem.
Voraussetzungen
Angesichts der zunehmenden Anzahl privater Geräte ist es für Systemadministratoren wichtiger denn je, den Zugriff auf bestimmte Teile des Netzwerks auf unternehmenseigene Geräte zu beschränken. Das in diesem Dokument beschriebene Problem betrifft die sichere Identifizierung dieser Problembereiche und deren Authentifizierung ohne Unterbrechungen der Benutzerverbindungen.
Anforderungen
Cisco empfiehlt, dass Sie über Kenntnisse von 802.1X verfügen, um das vorliegende Dokument vollständig verstehen zu können. In diesem Dokument wird davon ausgegangen, dass Sie mit der 802.1X-Benutzerauthentifizierung vertraut sind, und es werden die Probleme und Vorteile im Zusammenhang mit der Verwendung von MAR und allgemeiner der Computerauthentifizierung hervorgehoben.
Verwendete Komponenten
Dieses Dokument ist nicht auf bestimmte Software- und Hardware-Versionen beschränkt.
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netz Live ist, überprüfen Sie, ob Sie die mögliche Auswirkung jedes möglichen Befehls verstehen.
Problem
MAR versucht im Grunde, ein Problem zu lösen, das den meisten aktuellen und bekannten Extensible Authentication Protocol (EAP)-Verfahren innewohnt, nämlich dass die maschinelle Authentifizierung und die Benutzerauthentifizierung separate, unabhängige Prozesse sind.
Die Benutzerauthentifizierung ist eine 802.1x-Authentifizierungsmethode, mit der die meisten Systemadministratoren vertraut sind. Die Idee ist, dass jedem Benutzer Anmeldeinformationen (Benutzername/Kennwort) zugewiesen werden, und dass diese Gruppe von Anmeldeinformationen eine physische Person darstellt (sie kann auch von mehreren Personen gemeinsam genutzt werden). Daher kann sich ein Benutzer mit diesen Anmeldeinformationen von überall im Netzwerk anmelden.
Eine Computerauthentifizierung ist technisch identisch, aber der Benutzer wird in der Regel nicht aufgefordert, die Anmeldeinformationen (oder das Zertifikat) einzugeben. Der Computer bzw. der Computer führt dies automatisch aus. Dazu muss der Computer bereits über gespeicherte Anmeldeinformationen verfügen. Der gesendete Benutzername lautet host/<MyPCHostname>, vorausgesetzt, auf Ihrem Computer ist <MyPCHostname> als Hostname festgelegt. Mit anderen Worten, es sendet host/ gefolgt von Ihrem Hostnamen.
Dieser Prozess ist zwar nicht direkt mit Microsoft Windows und Cisco Active Directory verbunden, wird jedoch einfacher wiedergegeben, wenn der Computer mit Active Directory verbunden wird, da der Hostname des Computers der Domänendatenbank hinzugefügt wird und Anmeldeinformationen ausgehandelt (und standardmäßig alle 30 Tage erneuert) und auf dem Computer gespeichert werden. Das bedeutet, dass die Authentifizierung des Computers von jedem Gerätetyp aus möglich ist, jedoch wesentlich einfacher und transparenter wiedergegeben wird, wenn der Computer mit Active Directory verbunden wird und Anmeldeinformationen vor dem Benutzer verborgen bleiben.
MAR als Lösung
Es ist leicht zu sagen, dass die Lösung für das Cisco Access Control System (ACS) oder die Cisco Identity Services Engine (ISE) geeignet ist, die MAR-Kriterien zu erfüllen. Vor der Implementierung sollten jedoch Vor- und Nachteile beachtet werden. Die Implementierung dieser Lösung wird am besten in den ACS- oder ISE-Benutzerhandbüchern beschrieben. In diesem Dokument wird daher nur erläutert, ob die Lösung berücksichtigt werden soll, und es werden mögliche Hindernisse genannt.
Vorteile
MAR wurde erfunden, weil Benutzer- und Geräteauthentifizierungen völlig getrennt sind. Daher kann der RADIUS-Server keine Überprüfung erzwingen, bei der sich Benutzer von unternehmenseigenen Geräten anmelden müssen. Mit MAR erzwingt der RADIUS-Server (ACS oder ISE auf Cisco Seite) für eine bestimmte Benutzerauthentifizierung, dass eine gültige Systemauthentifizierung innerhalb der X Stunden (in der Regel 8 Stunden, aber konfigurierbar) vorliegen muss, die der Benutzerauthentifizierung für denselben Endpunkt vorausgeht.
Daher ist eine Computerauthentifizierung erfolgreich, wenn die Anmeldeinformationen des Computers vom RADIUS-Server bekannt sind, in der Regel, wenn der Computer der Domäne angehört, und der RADIUS-Server dies mit einer Verbindung zur Domäne überprüft. Es liegt ganz im Ermessen des Netzwerkadministrators, festzustellen, ob eine erfolgreiche Computerauthentifizierung einen vollständigen oder nur einen eingeschränkten Zugriff auf das Netzwerk ermöglicht. Normalerweise wird dadurch zumindest die Verbindung zwischen dem Client und dem Active Directory geöffnet, sodass der Client Aktionen wie die Erneuerung des Benutzerkennworts oder das Herunterladen von Gruppenrichtlinienobjekten (Group Policy Objects, GPOs) ausführen kann.
Wenn eine Benutzerauthentifizierung von einem Gerät stammt, bei dem in den letzten Stunden keine Computerauthentifizierung stattgefunden hat, wird der Benutzer abgelehnt, auch wenn der Benutzer normalerweise gültig ist.
Der uneingeschränkte Zugriff wird einem Benutzer nur gewährt, wenn die Authentifizierung gültig ist und von einem Endpunkt aus abgeschlossen wurde, an dem in den letzten Stunden eine Computerauthentifizierung stattgefunden hat.
Nachteile
In diesem Abschnitt werden die Nachteile der Verwendung von MAR beschrieben.
MAR und Microsoft Windows Supplicant
Die Idee hinter MAR ist, dass eine Benutzerauthentifizierung nur dann erfolgreich ist, wenn der Benutzer über gültige Anmeldeinformationen verfügt. Eine erfolgreiche Computerauthentifizierung muss auch von diesem Client protokolliert werden. Sollte dies nicht der Fall sein, kann sich der Benutzer nicht authentifizieren. Das Problem dabei ist, dass diese Funktion manchmal versehentlich einen legitimen Client sperren kann, wodurch dieser zum Neustart gezwungen wird, um wieder Zugriff auf das Netzwerk zu erhalten.
Microsoft Windows führt die Computerauthentifizierung nur beim Start durch (wenn der Anmeldebildschirm angezeigt wird). Sobald der Benutzer die Benutzeranmeldeinformationen eingibt, wird eine Benutzerauthentifizierung durchgeführt. Wenn sich der Benutzer abmeldet (kehrt zum Anmeldebildschirm zurück), wird eine neue Computerauthentifizierung durchgeführt.
Hier ein Beispielszenario, das zeigt, warum MAR manchmal Probleme verursacht:
Benutzer X arbeitete den ganzen Tag auf seinem Laptop, der über eine Wireless-Verbindung verbunden war. Am Ende des Tages schließt er einfach den Laptop und verlässt die Arbeit. Dadurch befindet sich der Laptop im Ruhezustand. Am nächsten Tag kommt er zurück ins Büro und öffnet seinen Laptop. Jetzt kann er keine Wireless-Verbindung herstellen.
Wenn Microsoft Windows im Ruhezustand ist, wird ein Snapshot des Systems im aktuellen Zustand erstellt, der auch den Kontext der angemeldeten Benutzer enthält. Über Nacht läuft der im MAR-Cache gespeicherte Eintrag für den Benutzer-Laptop ab und wird gelöscht. Wenn der Laptop jedoch eingeschaltet ist, führt er keine Computerauthentifizierung durch. Stattdessen geht es direkt in eine Benutzerauthentifizierung, da dies das war, was der Winterschlaf aufgezeichnet hat. Die einzige Möglichkeit, dies zu beheben, besteht darin, den Benutzer abzumelden oder seinen Computer neu zu starten.
MAR ist zwar eine gute Funktion, kann jedoch zu Netzwerkstörungen führen. Diese Unterbrechungen lassen sich nur schwer beheben, wenn Sie die Funktionsweise von MAR verstehen. Wenn Sie MAR implementieren, ist es wichtig, die Endbenutzer darüber aufzuklären, wie sie Computer ordnungsgemäß herunterfahren und sich am Ende eines jeden Tages von jedem Computer abmelden können.
MAR und verschiedene RADIUS-Server
Es ist üblich, mehrere RADIUS-Server im Netzwerk zu Zwecken des Lastenausgleichs und der Redundanz zu verwenden. Nicht alle RADIUS-Server unterstützen jedoch einen gemeinsam genutzten MAR-Sitzungscache. Nur die ACS-Versionen 5.4 und höher sowie die ISE-Version 2.3 und höher unterstützen die MAR-Cache-Synchronisierung zwischen Knoten. Vor diesen Versionen ist es nicht möglich, eine Computerauthentifizierung für einen ACS/ISE-Server und eine Benutzerauthentifizierung für einen anderen Server durchzuführen, da diese nicht miteinander korrespondieren.
MAR und Wired-Wireless Switching
Der MAR-Cache vieler RADIUS-Server ist von der MAC-Adresse abhängig. Es handelt sich lediglich um eine Tabelle mit der MAC-Adresse von Laptops und dem Zeitstempel der letzten erfolgreichen Computerauthentifizierung. Auf diese Weise kann der Server feststellen, ob der Client in den letzten X Stunden vom Computer authentifiziert wurde.
Was passiert jedoch, wenn Sie Ihren Laptop mit einer kabelgebundenen Verbindung booten (und daher eine Computerauthentifizierung von Ihrer kabelgebundenen MAC durchführen) und dann tagsüber auf Wireless umstellen? Der RADIUS-Server hat keine Möglichkeit, Ihre Wireless-MAC-Adresse mit Ihrer kabelgebundenen MAC-Adresse zu korrelieren und zu wissen, dass Sie in den letzten X Stunden vom Computer authentifiziert wurden. Die einzige Möglichkeit besteht darin, sich abzumelden und Microsoft Windows zu veranlassen, eine weitere Computerauthentifizierung über eine Wireless-Verbindung durchzuführen.
Lösung
Neben vielen anderen Funktionen bietet Cisco AnyConnect den Vorteil vorkonfigurierter Profile, die eine Computer- und Benutzerauthentifizierung auslösen. Es gelten jedoch die gleichen Einschränkungen wie bei Microsoft Windows Supplicant, was die Authentifizierung des Computers betrifft, die nur bei der Abmeldung oder beim Neustart auftritt.
Darüber hinaus ist es mit AnyConnect Version 3.1 und höher möglich, EAP-FAST mit EAP-Verkettung durchzuführen. Hierbei handelt es sich im Grunde um eine einzige Authentifizierung, bei der Sie gleichzeitig zwei Paare von Anmeldeinformationen senden, den Benutzernamen/das Kennwort des Computers und den Benutzernamen/das Kennwort des Benutzers. So kann die ISE leichter überprüfen, ob beide erfolgreich sind. Da kein Cache verwendet wird und keine vorherige Sitzung abgerufen werden muss, ist dies zuverlässiger.
Beim Booten des PCs sendet AnyConnect nur eine Computerauthentifizierung, da keine Benutzerinformationen verfügbar sind. Bei der Benutzeranmeldung sendet AnyConnect jedoch sowohl die Computer- als auch die Benutzeranmeldeinformationen gleichzeitig. Wenn Sie die Verbindung trennen oder das Kabel abziehen bzw. neu anschließen, werden erneut sowohl die Computer- als auch die Benutzerdaten in einer einzigen EAP-FAST-Authentifizierung gesendet, die sich von den früheren Versionen von AnyConnect ohne EAP-Verkettung unterscheidet.
EAP-TEAP ist die langfristig beste Lösung, da sie speziell zur Unterstützung dieser Art von Authentifizierungen gemacht wird, aber EAP-TEAP wird in der nativen Komponente vieler Betriebssysteme noch nicht unterstützt