Cisco Catalyst 9200: 802.1X mit IBNS 2.0

Aus maxTechCorner

Auf einen Blick

Gilt fürCisco Catalyst 9200/9200L/9200CX mit IOS XE 17.15/17.18; RADIUS-Server z. B. FreeRADIUS, Windows NPS oder Cisco ISE
BereichIT-Security
Dauerca. 1–2 Stunden für den Pilot
RechtePrivileged EXEC (enable), Administrator am RADIUS-Server
StandOktober 2026

802.1X mit IBNS 2.0 auf dem Cisco Catalyst 9200 beschreibt die Netzwerkzugangskontrolle nicht mehr mit vielen einzelnen authentication-Befehlen am Port, sondern mit einer Richtlinie: Eine policy-map legt fest, was bei Ereignissen wie „Sitzung beginnt“, „Anmeldung fehlgeschlagen“ oder „RADIUS-Server nicht erreichbar“ passiert. Die Ports verweisen nur noch auf diese Richtlinie. Das ist übersichtlicher, lässt sich zentral ändern und ist die von Cisco empfohlene Syntax für IOS XE. Die Grundlagen von 802.1X, MAB und den Einführungsphasen erklärt der Artikel Cisco Catalyst 2960-X: 802.1X mit RADIUS konfigurieren.

802.1X mit IBNS 2.0 auf dem Catalyst 9200: Die policy-map startet 802.1X, wechselt bei Fehlschlag oder fehlender Antwort zu MAB, schaltet bei ausgefallenem RADIUS-Server per service-template in Critical-VLAN und Voice-VLAN und wird am Port mit service-policy type control subscriber angewendet.

IBNS 2.0: die Bausteine

Baustein Aufgabe
class-map type control subscriber Bedingung, z. B. „802.1X fehlgeschlagen“ oder „RADIUS nicht erreichbar“
service-template Bündel von Aktionen, z. B. „in VLAN 10 schalten“
policy-map type control subscriber Ablauf: je Ereignis (event) welche Klasse welche Aktionen auslöst
access-session … Port-Einstellungen: Host-Modus, Port-Control, offen oder geschlossen
service-policy type control subscriber bindet die Richtlinie an den Port

Neu einrichten oder umstellen?

  • Neuer Switch: direkt mit IBNS 2.0 beginnen (diese Anleitung).
  • Migrierte Konfiguration mit authentication-Befehlen: IOS XE versteht die alte Syntax. Die automatische Umwandlung erledigt authentication convert-to new-style – sie ist praktisch nicht umkehrbar. Vorher die Konfiguration sichern und die Umwandlung zuerst auf einem Test-Switch ausprobieren.
  • Alte und neue Syntax nicht mischen: Nach der Umstellung werden authentication-Befehle am Port nicht mehr ausgewertet.

Schritt 1: AAA und RADIUS

SW-OG-01# configure terminal
SW-OG-01(config)# aaa new-model
SW-OG-01(config)# aaa authentication login default local
SW-OG-01(config)# aaa authorization exec default local
SW-OG-01(config)# radius server RADIUS-1
SW-OG-01(config-radius-server)# address ipv4 192.168.99.30 auth-port 1812 acct-port 1813
SW-OG-01(config-radius-server)# key <RADIUS-Schlüssel>
SW-OG-01(config-radius-server)# exit
SW-OG-01(config)# aaa group server radius RADIUS-GRUPPE
SW-OG-01(config-sg-radius)# server name RADIUS-1
SW-OG-01(config-sg-radius)# exit
SW-OG-01(config)# aaa authentication dot1x default group RADIUS-GRUPPE
SW-OG-01(config)# aaa authorization network default group RADIUS-GRUPPE
SW-OG-01(config)# aaa accounting identity default start-stop group RADIUS-GRUPPE
SW-OG-01(config)# radius-server dead-criteria time 5 tries 3
SW-OG-01(config)# radius-server deadtime 5
SW-OG-01(config)# radius-server vsa send authentication
SW-OG-01(config)# ip radius source-interface vlan 99
SW-OG-01(config)# dot1x system-auth-control
  • IOS XE nutzt die Blockform radius server; ein zweiter Server wird als weiterer Block angelegt und der Gruppe hinzugefügt.
  • aaa accounting identity ersetzt unter IBNS 2.0 das bisherige aaa accounting dot1x.
  • Die ersten drei aaa-Zeilen sichern die lokale Anmeldung am Switch ab.


Warnungaaa new-model ändert sofort die Anmeldung an Konsole und SSH. Vorher einen lokalen Benutzer mit Privilege 15 anlegen und die Anmeldung in einer zweiten Sitzung testen.

Schritt 2: Service-Templates für den RADIUS-Ausfall

SW-OG-01(config)# service-template CRITICAL-DATEN
SW-OG-01(config-service-template)# vlan 10
SW-OG-01(config-service-template)# exit
SW-OG-01(config)# service-template CRITICAL-VOICE
SW-OG-01(config-service-template)# voice vlan
SW-OG-01(config-service-template)# exit

Schritt 3: Bedingungen (class-maps)

class-map type control subscriber match-all DOT1X-FEHLGESCHLAGEN
 match method dot1x
 match result-type method dot1x authoritative
class-map type control subscriber match-all DOT1X-KEINE-ANTWORT
 match method dot1x
 match result-type method dot1x agent-not-found
class-map type control subscriber match-all MAB-FEHLGESCHLAGEN
 match method mab
 match result-type method mab authoritative
class-map type control subscriber match-all RADIUS-AUS-NICHT-ANGEMELDET
 match result-type aaa-timeout
 match authorization-status unauthorized
class-map type control subscriber match-all RADIUS-AUS-ANGEMELDET
 match result-type aaa-timeout
 match authorization-status authorized

Schritt 4: Die Richtlinie (policy-map)

policy-map type control subscriber DOT1X-MAB
 event session-started match-all
  10 class always do-until-failure
   10 authenticate using dot1x priority 10
 event authentication-failure match-first
  5 class DOT1X-FEHLGESCHLAGEN do-until-failure
   10 terminate dot1x
   20 authenticate using mab priority 20
  10 class RADIUS-AUS-NICHT-ANGEMELDET do-until-failure
   10 activate service-template CRITICAL-DATEN
   20 activate service-template CRITICAL-VOICE
   30 authorize
   40 pause reauthentication
  20 class RADIUS-AUS-ANGEMELDET do-until-failure
   10 pause reauthentication
   20 authorize
  30 class DOT1X-KEINE-ANTWORT do-until-failure
   10 terminate dot1x
   20 authenticate using mab priority 20
  40 class MAB-FEHLGESCHLAGEN do-until-failure
   10 terminate mab
   20 authentication-restart 60
  50 class always do-until-failure
   10 terminate dot1x
   20 terminate mab
   30 authentication-restart 60
 event aaa-available match-all
  10 class RADIUS-AUS-NICHT-ANGEMELDET do-until-failure
   10 clear-session
  20 class RADIUS-AUS-ANGEMELDET do-until-failure
   10 resume reauthentication
 event agent-found match-all
  10 class always do-until-failure
   10 terminate mab
   20 authenticate using dot1x priority 10

So liest sich der Ablauf:

Ereignis Reaktion
Sitzung beginnt 802.1X versuchen
802.1X fehlgeschlagen oder Gerät antwortet nicht auf MAB wechseln (Drucker, Telefone ohne 802.1X)
RADIUS nicht erreichbar Critical-VLAN und Voice-VLAN freigeben, später erneut prüfen
MAB fehlgeschlagen nach 60 Sekunden neu beginnen
RADIUS wieder erreichbar Notfall-Sitzungen neu anmelden lassen
802.1X-Client meldet sich später doch von MAB auf 802.1X wechseln

Schritt 5: Ports konfigurieren

SW-OG-01(config)# interface range gi1/0/1 - 40
SW-OG-01(config-if-range)# switchport mode access
SW-OG-01(config-if-range)# switchport access vlan 10
SW-OG-01(config-if-range)# switchport voice vlan 40
SW-OG-01(config-if-range)# access-session host-mode multi-domain
SW-OG-01(config-if-range)# access-session port-control auto
SW-OG-01(config-if-range)# mab
SW-OG-01(config-if-range)# dot1x pae authenticator
SW-OG-01(config-if-range)# dot1x timeout tx-period 10
SW-OG-01(config-if-range)# spanning-tree portfast
SW-OG-01(config-if-range)# service-policy type control subscriber DOT1X-MAB
SW-OG-01(config-if-range)# end
SW-OG-01# write memory

Ohne weiteren Befehl ist der Port im offenen Modus – Verkehr fließt auch vor der Anmeldung (entspricht dem Monitor Mode). Nach der Beobachtungsphase den Port schließen:

SW-OG-01(config-if-range)# access-session closed

Für viele gleiche Ports lässt sich die Port-Konfiguration auch als template zusammenfassen und mit source template zuweisen.

Kontrolle

show access-session                                   ! alle Sitzungen: Port, MAC, Methode, Domain, Status
show access-session interface gi1/0/5 details         ! Details inkl. VLAN und angewendeter Richtlinie
show policy-map type control subscriber DOT1X-MAB
show aaa servers                                      ! Erreichbarkeit der RADIUS-Server
test aaa group RADIUS-GRUPPE <benutzer> <passwort> new-code

Erfolgreich angemeldete Geräte zeigen Auth im Status. test aaa prüft die RADIUS-Verbindung unabhängig vom Port.

Typische Probleme

Symptom Ursache Lösung
Ports reagieren nicht auf die Richtlinie alte authentication-Befehle am Port, keine service-policy Port-Konfiguration bereinigen, Richtlinie zuweisen
Telefon im Daten-VLAN RADIUS liefert kein device-traffic-class=voice RADIUS-Richtlinie für Telefone ergänzen
Nach RADIUS-Ausfall bleiben Geräte im Critical-VLAN Ereignis aaa-available fehlt Abschnitt wie oben ergänzen
Geräte ohne Netz trotz MAB-Eintrag MAC-Format am RADIUS anders als vom Switch gesendet Format am RADIUS angleichen oder mab request format attribute 1 … setzen

Hinweise

  • Phasen einhalten: Erst offen beobachten, dann access-session closed – das Vorgehen beschreibt der 2960-X-Artikel ausführlich.
  • Change of Authorization: Soll der RADIUS-Server Sitzungen nachträglich ändern können (z. B. Cisco ISE), zusätzlich aaa server radius dynamic-author mit dem Server als Client einrichten.
  • Bei Planung und Einführung von 802.1X mit RADIUS unterstützt Sie das Cybersecurity-Team von m.a.x. it.

Siehe auch

Links und Quellen


Über m.a.x. it Die m.a.x. Informationstechnologie AG ist seit über 30 Jahren IT-Partner mittelständischer und großer Unternehmen in München und bietet maßgeschneiderte Lösungen und Services in den Bereichen Cloud, Cybersecurity, Netzwerk, Windows, Linux und Softwareentwicklung. Sie haben eine Frage zu diesem Artikel oder brauchen Unterstützung? Kontakt aufnehmen