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 place dans notre vlan de travail.
L’utilisateur sera alors authentifier grâce à son login/mot de
passe stocke 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 des
a présenté un utilisateur du domaine, xavon dans ce topic, et un GG
de sécurité ou nous plaçons le compte ordinateur,
GG_Authentification.
Cette première étape achevée, nous pouvons installe le role 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 laisses par défaut.
Voilà le
rôle de serveur de certificats installe.
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 topic 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.
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 topic.
Attention à
la clef, elle devra correspondre à celle que l’on configurera plus
tard sur notre commutateur.
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.
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)
Au final,
NPS crée deux policies :
Une
connection request policy et une network policy.
On touche
au but, passons maintenant au commutateur
Partie
2. 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-autorise ou inversement, autorise quel que soit
la réponse du serveur.
Ici je ne
spécifie pas le vlan d’appartenance du port, 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
3. Configuration du Supplicant
802.1x
tourne sous le service Wired Auto Config, si celui-ci n’est pas
active l’onglet Authentication n’apparait pas dans les propriétés
de la carte réseau.
On copie le certificat du serveur sur notre station et nous l'installons.
Et … une
petite commande :
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 approuves
par Windows.
Le temps
pour la machine de s'authentifier et voilà, la mission est
accomplie.
Partie
4. 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 ou cela peut coincer.
Nous sommes
convaincus du résultat !
Pour toutes
questions, n’hésitez pas.
Bon clic a
tous !
Aucun commentaire:
Enregistrer un commentaire