Nov 13

Authentification 802.1X sur commutateur Cisco

L’authentification via 802.1x est un vaste sujet, que ce soit au niveau théorique ou bien même pratique. Ce topic présente une des multitudes façons d’aborder le sujet.

Partie 1. Vocabulaire et principes généraux

 

Supplicant : machine cliente que l’on cherche à authentifier. Un logiciel client gérant l’authentification doit être au préalable installe, SEVEN gère 802.1x nativement.
Authenticator : un commutateur qui va relayer les échanges de trame EAP entre supplicant et Authentication Server.
Authenticator Server : serveur qui va authentifier ou non le client.

 

La notion de supplicant 802.1x-capable est très importante dans la gestion du processus d’authentification. Windows 98 par exemple ne gère pas le protocole et ne peut donc pas envoyer de trame EAP.

 

On parle alors de Vlan invite ou les supplicant 802.1x-non-capable sont envoyés. Ce vlan permet alors aux clients de s authentifier via un mécanisme différent, comme une page web par exemple.
N’oublions pas non plus la notion de vlan poubelle, ou les clients ayant ‘rate’ leur authentification sont places.
On trouve plusieurs types d’authentification au sein même du concept 802.1X. J’en ai choisi trois qui je trouve sont les méthodes les plus révélatrices par leurs différences de fonctionnement, les deux premières étant les plus sécurisées, la troisième étant réservées au 802.1x-non-capable.

 

EAP-TLS : l’authentification se fait par l’échange de certificats entre le client et le serveur. Elle est donc effectuée dans les deux sens.

 

PEAP : le client authentifie le serveur avec son certificat puis l’authentification de l’utilisateur se fait grâce à ses credentials. Cette méthode n’en est pas réellement une, c’est une mise en tunnel TLS de méthode comme EAP-MSCHAPv2 ou autre.

 

Authentification via @ MAC : comparaison de l’adresse MAC machine a une base de données stockées sur un serveur.

 

Ce topic est centre sur la configuration de 802.1x PEAP sur un commutateur 3560G, un serveur 2008 R2 et un client SEVEN.
Nous allons vérifier l’identité du serveur d’authentification dans un premier temps grâce à un certificat. Cela fait, un tunnel TLS sera mise en place. L’ordinateur recevra une adresse IP via DHCP et le port du commutateur sera placé dans notre vlan de travail. L’utilisateur sera alors authentifié grâce à son login/mot de passe stocké dans l’AD.
A l’instar de la gestion de certificats pour les VPN, la configuration de la partie serveur sous 2008 est bien plus complexe que les quelques lignes de commande à entrer sur les commutateurs.

Partie 2. Installation et configuration de 2008 Server

 

Dans un premier temps nous installons un serveur 2008, configurons les interfaces réseaux et lançons la commande DCPROMO.
Créons dès à présent un utilisateur du domaine, xavon dans ce topique, et un GG de sécurité ou nous plaçons le compte ordinateur, GG_Authentification.
Cette première étape achevée, nous pouvons installer le rôle Active Directory Certificate Services

 

Quelques points :
  • Installer le service Certification Authority Web Enrollement si vous voulez utilisez EAP-TLS (ce qui ne sera pas notre cas). En effet, cette méthode requiert un certificat pour le client et il est plus facile à obtenir via http.
  • Installer un serveur type Entreprise
  • CA Type : Root CA si c’est le premier sur le réseau
  • Private Key : Création d’une nouvelle clef
  • Le reste des paramètres hormis le nom du CA peuvent être laissés par défaut.
Voilà le rôle de serveur de certificats installé.

 

Doit-on passer du temps sur la configuration de DHCP ?
Rien de bien sorcier ici, installation du rôle DHCP et création d’un pool d’adresses IP.
Ici j’utilise deux vlans, un serveur et un client : on se doit d’utiliser IP-HELPER sur les interfaces vlans.
On n’oublie pas d’activer service DHCP sur le commutateur.

 

La méthode d’authentification est simple :
Le client SEVEN va tout d’abord vérifier la validité du serveur Radius grâce au certificat de celui-ci. Ceci impose de disposer du certificat ‘computer account’ du serveur radius sur le supplicant.
Pour cela deux méthodes : déploiement via une GPO ou installation manuelle sur l’ordinateur client. Pour ce topique j’utilise la méthode 2 :
  • Exportation du certificat du serveur. On choisit celui servant à l’authentification des clients.
  • Copie dans un dossier partage et installation sur le client en tant que Trusted Root Authority.

 

Attention je rappelle que j’affiche ici le compte local computer dans ma console MMC.
cisco_8021x_1
Passons à l’installation de NPS : seul le service Network Policy Server est obligatoire.

Etape 1 : création du client radius

 

On appelle ici client le commutateur qui va effectuer l’authentification, l authentificator du début de topique.
Attention à la clef, elle devra correspondre à celle que l’on configurera plus tard sur notre commutateur.
cisco_8021x_2
Le champ Vendor Name peut rester configure en tant que Radius Standard.

Etape 2 : les policies.

 

Le plus simple étant ici d’utiliser le Getting started de Windows.
cisco_8021x_3
Radius Clients : On spécifie le client (notre commutateur configure un peu plus tôt)
EAP type for this policy : PEAP, on vérifie bien que le certificat sélectionne et celui que l’on a installé sur notre client
User Groups : le GG_Authentification contenant notre compte ordinateur.
Traffic control configuration : Nous configurons ici les attributs qui vont permettre à notre port de commutateur d’être pace dans le vlan de travail (ici le vlan10)
cisco_8021x_4
Au final, NPS créer deux policies :
Une connection request policy et une network policy.
On touche au but, passons maintenant au commutateur

Partie 3. Configuration du commutateur

 

Aaa new-model
Aaa authentication dot1x default group radius
On peut bien entendu définir une deuxième méthode d’authentification
aaa authorization network default group radius
Commande qui va nous permettre de configurer le port dans le bon vlan
aaa accounting dot1x default start-stop group radius
Très important pour avoir un suivi des connections depuis les logs du serveur radius.
Radius server host 192.168.2.2 key test
Dot1x system-auth-control : commande qui active 802.1x de manière globale sur le switch
Authentication event fail action authorize vlan 999 : en cas d’échec, configuration dans le vlan 999
Dot1x pae authenticator

 

Sur les ports clients :

 

Switchport mode access
Authentication port-control auto : active 802.1x sur le port, on peut forcer l’état non-autorisé ou inversement, autorisé quel que soit la réponse du serveur.
Ici je ne spécifie pas le vlan d’appartenance du port car je recevrai cette information du serveur.

 

Ce qui donne sur notre commutateur :

 

aaa authentication password-prompt Payes_Ton_Pwd
aaa authentication login default local
aaa authentication dot1x default group radius
aaa authorization network default group radius
aaa accounting dot1x default start-stop group radius
!
!
interface GigabitEthernet0/24
description Client
switchport mode access
switchport port-security
ip dhcp limit lease 5
ip arp inspection limit rate 10
authentication event fail action authorize vlan 999
authentication port-control auto
dot1x pae authenticator
ip verify source smartlog
ip verify source

 

Les commandes supplémentaires sécurisent DHCP, reportez-vous aux chapitres correspondants pour plus d’informations.

Partie 4. Configuration du Supplicant

 

802.1x tourne sous le service Wired Auto Config, si celui-ci n’est pas actiif l’onglet Authentication n’apparait pas dans les propriétés de la carte réseau.
cisco_8021x_5
On copie le certificat du serveur sur notre station et nous l’installons.
cisco_8021x_6
Et … une petite commande :
cisco_8021x_7
Voilà, on passe dans les propriétés de la carte réseaux et oh miracle du clic notre serveur de certificat apparaît dans les serveurs approuvés par Windows.
Le temps pour la machine de s’authentifier et voilà, la mission est accomplie.

Partie 5. Vérifications

 

Tout d’abord un show vlan pour voir si notre port est effectivement dans le vlan 10 :

 

RadSW#sh vlan
VLAN Name Status Ports
—- ——————————– ——— ——————————-
1 default active Gi0/2, Gi0/3, Gi0/4, Gi0/5
Gi0/6, Gi0/7, Gi0/8, Gi0/9
Gi0/10, Gi0/11, Gi0/12, Gi0/13
10 VLAN0010 active Gi0/23, Gi0/24
20 VLAN0020 active Gi0/1
999 Dummy active

 

RadSW#show authentication interface g0/24
Client list:
Interface MAC Address Method Domain Status Session ID
Gi0/24 f0de.f1dc.a619 dot1x DATA Authz Success C0A801010000001F2036F2F9
Available methods list:
Handle Priority Name
3 0 dot1x
Runnable methods list:
Handle Priority Name
3 0 dot1x

 

En cas de problème, essayer les commandes debug authentication all et debug dot1x all pour voir où cela peut coincer.
Nous sommes convaincus du résultat !
Pour toutes questions, n’hésitez pas.

 

Bon clic a tous !

Lien Permanent pour cet article : http://rsocisco.fr/authentification-802-1x-sur-commutateur-cisco/

Laisser un commentaire

Your email address will not be published.