Configuration du 802.1x sur un switch Cisco

Dans : Réseau Cisco

IEEE 802.1x est une norme qui définit un contrôle d’accès client-serveur et un protocole d’authentification qui restreint la connexion au LAN, par les ports publics, des clients non autorisés. Ce guide a pour but d’indiquer comment configurer le protocole 802.1x correspondant à cette norme sur un switch Cisco.

Le serveur d’authentification vérifie les droits d’accès pour chaque client connecté à un port du switch avant de le laisser accéder aux différents services offerts par le switch ou le LAN. Tant que le client n’est pas authentifié, 802.1x laisse uniquement passer des données des protocoles Extensible Authentification Protocol over LAN (EAPOL), Cisco Discovery Protocol (CDP) et Spanning Tree Protocol (STP) par l'interface du switch. Après authentification, le flux passe normalement par cette interface.

1. Pré-requis pour la configuration du 802.1x

Avant de commencer à configurer le 802.1x sur votre switch Cisco, il est bon d’avoir quelques notions concernant la norme IEEE 802.1x et son utilisation. Pour ce faire, il faut comprendre comment le switch est intégré à votre réseau après sa configuration, mais aussi sur quels types d’interfaces il est possible de configurer le 802.1x.

Équipements à utiliser et leur rôle au sein du réseau

Dans un réseau utilisant la norme IEEE 802.1x, trois types d’équipements interagissent :

  • Le(s) client(s) : ce sont les équipements qui demandent un accès aux services du LAN et du switch et qui répondent aux demandes provenant du switch. Ils doivent fonctionner conformément à la norme IEEE 802.1x ;
  • Le serveur d’authentification : c’est ce serveur qui gère l’authentification des clients. Il valide l’identité des clients et notifie le switch du résultat de l’authentification, qu’elle soit réalisée avec succès ou non. Le système de sécurité RADIUS, utilisant Extensible Authentification Protocol (EAP), est le seul serveur d’authentification supporté par la norme ;
  • Le switch : c’est l’équipement qui contrôle l’accès physique, basé sur le statut de l'authentification du client. Le switch se comporte comme un proxy entre le client et le serveur d’authentification en demandant l’identité du client, vérifiant cette information auprès du serveur, puis relayant le résultat d’authentification au client. Le switch héberge le client RADIUS, qui est responsable de l’encapsulation et de la décapsulation des trames EAP.

Types d’interfaces sur lesquelles le 802.1x est configurable

Le protocole 802.1x est supporté par les static-access ports de niveau 2, les ports configurés en Voice VLAN et les ports routés de niveau 3.

Cependant, il n’est pas supporté pour les interfaces suivantes :

  • ports configurés en mode trunk ;
  • ports dynamiques ;
  • dynamic-access ports ;
  • ports configurés en EthernetChannel ;
  • ports configurés en SPAN ou RSPAN.

2. Activation du AAA sur les Switch Cisco

Avant de commencer, vous devez vous connecter en console, réaliser une connexion Telnet ou une connexion SSH pour accéder à la console de l’équipement Cisco.

Une fois connecté à votre switch, il vous faut passer en mode configuration en entrant successivement les commandes :

enable
configuration terminal

Vous devez alors activer le protocole AAA - qui signifie Authenfication, Authorization, Accounting - sur votre switch Cisco. Pour ce faire, entrez d’abord la commande suivante :

aaa new-model

c2950>enable
Password:
c2950#conf t
Enter configuration commands, one per line. End with CNTL/Z.
c2950(config)#aaa new-model
c2950(config)# 

La création d’une liste de méthode d’authentification 802.1x est obligatoire pour pouvoir activer le AAA correctement. Pour créer une liste par défaut, il faut entrer la commande suivante :

aaa authentication dot1x default <méthode_authentification>

Pour connaître toutes les méthodes disponibles sur votre Switch, entrez cette commande :

aaa authentication dot1x default ?

Vous obtenez alors une liste sous la forme suivante :

c2950(config)#aaa authentication dot1x default ?
groupUse Server-group
krb5Use Kerberos 5 authentication.
lineUse line password for authentication.
localUse local username authentication.
local-caseUse case-sensitive local username authentication.
noneNO authentication.

c2950(config)#aaa authentication dot1x default  

Dans notre exemple, nous avons choisi d’utiliser la liste de tous les serveurs RADIUS pour l’authentification, comme vous pouvez le voir ci-dessous.

c2950(config)#aaa authentication dot1x default group radius
c2950(config)# 

3. Configuration du 802.1x sur les interfaces souhaitées du Switch Cisco

Il faut d’abord activer de manière globale, sur l’ensemble du switch, l’authentification 802.1x. Pour cela, entrez la commande suivante :

dot1x system-auth-control

Vous devez maintenant, pour configurer le 802.1x sur les interfaces souhaitées du Switch Cisco, entrer dans le mode config-if des interfaces, une à une, en entrant la commande suivante :

interface <nom_interface>

Vous pouvez également utiliser la commande "interface range" afin de configurer plusieurs interfaces en même temps (exemple) :

interface range fa0/1-24

Puis une fois dans le mode config-if, il ne vous reste plus qu’à activer le 802.1x grâce à la commande suivante :

dot1x port-control auto

Pour quitter ce mode, entrez simplement

exit

Utilisez successivement les commandes décrites dans cette partie pour toutes les interfaces que vous souhaitez utiliser avec le 802.1x.

Dans notre exemple, nous avons configuré les interfaces FastEthernet0/1 et FastEthernet0/2.

c2950(config)#dot1x system-auth-control
c2950(config)#interface fa0/1
c2950(config-if)#dot1x port-control auto
c2950(config-if)#exit
c2950(config)#interface fa0/2
c2950(config-if)#dot1x port-control auto
c2950(config-if)#exit
c2950(config)# 

4. Configuration de la communication entre le Switch Cisco et le serveur RADIUS

Pour que le Switch Cisco puisse communiquer avec le serveur RADIUS, il faut entrer ses différentes caractéristiques pour que le Switch les mémorise. Pour ce faire, vous devez utiliser la commande suivante :

radius-server host <adresse_ip_radius> auth-port <port_udp> key <chaine_caracteres>

Il faut donc connaître :

  • l’adresse IP de votre serveur RADIUS ;
  • le port UDP du serveur avec lequel votre switch Cisco va communiquer ;
  • la clé d’authentification et d’encryption utilisée entre le switch et le daemon RADIUS qui fonctionne sur le serveur RADIUS.

Dans notre exemple, nous avons utilisé un serveur RADIUS à l’adresse 192.168.246.110, avec le numéro de port 9995 et utilisant la clé “fwx0hrd56”.

c2950(config)#radius-server host 192.168.246.110 auth-port 9995 key fwx0hrd56
c2950(config)# 

5. Vérification de la configuration du switch Cisco

Pour vérifier que la configuration réalisée a bien été prise en compte par votre Switch, vous devez être en mode enable. Pour ce faire, il suffit d’entrer au clavier :

exit

Entrez ensuite la commande :

show dot1x

Vous pouvez alors voir que les modifications ont bien été réalisées si vous pouvez lire les informations comme ci-dessous.

c2950(config)#exit
c2950#
02:20:41: %SYS-5-CONFIG_I: Configured from console by console
c2950#show dot1x
Sysauthcontrol= Enabled
Supplicant Allowed In Guest Vlan= Disabled
Dot1x Protocol Version= 1

c2950# 

Il est également possible de visualiser plus en détail les informations entrées au moyen de la commande :

show running-config

Vous pouvez maintenant enregistrer les modifications en entrant simplement “copy running-config startup-config” ou “copy run start” et en appuyant deux fois sur Entrée comme ci-dessous.

c2950#copy running-config startup-config
Destination filename [startup-config]?
Building configuration...
[OK]
c2950# 

En résumé, voici toutes les commandes à utiliser pour configurer le 802.1 x sur un switch Cisco

>en
#conf t
(config)#aaa new-model
(config)#aaa authentication dot1x default ? //Pour connaître les méthodes disponibles
(config)#aaa authentication dot1x default <méthode_authentification>
(config)#dot1x system-auth-control
(config)#interface <nom_interface>
(config-if)#dot1x port-control auto
(config-if)#exit
(config)#radius-server host <adresse_ip_radius> auth-port <port_udp> key <chaine_caracteres>
#show dot1x
#show running-config
#copy running-config startup-config

Commentaires

Commenter cet article