PDF(790.6 KB) Mit Adobe Reader auf verschiedenen Geräten anzeigen
Aktualisiert:13. September 2023
Dokument-ID:220919
Inklusive Sprache
In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Informationen zu dieser Übersetzung
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
Dieses Dokument beschreibt die Konfiguration, Validierung und Fehlerbehebung der 802.1x-Netzwerkzugriffskontrolle (NAC) auf Catalyst Switches der Serie 9000.
Voraussetzungen
Anforderungen
Cisco empfiehlt, dass Sie über Kenntnisse in folgenden Bereichen verfügen.
Catalyst Switches der Serie 9000
Identity Services Engine (ISE)
Verwendete Komponenten
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
Catalyst 9300
Catalyst 9400
Catalyst 9500
Catalyst 9600
Cisco IOS® XE 17.6.x und spätere Version
ISE-VM-K9 Version 3.0.0.458
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 Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Anmerkung: Die Befehle, um diese Funktionen auf anderen Cisco Plattformen zu aktivieren, finden Sie im entsprechenden Konfigurationsleitfaden.
Hintergrundinformationen
Der 802.1x-Standard definiert ein Client-Server-basiertes Zugriffssteuerungs- und Authentifizierungsprotokoll, das nicht autorisierte Clients daran hindert, über öffentlich zugängliche Ports eine Verbindung zu einem LAN herzustellen, sofern sie nicht ordnungsgemäß authentifiziert sind. Der Authentifizierungsserver authentifiziert jeden Client, der an einen Switch-Port angeschlossen ist, bevor er die vom Switch oder vom LAN angebotenen Dienste bereitstellt.
Die 802.1x-Authentifizierung umfasst drei verschiedene Komponenten:
Supplicant - Client, der Anmeldeinformationen zur Authentifizierung sendet Authentifikator - Das Netzwerkgerät, das Netzwerkverbindungen zwischen dem Client und dem Netzwerk bereitstellt und Netzwerkverkehr zulassen oder blockieren kann. Authentifizierungsserver - Server, der Anforderungen für den Netzwerkzugriff empfangen und darauf reagieren kann, teilt dem Authentifizierer mit, ob die Verbindung zugelassen werden kann, und gibt verschiedene andere Einstellungen an, die für die Authentifizierungssitzung gelten.
Dieses Dokument richtet sich an Techniker und Support-Mitarbeiter, die nicht unbedingt auf die Sicherheit ausgerichtet sind. Weitere Informationen zur 802.1x Port-basierten Authentifizierung und Komponenten wie die ISE finden Sie im entsprechenden Konfigurationsleitfaden.
Anmerkung: Informationen zur genauesten Standardkonfiguration der 802.1x-Authentifizierung finden Sie im entsprechenden Konfigurationsleitfaden für die jeweilige Plattform und Codeversion.
Basiskonfiguration
In diesem Abschnitt wird die erforderliche Basiskonfiguration für die Implementierung der portbasierten 802.1x-Authentifizierung beschrieben. Weitere Erläuterungen zu den Funktionen finden Sie auf der Registerkarte "Addendums" (Ergänzungen) dieses Dokuments. Es gibt geringfügige Abweichungen bei den Konfigurationsstandards von Version zu Version. Validieren Sie Ihre Konfiguration anhand Ihres aktuellen Konfigurationsleitfadens.
Vor der Konfiguration der portbasierten 802.1x-Authentifizierung muss die Authentifizierung, Autorisierung und Abrechnung (AAA) aktiviert und eine Methodenliste erstellt werden.
Methodenlisten beschreiben die Sequenz und die Authentifizierungsmethode, die zur Authentifizierung eines Benutzers abgefragt werden müssen.
Aktivieren Sie 802.1x auf der Client-Schnittstelle.
C9300(config)# interface TenGigabitEthernet 1/0/4 C9300(config-if)# switchport mode access C9300(config-if)# authentication port-control auto C9300(config-if)# dot1x pae authenticator C9300(config-if)# end
IBNS 2.0
Identity-Based Networking Services (IBNS) 2.0 baut auf dem herkömmlichen IBNS 1.0-Framework auf und ersetzt es. Es trägt der Komplexität und Konfiguration von IBNS 1.0 Rechnung, indem es eine optimierte und leistungsstärkere Policy Engine namens Access Session Manager einführt.
IBNS 2.0-Konfiguration
- Um IBNS 2.0 zu aktivieren, müssen Sie den Befehl im privilegierten Modus auf Ihrem Cisco Switch ausführen:
#authentication display new-style
- Konfigurieren Sie den Switch-Port für IBNS 2.0 mithilfe der folgenden Befehle:
access-session host-mode {single-host | multi-domain | multi-auth | multi-host} access-session port-control auto dot1x pae authenticator {mab} service-policy type control subscriber TEST
Diese Befehle aktivieren die 802.1x-Authentifizierung und optional die MAB-Funktion (MAC Authentication Bypass) auf der Schnittstelle. Wenn Sie die neue Syntax verwenden, verwenden Sie Befehle, die mit access-session beginnen. Der Zweck dieser Befehle ist derselbe wie für Befehle, die die alte Syntax verwenden (beginnend mit dem Schlüsselwort "authentication").
Wenden Sie eine Service-Policy an, um eine Policy-Map anzugeben, die für die Schnittstelle verwendet werden kann.
- Die erwähnte Richtlinienzuweisung definiert das Verhalten des Switches (Authentifikator) während der Authentifizierung.
Sie können z. B. festlegen, was bei einem Authentifizierungsfehler geschehen kann. Für jedes Ereignis können Sie mehrere Aktionen konfigurieren, basierend auf dem Ereignistyp, der in der Klassenzuordnung zugeordnet ist, die unter diesem Ereignis konfiguriert wurde. Sehen Sie sich als Beispiel die Liste an (policy-map TEST). Wenn der dot1x-Endpunkt, der mit der Schnittstelle verbunden ist, auf die diese Richtlinie angewendet wird, fehlschlägt, wird die in DOT1X_FAILED definierte Aktion ausgeführt. Wenn Sie dasselbe Verhalten für Klassen wie MAB_FAILED und DOT1X_FAILED angeben möchten, können Sie immer die Standardklasse "class-map" verwenden.
policy-map type control subscriber TEST (...) event authentication-failure match-first 10 class DOT1X_FAILED do-until-failure 10 terminate dot1x (...) 40 class always do-until-failure 10 terminate mab 20 terminate dot1x 30 authentication-restart 60 (...)
- Policy-Map, die für IBNS 2.0 verwendet wird, muss immer über einen Abonnenten für die Typsteuerung verfügen. Sie können die Liste der verfügbaren Ereignisse auf folgende Weise anzeigen:
- In der Eventkonfiguration haben Sie die Möglichkeit zu definieren, wie Klassen ausgewertet werden können:
Switch(config-event-control-policymap)#event authentication-failure ? match-all Evaluate all the classes match-first Evaluate the first class
- Sie können ähnliche Optionen für Klassenzuordnungen definieren. Hier geben Sie jedoch an, wie Aktionen ausgeführt werden können, wenn eine Klasse zugeordnet wird:
Switch(config-class-control-policymap)#10 class always ? do-all Execute all the actions do-until-failure Execute actions until one of them fails do-until-success Execute actions until one of them is successful
- Letzter Teil (optional) der Konfiguration im neuen Stil von dot1x ist class-map. Er kann auch "control subscrib" (Steuerteilnehmer) eingeben und wird verwendet, um bestimmtes Verhalten oder bestimmten Datenverkehr anzupassen. Konfigurieren Sie die Anforderungen für die Klassenzuordnungsbedingungsauswertung. Sie können angeben, dass alle Bedingungen oder eine beliebige Bedingung oder keine der Bedingungen übereinstimmen müssen.
Switch(config)#class-map type control subscriber ? match-all TRUE if everything matches in the class-map match-any TRUE if anything matches in the class-map match-none TRUE if nothing matches in the class-map
- Dies ist ein Beispiel für eine Klassenzuordnung, die für einen Fehler bei der 802.1x-Authentifizierung verwendet wird:
class-map type control subscriber match-all DOT1X_FAILED match method dot1x match result-type method dot1x authoritative
In diesem Abschnitt finden Sie Hintergrundinformationen zu 801.1x sowie Informationen zum Überprüfen der Konfiguration und des Betriebs.
Einführung in 802.1x
802.1x umfasst zwei verschiedene Arten von Datenverkehr: Datenverkehr zwischen Client und Authentifizierer (Point-to-Point) über EAPoL (Extensible Authentication Protocol over LAN) und Datenverkehr zwischen Authentifizierer und Authentifizierungsserver, der über RADIUS gekapselt wird.
Dieses Diagramm stellt den Datenfluss für eine einfache dot1x-Transaktion dar.
Der Authenticator (Switch) und der Authentifizierungsserver (ISE, zum Beispiel) werden oft durch Layer 3 getrennt. RADIUS-Datenverkehr wird über das Netzwerk zwischen Authentifizierer und Server geleitet. EAPoL-Datenverkehr wird über die direkte Verbindung zwischen Supplicant (Client) und Authenticator ausgetauscht.
Beachten Sie, dass das MAC-Lernen nach der Authentifizierung und Autorisierung stattfindet.
Bei der Lösung eines 802.1x-Problems sollten Sie folgende Fragen beachten:
Ist sie korrekt konfiguriert?
Ist der Authentifizierungsserver erreichbar?
Welchen Status hat der Authentifizierungs-Manager?
Gibt es Probleme bei der Paketübermittlung zwischen Client und Authentifizierer oder zwischen Authentifizierer und Authentifizierungsserver?
Konfiguration
Einige Konfigurationen unterscheiden sich geringfügig zwischen den Hauptversionen. Plattform-/codespezifische Informationen finden Sie im entsprechenden Konfigurationsleitfaden.
AAA muss für die Verwendung von 802.1x Port-Based Authentication konfiguriert werden.
Für 'dot1x' muss eine Liste mit Authentifizierungsmethoden erstellt werden. Dies stellt eine allgemeine AAA-Konfiguration dar, in der 802.1x aktiviert ist.
C9300#show running-config | section aaa
aaa new-model <-- This enables AAA.
aaa group server radius ISEGROUP <-- This block establishes a RADIUS server group named "ISEGROUP".
server name DOT1x
ip radius source-interface Vlan1
aaa authentication dot1x default group ISEGROUP <-- This line establishes the method list for 802.1X authentication. Group ISEGROUP is be used.
aaa authorization network default group ISEGROUP
aaa accounting update newinfo periodic 2880
aaa accounting dot1x default start-stop group ISEGROUP
C9300#show running-config | section radius
aaa group server radius ISEGROUP
server name DOT1x
ip radius source-interface Vlan1 <-- Notice 'ip radius source-interface' configuration exists in both global configuration and the aaa server group block. These need to agree if configured in both places.
ip radius source-interface Vlan1
radius server DOT1x
address ipv4 10.122.141.228 auth-port 1812 acct-port 1813 <-- 1812 and 1813 are default auth-port and acct-port, respectively.
key secretKey
Dies ist eine Beispiel-Schnittstellenkonfiguration, bei der 802.1x aktiviert ist. MAB (MAC Authentication Bypass) ist eine gängige Backup-Methode zur Authentifizierung von Clients, die keine dot1x-Supplicants unterstützen.
C9300#show running-config interface te1/0/4
Building configuration...
Current configuration : 148 bytes
!
interface TenGigabitEthernet1/0/4
switchport access vlan 50
switchport mode access authentication order dot1x mab <-- Specifies authentication order, dot1x and then mab authentication priority dot1x mab <-- Specifies authentication priority, dot1x and then mab
authentication port-control auto <-- Enables 802.1x dynamic authentication on the port mab <-- Enables MAB
dot1x pae authenticator <-- Puts interface into "authenticator" mode.
end
Bestimmen Sie, ob eine MAC-Adresse an der Schnittstelle mit show mac address-table interface <Schnittstelle> erfasst wird. Die Schnittstelle erhält eine MAC-Adresse erst nach erfolgreicher Authentifizierung.
C9300#show mac address-table interface te1/0/4
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
50 0800.2766.efc7 STATIC Te1/0/4 <-- The "type" is STATIC and the MAC persists until the authentication session is cleared.
Total Mac Addresses for this criterion: 1
Authentifizierungssitzung
Show-Befehle stehen für die Validierung der 802.1x-Authentifizierung zur Verfügung.
Verwenden Sie show authentication sessions oder show authentication sessions <Schnittstelle>, um Informationen über die aktuellen Authentifizierungssitzungen anzuzeigen. In diesem Beispiel wurde nur für Te1/0/4 eine aktive Authentifizierungssitzung eingerichtet.
C9300#show authentication sessions interface te1/0/4
Interface MAC Address Method Domain Status Fg Session ID
--------------------------------------------------------------------------------------------
Te1/0/4 0800.2766.efc7 dot1x DATA Auth 13A37A0A0000011DC85C34C5 <-- "Method" and "Domain" in this example are dot1x and DATA, respectively. Multi-domain authentication is supported.
Key to Session Events Blocked Status Flags:
A - Applying Policy (multi-line status for details)
D - Awaiting Deletion
F - Final Removal in progress
I - Awaiting IIF ID allocation
P - Pushed Session
R - Removing User Profile (multi-line status for details)
U - Applying User Profile (multi-line status for details)
X - Unknown Blocker
Runnable methods list:
Handle Priority Name
13 5 dot1xSup
1 5 dot1x
2 10 webauth
14 15 mab
Show authentication sessions interface <Schnittstelle> (Details der Authentifizierungssitzung anzeigen) enthält zusätzliche Details zu einer bestimmten Schnittstellenauthentifizierungssitzung.
C9300#show authentication session interface te1/0/4 details
Interface: TenGigabitEthernet1/0/4
IIF-ID: 0x14D66776
MAC Address: 0800.2766.efc7
IPv6 Address: Unknown
IPv4 Address: Unknown
User-Name: alice
Status: Authorized
Domain: DATA
Oper host mode: multi-auth
Oper control dir: both
Session timeout: N/A
Acct update timeout: 172800s (local), Remaining: 152363s
Common Session ID: 13A37A0A0000011DC85C34C5
Acct Session ID: 0x00000002
Handle: 0xe8000015
Current Policy: POLICY_Te1/0/4 <-- If a post-authentication ACL is applied, it is listed here.
Local Policies:
Service Template: DEFAULT_LINKSEC_POLICY_SHOULD_SECURE (priority 150)
Security Policy: Should Secure
Server Policies:
Method status list:
Method State
dot1x Authc Success <-- This example shows a successful 802.1x authentication session.
Wenn die Authentifizierung auf einer Schnittstelle aktiviert ist, aber keine aktive Sitzung vorhanden ist, wird die Liste der ausführbaren Methoden angezeigt. 'Keine Sitzungen entsprechen angegebenen Kriterien' wird ebenfalls angezeigt.
C9300#show authentication sessions interface te1/0/5
No sessions match supplied criteria.
Runnable methods list:
Handle Priority Name
13 5 dot1xSup
1 5 dot1x
2 10 webauth
14 15 mab
Wenn auf der Schnittstelle keine Authentifizierung aktiviert ist, wird auf der Schnittstelle kein Auth Manager erkannt. 'Keine Sitzungen entsprechen angegebenen Kriterien' wird ebenfalls angezeigt.
C9300#show authentication sessions interface te1/0/6 No sessions match supplied criteria. No Auth Manager presence on this interface
Erreichbarkeit zum Authentifizierungsserver
Die Erreichbarkeit des Authentifizierungsservers ist eine Voraussetzung für eine erfolgreiche 802.1x-Authentifizierung.
Verwenden Sie ping <server_ip> für einen Schnelltest der Erreichbarkeit. Stellen Sie sicher, dass Ihr Ping von der RADIUS-Quellschnittstelle stammt.
C9300#ping 10.122.141.228 source vlan 1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.122.141.228, timeout is 2 seconds:
Packet sent with a source address of 10.122.163.19
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms
Der Befehl show aaaa servers identifiziert den Serverstatus und liefert Statistiken zu Transaktionen mit allen konfigurierten AAA-Servern.
C9300#show aaa servers
RADIUS: id 3, priority 1, host 10.122.141.228, auth-port 1812, acct-port 1813, hostname DOT1x <-- Specific server
State: current UP, duration 84329s, previous duration 0s <-- Current State
Dead: total time 0s, count 1
Platform State from SMD: current UP, duration 24024s, previous duration 0s
SMD Platform Dead: total time 0s, count 45
Platform State from WNCD (1) : current UP
Platform State from WNCD (2) : current UP
Platform State from WNCD (3) : current UP
Platform State from WNCD (4) : current UP
Platform State from WNCD (5) : current UP
Platform State from WNCD (6) : current UP
Platform State from WNCD (7) : current UP
Platform State from WNCD (8) : current UP, duration 0s, previous duration 0s
Platform Dead: total time 0s, count 0UP
Quarantined: No
Authen: request 510, timeouts 468, failover 0, retransmission 351 <-- Authentication Statistics
Response: accept 2, reject 2, challenge 38
Response: unexpected 0, server error 0, incorrect 12, time 21ms
Transaction: success 42, failure 117
Throttled: transaction 0, timeout 0, failure 0
Malformed responses: 0
Bad authenticators: 0
Dot1x transactions:
Response: total responses: 42, avg response time: 21ms
Transaction: timeouts 114, failover 0
Transaction: total 118, success 2, failure 116
MAC auth transactions:
Response: total responses: 0, avg response time: 0ms
Transaction: timeouts 0, failover 0
Transaction: total 0, success 0, failure 0
Author: request 0, timeouts 0, failover 0, retransmission 0
Response: accept 0, reject 0, challenge 0
Response: unexpected 0, server error 0, incorrect 0, time 0ms
Transaction: success 0, failure 0
Throttled: transaction 0, timeout 0, failure 0
Malformed responses: 0
Bad authenticators: 0
MAC author transactions:
Response: total responses: 0, avg response time: 0ms
Transaction: timeouts 0, failover 0
Transaction: total 0, success 0, failure 0
Account: request 3, timeouts 0, failover 0, retransmission 0
Request: start 2, interim 0, stop 1
Response: start 2, interim 0, stop 1
Response: unexpected 0, server error 0, incorrect 0, time 11ms
Transaction: success 3, failure 0
Throttled: transaction 0, timeout 0, failure 0
Malformed responses: 0
Bad authenticators: 0
Elapsed time since counters last cleared: 1d3h4m
Estimated Outstanding Access Transactions: 0
Estimated Outstanding Accounting Transactions: 0
Estimated Throttled Access Transactions: 0
Estimated Throttled Accounting Transactions: 0
Maximum Throttled Transactions: access 0, accounting 0
Consecutive Response Failures: total 115
SMD Platform : max 113, current 0 total 113
WNCD Platform: max 0, current 0 total 0
IOSD Platform : max 2, current 2 total 2
Consecutive Timeouts: total 466
SMD Platform : max 455, current 0 total 455
WNCD Platform: max 0, current 0 total 0
IOSD Platform : max 11, current 11 total 11
Requests per minute past 24 hours:
high - 23 hours, 25 minutes ago: 4
low - 3 hours, 4 minutes ago: 0
average: 0
Verwenden Sie das Dienstprogramm 'test aaa', um die Erreichbarkeit des Switches zum Authentifizierungsserver zu bestätigen. Beachten Sie, dass dieses Dienstprogramm veraltet ist und nicht unbegrenzt verfügbar ist.
C9300#debug radius <-- Classic Cisco IOS debugs are only useful in certain scenarios. See "Cisco IOS XE Debugs" for details. C9300#test aaa group ISE username password new-code <-- This sends a RADIUS test probe to the identified server. The username and password is meant to elicit a rejection from RADIUS. User rejected <-- This means that the RADIUS server received our test probe, but rejected our user. We can conclude the server is reachable and listening on the configured auth-port. *Jul 16 21:05:57.632: %PARSER-5-HIDDEN: Warning!!! ' test platform-aaa group server-group ISE user-name username password new-code blocked count delay level profile rate users ' is a hidden command. Use of this command is not recommended/supported and will be removed in future. *Jul 16 21:05:57.644: RADIUS/ENCODE(00000000):Orig. component type = Invalid *Jul 16 21:05:57.644: RADIUS/ENCODE(00000000): dropping service type, "radius-server attribute 6 on-for-login-auth" is off *Jul 16 21:05:57.644: RADIUS(00000000): Config NAS IP: 10.122.161.63 *Jul 16 21:05:57.644: vrfid: [65535] ipv6 tableid : [0] *Jul 16 21:05:57.644: idb is NULL *Jul 16 21:05:57.644: RADIUS(00000000): Config NAS IPv6: :: *Jul 16 21:05:57.644: RADIUS(00000000): sending *Jul 16 21:05:57.644: RADIUS/DECODE(00000000): There is no General DB. Want server details may not be specified *Jul 16 21:05:57.644: RADIUS(00000000): Send Access-Request to 10.122.141.199:1812 id 1645/8, len 50 <-- Sending Access-Request to RADIUS server RADIUS: authenticator 3B 65 96 37 63 E3 32 41 - 3A 93 63 B6 6B 6A 5C 68 *Jul 16 21:05:57.644: RADIUS: User-Password [2] 18 * *Jul 16 21:05:57.644: RADIUS: User-Name [1] 6 "username" *Jul 16 21:05:57.644: RADIUS: NAS-IP-Address [4] 6 10.122.161.63 *Jul 16 21:05:57.644: RADIUS(00000000): Sending a IPv4 Radius Packet *Jul 16 21:05:57.644: RADIUS(00000000): Started 5 sec timeout *Jul 16 21:05:57.669: RADIUS: Received from id 1645/8 10.122.141.199:1812, Access-Reject, len 20 <-- Receiving the Access-Reject from RADIUS server RADIUS: authenticator 1A 11 32 19 12 F9 C3 CC - 6A 83 54 DF 0F DB 00 B8 *Jul 16 21:05:57.670: RADIUS/DECODE(00000000): There is no General DB. Reply server details may not be recorded *Jul 16 21:05:57.670: RADIUS(00000000): Received from id 1645/8
Fehlerbehebung
Dieser Abschnitt enthält Anleitungen zur Fehlerbehebung bei den meisten 802.1x-Problemen mit einem Catalyst Switch.
Methodik
Gehen Sie methodisch auf Probleme mit 802.1x und der Authentifizierung ein, um optimale Ergebnisse zu erzielen. Hier einige gute Fragen, die beantwortet werden sollten:
Ist das Problem auf einen einzelnen Switch beschränkt? Ein einzelner Port? Ein einziger Client-Typ?
Wurde die Konfiguration validiert? Ist der Authentifizierungsserver erreichbar?
Tritt das Problem jedes Mal auf, oder tritt es nur gelegentlich auf? Tritt sie nur bei einer erneuten Authentifizierung oder einer Autorisierungsänderung auf?
Untersuchen Sie eine einzelne fehlgeschlagene Transaktion von Ende zu Ende, wenn die Probleme bestehen bleiben, nachdem das Offensichtliche ausgeschlossen wurde. Der beste und vollständigste Datensatz für die Untersuchung einer 802.1x-Transaktion von Client zu Server umfasst:
1a. Erfassung auf Client und/oder
1b) Auf der Zugriffsschnittstelle, über die der Client eine Verbindung herstellt
Dieser Bezugspunkt ist wichtig, um Einblicke in die EAPoL-Pakete zu erhalten, die zwischen dem Zugriffsport, auf dem dot1x aktiviert ist, und dem Client ausgetauscht werden. SPAN ist das zuverlässigste Tool zum Anzeigen des Datenverkehrs zwischen Client und Authentifizierer.
2. Debugger auf Authentifizierer
Mithilfe von Debugs können wir die Transaktion über den Authentifikator hinweg verfolgen.
Der Authentifizierer muss die empfangenen EAPoL-Pakete durchsuchen und RADIUS-gekapselten Unicast-Datenverkehr generieren, der für den Authentifizierungsserver bestimmt ist.
Stellen Sie sicher, dass für maximale Effektivität die entsprechenden Debugging-Level festgelegt sind.
3. Erfassung neben dem Authentifikator
Diese Erfassung ermöglicht es uns, die Kommunikation zwischen Authentifizierer und Authentifizierungsserver zu sehen.
Diese Erfassung zeigt die gesamte Konversation aus der Perspektive des Authenticators genau an.
In Verbindung mit der Erfassung unter Punkt 4 können Sie feststellen, ob ein Verlust zwischen dem Authentifizierungsserver und dem Authentifizierer besteht.
4. Erfassung neben dem Authentifizierungsserver
Diese Erfassung ist ein Begleiter der Erfassung in Punkt 3.
Diese Aufzeichnung bietet die gesamte Konversation aus der Sicht des Authentifizierungsservers.
In Verbindung mit der Erfassung in Punkt 3 können Sie feststellen, ob ein Verlust zwischen Authenticator und Authentication Server besteht.
5. Erfassung, Debugging, Protokolle auf dem Authentifizierungsserver
Der letzte Teil des Puzzles, Server-Debugs sagen uns, was der Server über unsere Transaktion weiß.
Mit diesem End-to-End-Datensatz kann ein Netzwerktechniker feststellen, wo die Transaktion abläuft, und Komponenten ausschließen, die nicht zum Problem beitragen.
Symptome am Beispiel
Dieser Abschnitt enthält eine Liste gängiger Symptome und Problemszenarien.
Keine Antwort vom Client
Wenn der vom Switch generierte EAPoL-Datenverkehr keine Antwort auslöst, wird dieses Syslog erkannt:
Aug 23 11:23:46.387 EST: %DOT1X-5-FAIL: Switch 1 R0/0: sessmgrd: Authentication failed for client (aaaa.bbbb.cccc) with reason (No Response from Client) on Interface Gi6/0/32 AuditSessionID CBFF000A000001056EFE9E73
Der Ursachencode "No Response from Client" (Keine Antwort vom Client) gibt an, dass der Switch den dot1x-Prozess gestartet hat, aber dass innerhalb der Zeitüberschreitungszeit keine Antwort vom Client empfangen wurde. Das bedeutet, dass entweder der Client den vom Switch-Port gesendeten Authentifizierungsdatenverkehr nicht empfangen hat oder verstanden hat, oder dass die Antwort vom Client nicht am Switch-Port empfangen wurde.
Client beendet Sitzung
Wenn eine Authentifizierungssitzung gestartet wird, aber nicht abgeschlossen wird, meldet der Authentifizierungsserver (z. B. ISE), dass der Client eine Sitzung gestartet, die Sitzung jedoch vor dem Abschluss abgebrochen hat. Häufig bedeutet dies, dass der Authentifizierungsprozess nur teilweise abgeschlossen werden kann.
Stellen Sie sicher, dass die gesamte Transaktion zwischen dem Authentifizierungs-Switch und dem Authentifizierungsserver als End-to-End-Transaktion bereitgestellt und vom Authentifizierungsserver korrekt interpretiert wird.
Wenn RADIUS-Datenverkehr im Netzwerk verloren geht oder nicht richtig assembliert werden kann, ist die Transaktion unvollständig, und der Client versucht erneut, die Authentifizierung durchzuführen. Der Server wiederum meldet, dass der Client seine Sitzung abgebrochen hat.
MAB-Client fällt aus DHCP/fällt zurück auf APIPA
MAC Authentication Bypass (MAB) ermöglicht die Authentifizierung auf Basis der MAC-Adresse. Häufig authentifizieren sich Clients, die keine Supplicant-Software unterstützen, über MAB.
Wenn MAB als Fallback-Methode für die Authentifizierung verwendet wird, während dot1x die bevorzugte und erste Methode ist, die auf einem Switch-Port ausgeführt wird, kann ein Szenario entstehen, in dem der Client DHCP nicht abschließen kann.
Das Problem lässt sich auf die Reihenfolge der Vorgänge zurückführen. Während dot1x ausgeführt wird, verbraucht der Switch-Port andere Pakete als EAPoL, bis entweder die Authentifizierung abgeschlossen ist oder das 1-fache der Laufzeit überschritten wird. Der Client versucht jedoch sofort, eine IP-Adresse zu erhalten, und sendet seine DHCP-Erkennungsmeldungen. Diese Erkennungsmeldungen werden vom Switch-Port verbraucht, bis dot1x seine konfigurierten Timeout-Werte überschreitet und MAB ausgeführt werden kann. Wenn die DHCP-Zeitüberschreitung des Clients kürzer als die 802.1x-Zeitüberschreitung ist, schlägt DHCP fehl, und der Client greift auf APIPA zurück, oder wie immer seine Fallback-Strategie dies vorschreibt.
Dieses Problem wird auf vielfältige Weise verhindert. bevorzugen MAB auf Schnittstellen, bei denen MAB-authentifizierte Clients eine Verbindung herstellen. Wenn dot1x zuerst ausgeführt werden muss, achten Sie auf das DHCP-Verhalten des Clients, und passen Sie die Timeoutwerte entsprechend an.
Achten Sie darauf, das Verhalten des Clients zu berücksichtigen, wenn dot1x und MAB verwendet werden. Eine gültige Konfiguration kann, wie bereits beschrieben, zu einem technischen Problem führen.
Plattformspezifische Dienstprogramme
In diesem Abschnitt werden viele der plattformspezifischen Dienstprogramme beschrieben, die auf den Catalyst Switches der Serie 9000 zur Fehlerbehebung bei dot1x-Problemen verfügbar sind.
Switch Port Analyzer (SPAN)
SPAN ermöglicht dem Benutzer die Spiegelung des Datenverkehrs von einem oder mehreren Ports zu einem Zielport zur Erfassung und Analyse. Lokales SPAN ist das zuverlässigste Erfassungsdienstprogramm.
Details zur Konfiguration und Implementierung finden Sie in diesem Konfigurationsleitfaden.
Embedded Packet Capture (EPC)
EPC nutzt CPU- und Speicherressourcen, um integrierte lokale Paketerfassungsfunktionen bereitzustellen.
Der EPC weist Einschränkungen auf, die sich auf seine Wirksamkeit bei der Untersuchung bestimmter Probleme auswirken. Die Übertragungsrate von EPC ist auf 1.000 Pakete pro Sekunde begrenzt. EPC kann auch von der CPU injizierte Pakete am Ausgang physischer Schnittstellen nicht zuverlässig erfassen. Dies ist von Bedeutung, wenn der Schwerpunkt auf der RADIUS-Transaktion zwischen dem Authentifizierungs-Switch und dem Authentifizierungsserver liegt. Häufig übersteigt die Datenverkehrsrate an der Schnittstelle zum Server 1.000 Pakete pro Sekunde erheblich. Ein EPC am Ausgang der Schnittstelle, der zum Server zeigt, kann außerdem den vom Authentifizierungs-Switch generierten Datenverkehr nicht erfassen.
Verwenden Sie bidirektionale Zugriffslisten, um den EPC zu filtern und die Beeinträchtigung durch die Beschränkung auf 1000 Pakete pro Sekunde zu vermeiden. Wenn der RADIUS-Datenverkehr zwischen dem Authentifizierer und dem Server wichtig ist, konzentrieren Sie sich auf den Datenverkehr zwischen der RADIUS-Quellschnittstellenadresse des Authentifizierers und der Adresse des Servers.
Wenn das nächste Upstream-Gerät zum Authentifizierungsserver ein Catalyst-Switch ist, verwenden Sie einen gefilterten EPC am Downlink zum Authentifizierungsserver, um die besten Ergebnisse zu erzielen.
Details zur Konfiguration und Implementierung finden Sie in diesem Konfigurationsleitfaden.
Cisco IOS XE-Fehlerbehebung
Durch Änderungen der Softwarearchitektur, die mit Cisco IOS XE Version 16.3.2 beginnen, wurden AAA-Komponenten auf einen separaten Linux-Daemon verschoben. Bekannte Debugs ermöglichen keine sichtbaren Debugs im Protokollierungspuffer mehr.
Tipp: Herkömmliche IOS AAA-Debugging-Verfahren liefern keine Ausgabe in Systemprotokollen mehr für die Port-Authentifizierung an der Vorderseite im Syslog-Puffer.
Stattdessen ermöglichen die klassischen Cisco IOS-Debugging-Funktionen für dot1x und RADIUS keine sichtbaren Debugging-Funktionen mehr im Protokollierungspuffer des Switches:
debug radius debug access-session all debug dot1x all
Der Zugriff auf AAA-Komponentendebugs ist jetzt über die Systemüberwachung unter dem Session Manager Daemon (SMD) möglich.
Wie bei herkömmlichen Syslogs erfolgt der Catalyst System-Traces-Bericht auf einer Standardebene, und es muss eine Anweisung zum Sammeln detaillierterer Protokolle gegeben werden.
Ändern Sie mit dem Befehl set platform software trace smd switch active r0 <component> debug die Routine-Ablaufverfolgungsebene für die gewünschte Unterkomponente.
Switch#set platform software trace smd switch active R0 auth-mgr debug <<<--- This sets the "auth-mgr" subcomponent to "debug" log level.
Diese Tabelle ordnet herkömmliche IOS-Debugs ihrer Ablaufverfolgungsentsprechung zu.
Befehl im alten Stil
Neuer Formatbefehl
#debug Radius
#set plattform software trace smd switch active R0 radius debug
#debug dot1x alle
#set plattform software trace smd switch active R0 dot1x-all debug
#debug für Zugriffssitzung alle
#set plattform software trace smd switch active R0 auth-mgr-all debug
#debug epm all
#set plattform software trace smd switch active R0 epm-all debug
Bei klassischen Debugs werden alle zugehörigen Komponentenverfolgungen auf die Ebene "debug" gesetzt. Plattformbefehle werden auch verwendet, um bei Bedarf bestimmte Ablaufverfolgungen zu aktivieren.
Verwenden Sie den Befehl show platform software trace level smd switch active R0, um die aktuelle Trace-Ebene für SMD-Unterkomponenten anzuzeigen.
Die Ablaufverfolgungsebene der Unterkomponenten kann auf zwei Arten auf den Standardwert zurückgesetzt werden.
Verwenden Sie entweder underbug all oder set platform software trace smd switch active R0 <sub-component> hinweis, um wiederherzustellen.
Wenn das Gerät neu geladen wird, werden auch die Ablaufverfolgungsebenen auf den Standard zurückgesetzt.
Switch#undebug all All possible debugging has been turned off
or
Switch#set platform software trace smd switch active R0 auth-mgr notice<--- Sets sub-component "auth-mgr" to trace level "Notice", the system default.
Komponentenprotokolle können auf der Konsole angezeigt oder in das Archiv geschrieben und offline angezeigt werden. Traces werden in ZIP-Binärarchiven archiviert, die dekodiert werden müssen. Wenden Sie sich an das TAC, um Unterstützung beim Debuggen beim Umgang mit archivierten Traces zu erhalten. In diesem Workflow wird erläutert, wie die Ablaufverfolgungen in der CLI angezeigt werden.
Der Show-Protokollierungsprozess ist das aktualisierte Dienstprogramm für Ablaufverfolgungen und der Standard in der Version Cisco IOS XE 17.9.x und höher.
C9300#show logging process smd ?
<0-25> instance number
end specify log filtering end location
extract-pcap Extract pcap data to a file
filter specify filter for logs
fru FRU specific commands
internal select all logs. (Without the internal keyword only
customer curated logs are displayed)
level select logs above specific level
metadata CLI to display metadata for every log message
module select logs for specific modules
reverse show logs in reverse chronological order
start specify log filtering start location
switch specify switch number
to-file decode files stored in disk and write output to file
trace-on-failure show the trace on failure summary
| Output modifiers
Show logging process bietet die gleiche Funktionalität wie show platform software trace in einem eleganteren und zugänglicheren Format.
Dieser Abschnitt enthält Ablaufverfolgungen des Sitzungs-Managers für Punkt1x- und Radius-Komponenten für eine vollständige, fehlgeschlagene Transaktion (der Server lehnt Client-Anmeldeinformationen ab). Es soll eine grundlegende Richtlinie für die Navigation in System-Traces im Zusammenhang mit der Authentifizierung an der Vorderseite bereitstellen.
Ein Test-Client versucht, eine Verbindung mit GigabitEthernet1/0/2 herzustellen, und wird abgelehnt.
In diesem Beispiel werden SMD-Komponentenverfolgungen auf 'debug' gesetzt.
C9300#set platform software trace smd sw active r0 dot1x-all C9300#set platform software trace smd sw active r0 radius debug
Der Port sendet und empfängt normalen Datenverkehr ohne 802.1x-basierte Authentifizierung des Clients.
AAA
Deaktiviert.
RADIUS-Server
IP-Adresse
UDP-Authentifizierungsport
Standard-Accounting-Port
Wichtigste
Keine angegeben.
1645.
1646.
Keine angegeben.
Host-Modus
Single-Host-Modus.
Steuerrichtung
Bidirektionale Steuerung.
Periodische erneute Authentifizierung
Deaktiviert.
Anzahl der Sekunden zwischen erneuten Authentifizierungsversuchen
3600 Sekunden.
Nummer für erneute Authentifizierung
Zwei Mal (Anzahl der Male, die der Switch den Authentifizierungsprozess neu startet, bevor der Port in den nicht autorisierten Status wechselt).
Ruhezeit
60 Sekunden (Anzahl der Sekunden, die der Switch nach einem fehlgeschlagenen Authentifizierungsaustausch mit dem Client im Ruhezustand bleibt).
Übertragungszeit
30 Sekunden (die Anzahl der Sekunden, die der Switch auf eine Antwort auf eine EAP-Anfrage/einen EAP-Identitäts-Frame vom Client wartet, bevor er die Anfrage erneut sendet).
Maximale Anzahl der erneuten Übertragungen
Zwei Mal (Anzahl der Male, die der Switch eine EAP-Anfrage/einen Identitäts-Frame sendet, bevor der Authentifizierungsprozess neu gestartet wird).
Client-Zeitüberschreitungszeitraum
30 Sekunden (beim Weiterleiten einer Anforderung vom Authentifizierungsserver an den Client die Zeit, die der Switch auf eine Antwort wartet, bevor er die Anforderung an den Client erneut sendet).
Timeout-Zeitraum für Authentifizierungsserver
30 Sekunden (beim Weiterleiten einer Antwort vom Client an den Authentifizierungsserver die Zeit, die der Switch auf eine Antwort wartet, bevor er die Antwort an den Server zurücksendet).
Sie können diese Zeitüberschreitung mit dem Befehl dot1x timeout server-timeout interface configuration ändern.
Timeout bei Inaktivität
Deaktiviert.
Gast-VLAN
Keine angegeben.
Unzugängliche Authentifizierungsumgehung
Deaktiviert.
Eingeschränktes VLAN
Keine angegeben.
Authentifizierer-Modus (Switch)
Keine angegeben.
Umgehung der MAC-Authentifizierung
Deaktiviert.
Sprachbasierte Sicherheit
Deaktiviert.
Optionale Einstellungen
Regelmäßige Neuauthentifizierung:
Sie können die regelmäßige 802.1x-Client-Neuauthentifizierung aktivieren und angeben, wie oft diese auftritt:
Authentifizierung periodisch - ermöglicht eine regelmäßige erneute Authentifizierung des Clients
Inaktivität - Intervall in Sekunden, nach dem der Client nicht autorisiert wird, wenn keine Aktivität vom Client vorliegt
reauthentication - Zeit in Sekunden, nach der ein automatischer Versuch zur erneuten Authentifizierung initiiert wird
restart-Wert - Intervall in Sekunden, nach dem versucht wird, einen nicht autorisierten Port zu authentifizieren
Nicht autorisierter Wert - Intervall in Sekunden, nach dem eine nicht autorisierte Sitzung gelöscht wird
Sie können einen 802.1x-Port so konfigurieren, dass er heruntergefahren wird, einen Syslog-Fehler generiert oder Pakete von einem neuen Gerät verwirft, wenn ein Gerät eine Verbindung mit einem 802.1x-fähigen Port herstellt oder die maximale Anzahl von Geräten, die über Geräte authentifiziert wurden, auf dem Port authentifiziert wurde.
shutdown - Fehler beim Deaktivieren des Ports.
restricted - Generieren Sie einen Syslog-Fehler.
protect - Verwirft Pakete von jedem neuen Gerät, das Datenverkehr an den Port sendet.
replace - Entfernt die aktuelle Sitzung und authentifiziert sich mit dem neuen Host.
Der Schnittstellenkonfigurationsbefehl authentication timer restart steuert den Leerlaufzeitraum, der den festgelegten Zeitraum vorgibt, in dem der Switch im Leerlauf bleibt, nachdem ein Switch den Client nicht authentifizieren kann. Der Bereich für den Wert liegt zwischen 1 und 65535 Sekunden.
authentication timer restart {seconds}
Ändern der Zeit für die erneute Switch-to-Client-Übertragung:
Der Client antwortet auf den EAP-Anforderungs-/Identitäts-Frame vom Switch mit einem EAP-Antwort-/Identitäts-Frame. Wenn der Switch diese Antwort nicht erhält, wartet er einen festgelegten Zeitraum (die so genannte Zeit für die erneute Übertragung) und sendet dann den Frame erneut.
authentication timer reauthenticate {seconds}
Einstellen der Frame-Retransmission-Nummer des Switches an den Client:
Sie können die Anzahl der Male ändern, die der Switch einen EAP-Anforderungs-/Identitäts-Frame an den Client sendet (vorausgesetzt, es wird keine Antwort empfangen), bevor der Authentifizierungsprozess neu gestartet wird. Der Bereich liegt zwischen 1 und 10.
dot1x max-reauth-req {count}
Host-Modus konfigurieren:
Sie können mehrere Hosts (Clients) auf einem autorisierten 802.1x-Port zulassen.
multi-auth - Ermöglicht mehrere authentifizierte Clients im Sprach-VLAN und Daten-VLAN.
Multi-Host - Ermöglicht mehrere Hosts auf einem 802.1x-autorisierten Port, nachdem ein einzelner Host authentifiziert wurde.
multi-domain- Ermöglicht die Authentifizierung eines Hosts und eines Sprachgeräts, z. B. eines IP-Telefons (von Cisco oder einem Drittanbieter), an einem nach IEEE 802.1x autorisierten Port.
Sie können auch ändern, wie oft das Gerät den Authentifizierungsprozess neu startet, bevor der Port in den nicht autorisierten Status wechselt. Der Bereich liegt zwischen 0 und 10.
dot1x max-req {count}
Konfigurieren eines Gast-VLAN:
Wenn Sie ein Gast-VLAN konfigurieren, werden Clients, die nicht 802.1x-fähig sind, in das Gast-VLAN eingefügt, wenn der Server keine Antwort auf seine EAP-Anforderung/seinen Identitäts-Frame erhält.
Wenn Sie ein eingeschränktes VLAN auf einem Gerät konfigurieren, werden Clients, die IEEE 802.1x-kompatibel sind, in das eingeschränkte VLAN verschoben, wenn der Authentifizierungsserver keinen gültigen Benutzernamen und kein gültiges Kennwort erhält.
Konfigurieren der Anzahl von Authentifizierungsversuchen in einem eingeschränkten VLAN:
Sie können die maximale Anzahl von Authentifizierungsversuchen konfigurieren, die zulässig sind, bevor ein Benutzer dem eingeschränkten VLAN zugewiesen wird, indem Sie den Schnittstellenkonfigurationsbefehlauthentication event fail retrycount (Wiederholungsanzahl) verwenden. Der Bereich der zulässigen Authentifizierungsversuche liegt zwischen 1 und 3.
authentication event fail retry {retry count}
Konfigurieren des nicht zugänglichen 802.1x-Authentifizierungs-Bypasses mit kritischem Sprach-VLAN:
Sie können ein kritisches Sprach-VLAN an einem Port konfigurieren und die Funktion zur Umgehung der nicht zugänglichen Authentifizierung aktivieren.
Authorize - Verschieben Sie alle neuen Hosts, die eine Authentifizierung versuchen, in das benutzerspezifische kritische VLAN.
reinitialize - Verschiebt alle autorisierten Hosts auf dem Port zum benutzerdefinierten kritischen VLAN
authentication event server dead action {authorize | reinitialize} vlanvlan-id]
authentication event server dead action authorize voice
Konfigurieren der 802.1x-Authentifizierung mit WoL:
Sie können die 802.1x-Authentifizierung mit Wake on LAN (WoL) aktivieren.
authentication control-direction both
Konfigurieren der MAC-Authentifizierungsumgehung:
mab
Bestellung der flexiblen Authentifizierung:
authentication order [ dot1x | mab ] | {webauth}
authentication priority [ dot1x | mab ] | {webauth}
Konfigurieren der sprachbasierten 802.1x-Sicherheit:
Sie verwenden die sprachbasierte 802.1x-Sicherheitsfunktion auf dem Gerät, um nur das VLAN zu deaktivieren, in dem ein Sicherheitsverstoß auftritt, unabhängig davon, ob es sich um ein Daten- oder Sprach-VLAN handelt. Ein Sicherheitsverstoß, der auf dem Daten-VLAN festgestellt wird, führt dazu, dass nur das Daten-VLAN heruntergefahren wird. Dies ist eine globale Konfiguration.
errdisable detect cause security-violation shutdown vlan
errdisable recovery cause security-violation
Flussdiagramme
Authentifizierungs-Flussdiagramm:
Portbasierte Authentifizierungsinitiierung und Nachrichtenaustausch:
Diese Abbildung zeigt den Client, der den Nachrichtenaustausch mit dem RADIUS-Server initiiert.
Initiierung der MAB-Authentifizierung und Nachrichtenaustausch:
Diese Abbildung zeigt den Nachrichtenaustausch während der MAC-Authentifizierungsumgehung (MAB).