802.1x + Voice VLAN +MAB sur N-Series

On commence par déclarer en globale le serveur Radius (FreeRadius/PacketFence/Microsoft NPS/….)

authentication enable
authentication dynamic-vlan enable
dot1x system-auth-control
aaa authentication dot1x default radius
aaa authorization network default radius
radius server source-ip [IP du Vlan qui va joindre le serveur Radius]
radius server auth [IP.DU.SERVEUR.RADIUS]
name "RADIUS-SRVNAME1"
usage authmgr
key 0 "lacleduserveurradius"
exit
radius server acct [IP.DU.SERVEUR.RADIUS]
name "RADIUS-SRVNAME1"
exit

On active en globale le voice vlan, ainsi qu’un vlan de quarantaine si il venait a y avoir un problème d’authentification.

vlan 18
name "VLAN_TOIP"
exit
vlan 666
name "QUARANTAINE"
exit
switchport voice vlan

On configure le port pour permettre l’authentification 802.1x du client, sur échec on essaye un authentification par mac et sinon on drope dans le Vlan de Quarantaine.
Le téléphone identifiée via le LLDP, reçoit le VLAN Voix.
Cette configuration permet d’avoir l’interface “LAN” du téléphone qui reçoit une client qui va demander une authentification 802.1x.

LE MODE GENERAL EST OBLIGATOIRE.

interface Gi1/0/6
description "VOIP+PC"
switchport mode general
authentication host-mode multi-auth
authentication violation protect
authentication event fail action authorize vlan 666
authentication event no-response action authorize vlan 666
authentication periodic
dot1x timeout quiet-period 1
dot1x max-reauth-req 1
dot1x max-req 1
mab auth-type pap
authentication order dot1x mab
authentication priority dot1x mab
lldp tlv-select system-description system-capabilities management-address
lldp notification
lldp med confignotification
switchport voice vlan 16
switchport voice vlan override-authentication
exit


Config MAB sur N-Series

Dans une environnement ou on cherche à identifier l’ensemble des équipements se connectant au réseau, on active du 802.1x.
Pour des équipements n’ayant pas de possibilité de s’authentifier en 802.1x, comme des Imprimantes/Camera IP/IOT/etc.., il est généralement préconisé de mettre en place de l’authentification par @mac

Dans la config ci dessous en active l’allocation dynamique de VLAN et du MAB uniquement.

Si il est nécessaire de changer le format de la mac envoyé, il faut ajouter la commande suivante, a adapter selon les besoins.

mab request format attribute 1 groupsize 2 separator -

Les commandes suivantes, permettent l’activation des fonctions d’authentification 802.1x, l’allocation dynamique de Vlan et les paramètres de configuration du serveur Radius.

authentication enable
authentication dynamic-vlan enable
dot1x system-auth-control
aaa authentication dot1x default radius
aaa authorization network default radius

radius server key 7 "maybe"
radius server auth 192.168.100.23
primary
name "radius"
timeout 1
usage authmgr
exit
radius server acct 192.168.100.23
name "radius"
exit

Dans l’exemple, ci dessous seule l’authentification mab est activé sur le port. la sécurité est configuré pour bloqué le port en cas de pb d’authentification. Il y a une phase de re authentification periodique sur le port.

interface Gi1/0/1
spanning-tree portfast
switchport mode general
authentication host-mode single-host
authentication max-users 1
authentication violation shutdown
authentication periodic
authentication timer reauthenticate 300
authentication order mab
authentication priority mab
authentication event fail retry 1
switchport port-security maximum 1
switchport port-security violation shutdown
exit

Par défaut, il est prévu 10 requette Radius par seconde, il est possible de modifier la valeur au Global

authentication critical recovery max-reauth 20

Suivant le serveur est parfois nécessaire de forcer le mode d’authentification, ici CHAP. Pour rappel cette configuration fonctionne avec du FreeRadius/PacketFence…

interface Gi1/0/1
mab auth-type chap
exit

Dans le cas d’une station sur laquelle vous souhaitez by-passer l’authentification 802.1x (mab ou autre)

interface Gi1/0/20
authentication port-control force-authorized
exit

Dans le cas des ports d’uplinks, là encore pas d’authentification possible, on filtre éventuellement les VLANs

interface Te1/0/1
switchport mode trunk
switchport trunk allowed vlan 10,20,30,40,50
authentication port-control force-authorized
exit

802.1x / MAB / N-Series

Fichier FreeRadius

C42C031E79AC    User-Password = "C42C031E79AC"
Tunnel-Type = "VLAN",
Tunnel-Medium-Type = "IEEE-802",
Tunnel-Private-Group-ID = "10",
Auth-Type := local
"demo"  Cleartext-Password := "demo"
Tunnel-Type = "VLAN",
Tunnel-Medium-Type = "IEEE-802",
Tunnel-Private-Group-ID = "1",
Auth-Type := local
d8a25e91ab06    User-Password = "d8a25e91ab06"
Auth-Type := local
DEFAULT Auth-Type := Reject
Reply-Message = "USERS.8021x - REJECT"