Le protocole 802.1x ou radius permet entre autre d’autoriser l’accès à un réseau en fonction d’une authentification machine ou utilisateur.
Un serveur radius gère l’authentification et peut éventuellement retourner des valeurs comme un numéro de vlan à appliquer sur le port du switch en cas d’authentification réussie.
Comme le titre l’indique, ce billet traite uniquement de la configuration du switch Cisco.
On considère donc que le client dispose d’une couche 802.1x opérationnelle et qu’un serveur radius est disponible et configuré.
La configuration s’effectue en plusieurs parties:
- Configuration générale du switch pour activer 802.1x,
- Configuration de l’IP du serveur radius,
- Configuration du port d’accès,
- Quelques valeurs qui peuvent être utiles.
Pour info, la version de l’IOS du switch utilisé pour la configuration dans les copies d’écran est 15.0(2)EX5.
Activation générale de 802.1x sur le switch
Switch(config)#aaa new-model Switch(config)#dot1x system-auth-control Switch(config)#aaa authentication dot1x default group radius Switch(config)#aaa authorization network default group radius Switch(config)#
Configuration de l’adresse IP du switch
Switch(config)#radius server NomServeurRadius Switch(config-radius-server)#address ipv4 192.168.2.10 auth-port 1812 acct-port 1813 Switch(config-radius-server)# key Secretcompliqueavecleserveurradius
Configuration de l’interface cliente
Switch(config)#int gigabitEthernet 1/0/3 Switch(config-if)#authentication port-control auto Switch(config-if)#dot1x pae authenticator
Deux commandes pour vérifier que l’authentification a bien fonctionné:
Switch#sh authentication sessions Interface MAC Address Method Domain Status Session ID Gi1/0/3 0020.00de.0123 dot1x DATA Authz Success AC10507B0000005E44561 Switch#sh dot1x all summary Interface PAE Client Status -------------------------------------------------------- Gi1/0/3 AUTH 0020.00de.0123 AUTHORIZED Switch#
D’autres commandes utiles
Pour permettre à une machine de pouvoir être déplacée sur un même switch:
Switch(config)#authentication mac-move permit
Pour configurer une ré-authentification toutes les 5 minutes:
Switch(config)#int gigabitEthernet 1/0/3 Switch(config-if)#authentication periodic Switch(config-if)#authentication timer reauthenticate 300
Il est également possible de modifier différents timers. Ceux ci apparaissent avec la commande ci-dessous:
Switch#sh dot1x interface gigabitEthernet 1/0/3 Dot1x Info for GigabitEthernet1/0/3 ----------------------------------- PAE = AUTHENTICATOR QuietPeriod = 60 ServerTimeout = 0 SuppTimeout = 30 ReAuthMax = 2 MaxReq = 2 TxPeriod = 30 Switch#
Pour avoir plus d’information, je vous invite à consulter la doc Cisco.
Concernant les commandes suivantes, elles sont utilisés en cas de problème d’authentification ou de connexion avec le serveur radius. Pour que la redirection vers le vlan indiqué fonctionne rapidement, il faudra également modifier quelques “timers” (cf paragraphe ci-dessus).
Avec la commande suivante, si l’authentification ne fonctionne pas, on place la machine dans le vlan 10.
Switch(config)#int gi1/0/5 Switch(config-if)# authentication event fail action authorize vlan 10
Si le serveur radius ne répond pas, on place la machine dans le vlan 10:
Switch(config)#int gigabitEthernet 1/0/5 Switch(config-if)#authentication event server dead action authorize vlan 10 Switch(config-if)#authentication event no-response action authorize vlan 10