Table des matières

Introduction

Conditions préalables

Exigences

Composants utilisés

Configurer

Théorie De Configuration

Scénario pour hôte unique

Diagramme du réseau

Configurations

Scénario pour le multidomaine

Diagramme du réseau

Configurations

Vérifier

Dépannage

Introduction

Ce document décrit comment configurer Identity Based Networking Services 2.0 (IBNS) pour des scénarios à hôte unique et à domaines multiples.

Conditions préalables

Exigences

Cisco vous recommande de prendre connaissance des rubriques suivantes :

- Protocole EAPoL (Extensible Authentication Protocol over Local Area Network)

- protocole Radius

- Cisco Identity Services Engine version 2.0

Composants utilisés

Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :

- Correctif 2 de Cisco Identity Service Engine version 2.0

- Terminaux avec système d'exploitation Windows 7

- Commutateur Cisco 3750X avec Cisco® IOS 15.2(4)E1

- commutateur Cisco 3850 avec 03.02.03.SE

- Téléphone IP Cisco 9971

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.

Configurer

Théorie De Configuration

Pour activer IBNS 2.0, vous devez exécuter la commande en mode privilégié sur votre commutateur Cisco :

#authentication display new-style

Configurez switchport pour IBNS 2.0 avec les commandes suivantes :

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

Ces commandes activent l'authentification dot1x et, en option, MAC Authentication Bypass (MAB) sur l'interface. Lorsque vous utilisez la nouvelle syntaxe, vous utilisez des commandes qui commencent par access-session. L'objectif de ces commandes est le même que pour les commandes qui utilisent l'ancienne syntaxe (en commençant par le mot clé authentication ). Appliquez service-policy pour spécifier policy-map qui peut être utilisé pour l'interface.

Le policy-map mentionné définit le comportement du commutateur (authentificateur) pendant l'authentification. Par exemple, vous pouvez spécifier ce qui peut se produire en cas d'échec de l'authentification. Pour chaque événement, vous pouvez configurer plusieurs actions en fonction du type de l'événement correspondant dans le class-map configuré sous celui-ci. Par exemple, observez la liste comme indiqué (policy-map TEST4). Si le point de terminaison dot1x, qui est connecté à l'interface où cette stratégie est appliquée, échoue, l'action définie dans DOT1X_FAILED est exécutée. Si vous voulez spécifier le même comportement pour des classes comme MAB_FAILED et DOT1X_FAILED, alors vous pouvez utiliser la classe par défaut - class-map always.

policy-map type control subscriber TEST4

(...)

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 utilisé pour IBNS 2.0 doit toujours avoir un abonné de contrôle de type.

Vous pouvez afficher la liste des événements disponibles de cette manière :

Switch(config-event-control-policymap)#event ?

aaa-available                 aaa-available event

absolute-timeout              absolute timeout event

agent-found                   agent found event

authentication-failure        authentication failure event

authentication-success        authentication success event

authorization-failure         authorization failure event

authorization-success         authorization success event

identity-update               identity update event

inactivity-timeout            inactivity timeout event

remote-authentication-failure authentication failure event

remote-authentication-success authentication remote success event

remote-update update          from remote device

session-disconnected          session disconnected event

session-started               session started event

tag-added                     tag to apply event

tag-removed                   tag to remove event

template-activated            template activated event

template-activation-failed    template activation failed event

template-deactivated          template deactivated event

template-deactivation-failed  template deactivation failed event

timer-expiry                  timer-expiry event

violation                     session violation event

Dans la configuration des événements, vous avez la possibilité de définir comment les classes peuvent être évaluées :

Switch(config-event-control-policymap)#event authentication-failure ?

match-all    Evaluate all the classes

match-first  Evaluate the first class

Vous pouvez définir des options similaires pour les class-maps, bien que vous spécifiiez ici comment les actions peuvent être exécutées en cas de correspondance de votre classe :

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

La dernière partie (facultative) de la configuration dans le nouveau style de dot1x est class-map. Il peut également taper un abonné de contrôle et il est utilisé pour faire correspondre un comportement ou un trafic spécifique. Configurez les exigences pour l'évaluation de la condition class-map. Vous pouvez spécifier que toutes les conditions doivent être respectées, ou que toute condition doit être respectée, ou qu'aucune des conditions ne doit être respectée.

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

Voici un exemple de class-map utilisé pour la correspondance d'échec d'authentification dot1x :

class-map type control subscriber match-all DOT1X_FAILED

match method dot1x

match result-type method dot1x authoritative

Pour certains scénarios, principalement lorsque le modèle de service est utilisé, vous devez ajouter une configuration pour le changement d'autorisation (CoA) :

aaa server radius dynamic-author

client 10.48.17.232 server-key cisco

Scénario pour hôte unique

Diagramme du réseau

Configurations

Configuration 802.1X de base requise pour un scénario à hôte unique testé sur Catalyst 3750X avec Cisco IOS 15.2(4)E1. Scénario testé avec Windows Native Supplicant et Cisco AnyConnect.

aaa new-model

!

aaa group server radius tests

server name RAD-1

!

aaa authentication dot1x default group tests

aaa authorization network default group tests

!

dot1x system-auth-control

!

policy-map type control subscriber TEST

event session-started match-all

10 class always do-until-failure

10 authenticate using dot1x priority 10

!

interface GigabitEthernet1/0/21

switchport access vlan 613

switchport mode access

access-session host-mode single-host

access-session port-control auto

dot1x pae authenticator

service-policy type control subscriber TEST

!

radius server RAD-1

address ipv4 10.48.17.232 auth-port 1812 acct-port 1813

key cisco

Scénario pour le multidomaine

Diagramme du réseau

Configurations

Le scénario multidomaine a été testé sur Catalyst 3850 avec IOS 03.02.03.SE en raison des exigences PoE (Power over Ethernet) pour téléphone IP (téléphone IP Cisco 9971).

aaa new-model

!

aaa group server radius tests

server name RAD-1

!

aaa authentication dot1x default group tests

aaa authorization network default group tests

!

aaa server radius dynamic-author

client 10.48.17.232 server-key cisco

!

dot1x system-auth-control

!

class-map type control subscriber match-all DOT1X

match method dot1x

!

class-map type control subscriber match-all DOT1X_FAILED

match method dot1x

match result-type method dot1x authoritative

!

class-map type control subscriber match-all DOT1X_NO_RESP

match method dot1x

match result-type method dot1x agent-not-found

!

class-map type control subscriber match-all MAB

match method mab

!

class-map type control subscriber match-all MAB_FAILED

match method mab

match result-type method mab authoritative

!

policy-map type control subscriber TEST4

event session-started match-all

10 class always do-until-failure

10 authenticate using dot1x priority 10

20 authenticate using mab priority 20

event authentication-failure match-first

10 class DOT1X_FAILED do-until-failure

10 terminate dot1x

20 class MAB_FAILED do-until-failure

10 terminate mab

20 authenticate using dot1x priority 10

30 class DOT1X_NO_RESP do-until-failure

10 terminate dot1x

20 authentication-restart 60

40 class always do-until-failure

10 terminate mab

20 terminate dot1x

30 authentication-restart 60

event agent-found match-all

10 class always do-until-failure

10 terminate mab

20 authenticate using dot1x priority 10

event authentication-success match-all

10 class always do-until-failure

10 activate service-template DEFAULT_LINKSEC_POLICY_SHOULD_SECURE

!

interface GigabitEthernet1/0/1

switchport access vlan 613

switchport mode access

switchport voice vlan 612

access-session host-mode multi-domain

access-session port-control auto

mab

dot1x pae authenticator

spanning-tree portfast

service-policy type control subscriber TEST4

!

radius-server attribute 6 on-for-login-auth

radius-server attribute 8 include-in-access-req

radius-server attribute 25 access-request include

radius-server vsa send cisco-nas-port

!

radius server RAD-1

address ipv4 10.48.17.232 auth-port 1812 acct-port 1813

key cisco

Vérifier

Utilisez cette section pour confirmer que votre configuration fonctionne correctement.

À des fins de vérification, utilisez cette commande pour répertorier les sessions de tous les ports de commutateur :

show access-session

Vous pouvez également afficher des informations détaillées sur les sessions à partir d'un seul port de commutateur :

show access-session interface [Gi 1/0/1] {detail}

Dépannage

Cette section fournit des informations que vous pouvez utiliser pour dépanner votre configuration.

Afin de dépanner les problèmes liés à 802.1X, vous pouvez activer les débogages (à partir de IOS XE 16.3.2) :

set platform software trace smd switch active R0 radius debug

set platform software trace smd switch active R0 dot1x-all debug

set platform software trace smd switch active R0 auth-mgr-all debug

set platform software trace smd switch active R0 epm-all debug

La commande show platform software trace level smd switch active R0 vous montre les débogages actuellement actifs.

Pour désactiver les débogages, vous pouvez utiliser undebug all ou set platform software trace smd switch active R0 <sous-composant>notice.

Pour afficher les journaux générés, vous pouvez utiliser la commande : show platform software trace message smd switch active R0.

Dans les versions antérieures d’IOS, vous pouvez activer les débogages à l’aide des commandes héritées :

debug mab all

debug dot1x all

debug pre all*

* Facultativement, pour la pré-débogage, vous pouvez utiliser uniquement un événement et/ou une règle pour limiter la sortie aux informations IBNS 2.0 pertinentes.