Cisco ISE
Sommaire
- 1 Renseignements principaux
- 2 Debugging
- 3 Blacklister/Whitelister une machine
- 4 Maintenance
- 5 Configuration des clients
- 6 Déclaration d'éléments réseau
- 7 Ajout de règles
Renseignements principaux[modifier]
- nœud 1 : 10.13.102.221/24
- nœud 2 : 10.13.102.222/24
- Serveurs NAC MOY1300
- Virtualisé sur cluster VMware
- Identifiants compte admin dans KeePassX du campus, sur Mars\services\SSI\pwd
- Nœud primaire - Gestion de l'ensemble des fonctionnalités d'ISE
- Nœud secondaire - Gestion d'ISE en cas de plantage du nœud primaire + quelques autres fonctions (ex : conf NTP)
- Pour l'accès à l'interface web, privilégier Chromium et ses dérivés
Debugging[modifier]
Debugging Authentification clients[modifier]
Statut des nœuds[modifier]
À vérifier depuis Administration → System → Deployment → Deployment Nodes.
Interface Web[modifier]
Live Logs[modifier]
La page Operations → RADIUS → Live logs permet de visualiser les différentes étapes liées au processus d’authentification d’un client.
En revanche le nombre d'entrées présentées est limité. Si la tentative d'authentification n'apparaît pas, voir la section suivante : **Reports**.
L'affichage des clients peut se faire selon plusieurs critères :
- Statut (Auth Passed/Auth Failed)
- Identité (username)
- adresse MAC
- Type de device (marque / type d'équipement)
- Politique d'authentification utilisée (DR13 / SHD)
- VLAN
- Switch
On clique sur l’icône dans la colonne au niveau de la ligne correspondant à notre client afin d’afficher des informations détaillées. On retrouve notamment :
- les étapes de la phase d'authentification
- la policy que le client a matché (Authorization Policy)
- le VLAN qui lui a été attribué (Authorization Result)
- les informations liées à l'AD : CN (AD-Host-Resolved-DNs) et Groupe du client (AD-Groups-Names)
En cas d'erreur, un code d'erreur et un intitulé sont fournis dans le champs Event.
Si la description fournie est peu claire, le document Debug_ISE.xlsx sur Mars\services\SSI\Logiciels et licences\CISCO ISE contient l'ensemble des codes d'erreur et leur signification
Reports[modifier]
Pour obtenir un historique des authentifications sur les 7 derniers jours, aller dans Operations → Reports → Reports → Endpoints and Users → RADIUS Authentications.
/!\ Il faut être patient pour l'affichage des entrées les plus anciennes.
Les fonctionnalités sont identiques à celles de la page Live Logs.
Logs sur Vesta[modifier]
Pour obtenir un historique des authentifications sur une année, se connecter à Vesta (compte root dans KeePassX du campus, sur Mars\services\SSI\pwd).
Se rendre dans /var/log/HOSTS/YYYY/MM/DD/PROD-ISE-1 pour afficher le contenu du fichier local6.log
Outils de diagnostic[modifier]
RADIUS Authentication Troubleshooting[modifier]
- 1. Renseigner l'identifiant de connexion ou l'adresse MAC du client
- 2. Cliquer sur Search
- 3. Sélectionner la ligne dont le status est failed
- 4. Cliquer sur Troubelshoot
- 5. Cliquer sur Show Result Summary
Le résultat contient l'identification du problème rencontré et indique quel élément de configuration entraîne un problème d'authentification du client.
Endpoint Debug[modifier]
/!\ Très très verbeux !!
Pour obtenir des logs plus précis à partir de l'adresse MAC ou l'adresse IP du client :
- 1. Se rendre dans Operations → Troubleshoot → Diagnostic Tools → EndPoint Debug
- 2. Cliquer sur Start
- 3. Initier une connexion au réseau depuis le client à debugguer
- 4. Télécharger les logs
C’est cette méthode qui nous a permis d’identifier une erreur protocolaire empêchant l’authentification 802.1X sur les anciennes imprimantes SHARP.
TCP Dump[modifier]
ISE offre la possibilité de réaliser une capture de trame sur ses interfaces :
- 1. Se rendre dans Operations → Troubleshoot → Diagnostic Tools → TCP Dump
- 2. Vérifier s'il existe déjà une capture pour le nœud ISE ciblé. Si tel est le cas, la supprimer
- 3. Renseigner le hostname du nœud ISE, l'interface réseau, un filtre (supporte les filtres standards TCP Dump), les propriétés du fichier de capture, sa durée et le mode promiscuité
- 4. Sauvegarder les paramètres de la capture puis cliquer sur Start en l'ayant sélectionnée au préalable
- 5. Cliquer sur Stop
- 6. Cliquer sur Download
- 7. Visualiser avec Wireshark
Switch Cisco[modifier]
Statut sessions 802.1X[modifier]
Affichage du résumé du statut des clients 802.1X sur toutes les interfaces.
show dot1x all summary Interface PAE Client Status ----------------------------------------------------------------------------------- Gi1/0/3 AUTH f09f.fc14.df78 AUTHORIZED
Détail d'une session sur une interface[modifier]
show dot1x interface GigabitEthernet1/0/3 details Dot1x Info for GigabitEthernet1/0/3 ----------------------------------- PAE = AUTHENTICATOR PortControl = AUTO ...
VLAN mapping[modifier]
Visualiser le VLAN associé à chaque port.
show vlan
Logging 802.1X[modifier]
Activer les logs dot1x.
debug dot1x all
Switch Juniper[modifier]
Visualiser les sessions 802.1X[modifier]
show dot1x interface 802.1X Information: Interface Role State MAC address User ge-0/0/1 Authenticator Authenticated 00:a0:d2:18:1a:c8 user
Détail d'une session sur une interface[modifier]
show dot1x interface ge-0/0/1.0 detail ge-0/0/1.0 Role: Authenticator Administrative state: Auto ...
VLAN mapping[modifier]
Visualiser le VLAN associé à chaque port.
show vlans
Logging 802.1X[modifier]
Exemple : afficher les 10 dernières entrées du fichier de logs dot1x
show log dot1x | last 10
Etats des serveurs radius[modifier]
show network-access aaa radius-servers
Profile: 8021x-auth
Server address: 10.13.102.221
Authentication port: 1812
Accounting port: 1813
Status: UP
Server address: 10.13.102.222
Authentication port: 1812
Accounting port: 1813
Status: UP
Debugging nœuds ISE[modifier]
Alarmes[modifier]
Visibles depuis le Dashboard.
Une description et les solutions à apporter sont renseignées dans le document Debug_ISE.xlsx sur Mars\services\SSI\Logiciels et licences\CISCO ISE.
Statut des nœuds[modifier]
À vérifier depuis Administration → System → Deployment → Deployment Nodes.
Statut des services[modifier]
Commande à exécuter en CLI via SSH sur n’importe quel nœud.
show application status ise
Jonction avec l'AD[modifier]
Vérifier dans Administration → Identity Management → External Identity Sources → Active Directory → Node View
Plantage nœud secondaire[modifier]
Redémarrer le nœud en CLI via SSH (~15/20min).
reload
Plantage nœud primaire[modifier]
Sur nœud secondaire, vérifier si la bascule a fonctionné (accès à l'ensemble des menus d'administration).
Sinon, aller à Deployment → Promote to Primary
Sur nœud primaire, redémarrer en CLI via SSH (~15/20min) :
reload
Plantage complet[modifier]
Redémarrer nœud primaire puis nœud secondaire :
reload
Blacklister/Whitelister une machine[modifier]
Script ise_veroles.sh[modifier]
En cas de détection d'une machine potentiellement vérolée, le script BASH ise_veroles.sh situé sur Mars\services\SSI\Logiciels et licences\CISCO ISE peut être utilisé pour :
- blacklister et isoler du réseau
- whitelister et redonner l'accès au réseau
Utilisation du script[modifier]
Prérequis[modifier]
- Installer le paquet jq
- Renseigner une adresse MAC
- Fournir les mots de passe des API ERS et MNT d'ISE (accessibles depuis Keepass sur Mars\services\SSI\pwd)
Blacklister une machine[modifier]
L'option -b permet :
- d'ajouter via l'API ERS d'ISE l'adresse MAC d'une machine au groupe d'endpoints Veroles accessible sur ISE dans Administration → Identity Management → Groups
- de réinitialiser la session 802.1X de la machine auprès du switch auquel elle est connectée en exploitant l'API MNT ce qui a pour effet de la priver immédiatement d'accès réseau
Pour blacklister une machine à partir de son adresse MAC :
$ ./ise-verole.sh -b MAC Address of target endpoint> AB:CD:EF:01:23:45 Info: You will need ERS and MNT's API passwords Info: Passwords will be hidden for security reasons ERS API Password> MNT API Password> Info: Endpoint AB:CD:EF:01:23:45 added to blacklist
Whitelister une machine[modifier]
L'option -w permet de :
- retirer l'adresse MAC d'une machine du groupe d'endpoints Veroles présent sur ISE
- réinitialiser sa session 802.1X auprès du switch auquel elle est connectée afin qu'elle récupère l'accès au réseau
Pour whitelister une machine à partir de son adresse MAC :
$ ./ise-verole.sh -w MAC Address of target endpoint> AB:CD:EF:01:23:45 Info: You will need ERS and MNT's API passwords Info: Passwords will be hidden for security reasons ERS API Password> MNT API Password> Info: Endpoint AB:CD:EF:01:23:45 removed from blacklist
Mode debug[modifier]
Le script dispose d'un mode debug permettant de fournir à l'utilisateur un retour sur la bonne exécution des différentes fonctions du script.
Cela permet d'identifier à quelle étape ce dernier a été stoppé. Pour l'activer, il suffit d'ajouter l'option -d.
Maintenance[modifier]
Déploiement Patch de sécu[modifier]
Télécharger le patch et le copier sur le serveur SFTP (compte root dans KeePassX du campus sur Mars\services\SSI\pwd).
IMPORTANT : Comparer la valeur du hash avec celle sur le site de Cisco afin de vérifier l’intégrité du fichier
scp patch_file.tar.gz root@10.13.102.118:/var/sftp/upgrades/
En CLI depuis le nœud primaire, installation du patch.
patch install patch_file.tar.gz SFTP-upgrades
Redémarrage d’un nœud = ~20 minutes. Durant 1 Patch, 1 redémarrage/nœud a lieu. Il faut être patient...
Une fois le patch installé sur le nœud primaire, il va être déployé automatiquement sur le nœud secondaire.
L’avancement du déploiement est visible depuis Administration → System → Maintenance → Installed Patches → Numéro_de_patch → Show Node Status ou en CLI sur le nœud concerné :
show logging system ade/ADE.log tail
Une fois l'installation terminée et validée, supprimer le fichier sur le serveur SFTP.
Déploiement Hotpatch[modifier]
Hotpatch = patch de sécu déployé en urgence en cas de faille de sécu à haut impact (ex : Log4Shell).
Télécharger le hotpatch et le copier sur le serveur SFTP (compte root dans KeePassX du campus sur Mars\services\SSI\pwd).
IMPORTANT : Comparer la valeur du hash avec celle sur le site de Cisco afin de vérifier l’intégrité du fichier
scp hotpatch_file.tar.gz root@10.13.102.118:/var/sftp/upgrades/
En CLI depuis le nœud primaire, installation du hotpatch.
application install hotpatch_file.tar.gz SFTP-upgrades
Les hotpatch ne sont pas visibles depuis l’interface web d’ISE. Seule cette commande permet d’obtenir les informations les concernant.
show logging application hotpatch.log Thu Feb 17 16:32:42 CET 2022 => CSCwa47133_3.1.0.518_patch1
Une fois l'installation terminée et validée, supprimer le fichier sur le serveur SFTP.
MAJ d'ISE[modifier]
Étapes d'une MAJ[modifier]
- Mettre à jour le nœud secondaire en CLI. Le processus de mise à jour va automatiquement supprimer la déclaration de ce nœud sur le nœud primaire puis le second nœud va devenir le nœud primaire lors du redémarrage survenant à la fin de la MAJ.
- Mettre à jour l’ancien nœud primaire en CLI. Le processus de mise à jour va automatiquement enregistré le nœud en tant que nœud secondaire
- Promouvoir le nouveau nœud secondaire afin qu’il retrouve sa place initiale de nœud primaire
Mise à jour CLI via SSH[modifier]
Télécharger l'upgrade et la copier sur le serveur SFTP (compte root dans KeePassX du campus sur Mars\services\SSI\pwd).
IMPORTANT : Comparer la valeur du hash avec celle sur le site de Cisco afin de vérifier l’intégrité du fichier
scp ise-upgradebundle-file.tar.gz root@10.13.102.118:/var/sftp/upgrades/
En CLI depuis le nœud primaire, préparation de la MAJ.
application upgrade prepare ise-upgradebundle-file.tar.gz SFTP-upgrades
Installation de la MAJ.
application upgrade proceed
Redémarrage d’un nœud = ~20 minutes. Durant 1 MAJ, 2 redémarrages consécutifs d'un nœud ont lieu. Il faut être patient...
Une fois la mise à jour terminée :
- si les nœuds contiennent d’anciens logs, exécuter la commande application configure ise et choisir 5 (Refresh Database Statistics) sur ces nœuds.
- supprimer le fichier sur le serveur SFTP
Renouvellement des certificats[modifier]
Récupération du nouveau certificat[modifier]
Récupérer le fichier certificate only sur https://cert-manager.com/customer/Renater?locale=en
Export de la clé privée[modifier]
Pour récupérer la clé privée associée au précédent certificat.
- Sur ISE, se rendre dans Administration → System → Certificates
- Cocher le certificat avec un Friendly Name sous la forme CN=prod-ise-X.ad.dr13.cnrs.fr,O=Centre national de la recherche scientifique,ST=Paris,C=FR
- Cliquer sur Export
- Cocher Export Certificate and Private Key
- Renseigner le mot de passe de la clé privée ("PrivateKey ISE1 et 2" dans Keepass deleg)
- Cliquer sur Export
Import du nouveau certificat[modifier]
Pour importer le nouveau certificat et la clé privée récupérés précédemment
- Choisir le nœud ISE associé
- Sélectionner le fichier contenant le nouveau certificat
- Sélectionner le fichier contenant la clé privée
- Renseigner le mot de passe de la clé privée
- Cocher les rôles Admin, EAP Authentication et RADIUS DTLS
- Cliquer sur OK pour chaque Warning indiquant que le serveur va redémarrer en appliquant le rôle sélectionné
- Cliquer sur Submit
/!\ Le serveur ISE dont le certificat est modifié va redémarrer (~15min)
L'ancien certificat est désormais visible avec la mention Not in use dans la colonne Used By. Ce dernier va rester dans le magasin de certificat jusqu'à son expiration et les alertes resteront présentes jusqu'à sa suppression.
Changement de DNS[modifier]
Se connecter en CLI via SSH sur le nœud primaire puis exécuter les commandes suivantes :
conf t no ip name-server ancienne_IP ip name-server nouvelle_IP
Sur le nœud secondaire, le promouvoir en tant que maître depuis Deployment → Promote to Primary
Sur nœud primaire, redémarrer en CLI via SSH (~15/20min) :
reload
Faire de même pour le nœud secondaire en promouvant à nouveau le nœud 1 comme nœud primaire.
Réinstallation complète d'ISE[modifier]
Nœud primaire[modifier]
Déploiement de la VM[modifier]
- Télécharger l'OVA d'ISE depuis https://software.cisco.com/software/csws/ws/platform/home#
- Cliquer droit sur le cluster CAMPUS puis cliquer sur Deploy OVF Template...
- Compléter le déploiement en choisissant un node, le datastore T1-T3-SCV_LV-Delegation, le VLAN 102 DR13-Priv et le type de VM → Small
- Fournir les ressources suivantes à la VM :
- 16 vCPU - 32 Go de RAM - 300 Go de stockage sur le datastore T1-T3-SCV_LV-Delegation - 2 adaptateurs réseau E1000 dans le VLAN 102
- Ajouter la note suivante à la VM :
! NE PAS FAIRE DE SNAPSHOTS ! ! NE PAS REDIMENSIONNER LES DISQUES ! ! NE PAS FAIRE DE SNAPSHOTS ! ! NE PAS REDIMENSIONNER LES DISQUES !
Première configuration[modifier]
Cette étape prend ~ 30min.
Au démarrage, un login est demandé. L'ignorer et entrer setup pour configurer ISE.
/!\ Le clavier est en qwerty ! /!\ Le nœud primaire doit avoir le même hostname que son prédécesseur !
Démarrer la VM et renseigner les informations suivantes (avec X = numéro du nœud) :
- hostname : iseX
- IP address : 10.13.102.4X
- IP netmask : 255.255.255.0
- IP default gateway : 10.13.102.1
- Do you want to configure IPv6 address : N
- default DNS domain : ad.dr13.cnrs.fr
- Primary nameserver : 10.13.102.208
- Add secondary nameserver : Y
- Secondary nameserver : 10.13.102.216
- Add tertiary nameserver : N
- NTP server : 10.13.102.1
- Add another NTP server : N
- System timezone : Europe/Paris
- Enable SSH service : Y
- Username : srvise
- Password : (/!\ clavier en qwerty !)
Recréer le bonding d'interfaces (entraîne un redémarrage des services ~15 min) :
interface GigabitEthernet 0 backup interface GigabitEthernet 1 exit interface GigabitEthernet 1 no shut exit
Réimporter le certificat associé à iseX.ad.dr13.cnrs.fr (voir section import du nouveau certificat)
Changement du statut du nœud[modifier]
- Vérifier que le serveur web soit accessible
show application status ise
- Se rendre à l'adresse http://@IP
- Entrer les identifiants du compte admin configuré précédemment
- Se rendre dans Administration → System → Deployment → Cocher le nœud → Edit → cliquer sur Make Primary
Ajout des repository SFTP[modifier]
Se rendre dans Administration → System → Maintenance → Repository → Add.
Remplir les champs comme suit pour les backups :
- Repository Name : SFTP-deleg
- Protocol : SFTP
- Server Name : 10.13.102.118
- Path : /ise-backups
- User Name : sftp
- Password : Voir compte sftp dans KeePassX du campus sur Mars\services\SSI\pwd
Remplir les champs comme suit pour les upgrades :
- Repository Name : SFTP-upgrades
- Protocol : SFTP
- Server Name : 10.13.102.118
- Path : /upgrades
- User Name : sftp
- Password : Voir compte sftp dans KeePassX du campus sur Mars\services\SSI\pwd
Se connecter en CLI via SSH pour ajouter la host_key du serveur SFTP.
crypto host_key add host 10.13.102.118
Restaurer la configuration[modifier]
Compter ~ 40min pour la restauration + ~20 min avant d'accéder à l'interface web.
Se connecter en CLI via SSH et exécuter la commande ci-après (pour le mot de passe, voir ISE - Clé chiffrement backup dans KeePassX du campus sur Mars\services\SSI\pwd):
restore Save_ISE_Config-CFG10-YYMMDD-0000.tar.gpg repository SFTP-deleg encryption-key plain <password>
La restauration en CLI permet de suivre les différentes étapes de la restauration contrairement à une restauration via le web.
Nœud secondaire[modifier]
/!\ Le nœud secondaire doit avoir le même hostname que son prédécesseur !
- Suivre les étapes du nœud primaire en s'arrêtant à la fin de la partie Première configuration
- Mettre à jour le nœud dans la même version que le nœud primaire, patch de sécurité compris. Compter ~30 min.
- Sur le nœud primaire, se rendre dans Administration → System → Deployment → Register puis renseigner :
- FQDN : prod-ise-2.ad.dr13.cnrs.fr - User Name : admin - Password : même mot de passe qu'à l'installation de la VM
- Se rendre dans Administration → System → Deployment → Cocher le nœud → Edit → cliquer sur Make Secondary
- L'ajout du nœud secondaire prend ~30 min
- Vérifier le statut des nœuds dans Administration → System → Deployment
- Refaire la jonction avec les AD DR13 et SHD
Régénérer la CA root interne[modifier]
Suite à la réinstallation complète d'un nœud et à son ajout dans le Deployment, le message d'erreur suivant apparaît :
Queue Link Error: Message=Certificate Issue From PROD-ISE-1.ad.dr13.cnrs.fr To PROD-ISE-2.ad.dr13.cnrs.fr; Cause={tls_alert;{unknown_ca;"tls Client: In State Certify At Ssl_handshake.erl:1887 Generated Client Alert: Fatal - Unknown Ca\n"} Action=Regenerate ISE Messaging Service Certificate
Il est alors nécessaire de régénérer la CA root interne pour tous les nœuds du cluster : - Se rendre dans Administration → System → Certificates → Certificate Management → Certificate Signing Requests - Dans Usage, sélectionner ISE Root CA puis cocher Regenerate Root CA for All Nodes - Cliquer sur Replace ISE Root CA Certificate chain
Le service ISE Messaging Service va redémarrer entraînant la coupure de l'envoi de logs vers le syslog. Pour éviter cette coupure, se rendre dans Administration → System → Logging → Log Settings puis décocher Use ISE Messaging Service for UDP Syslogs delivery to MnT le temps de l'opération.
Compter 5 à 10 minutes pour le renouvellement des certificats. Cette opération n'engendre aucune coupure des nœuds ou du Deployment.
Supprimer l'ensemble des certificats générés via l'ancienne CA dans Administration → System → Certificates :
- Certificate Management : Trusted Certificates (avec le statut Stale) et System Certificates)
- Certificate Authority : CA Certificates
Pour faciliter la tâche regarder les dates de validité des certificats.
Pour les Trusted Certificates, les éditer et décocher Trust for authentication within ISE puis les désactiver. ISE indique si le certificat dépend d'un autre certificat. Cela permet de remonter la chaîne et de supprimer les certificats dans l'ordre. /!\ Très fastidieux mais nécessaire pour avoir un magasin de certificats propre !
Bugs rencontrés[modifier]
Connexion impossible vers un repo SFTP distant[modifier]
Bug rencontré rendant impossible d'établir une connexion avec un repo SFTP distant configuré graphiquement ou en CLI. Dans ce cas, le mot de passe est enregistré dans la conf du nœud ISE.
L'erreur peut être générée via ces commandes :
show repository SFTP-XXXX patch install patchbundle-file SFTP-XXXX
Sur le serveur SFTP, l'erreur Wrong password apparaît même s'il s'agit du bon mot de passe.
En revanche, la connexion au SFTP fonctionne si le mot de passe est demandé à l'utilisateur (non fournit dans la configuration du nœud ISE).
La commande ci-dessous génère un log sur le serveur SFTP indiquant que le password est bon :
ssh 10.13.102.118 sftp
Il est donc possible d'effectuer la copie d'un fichier d'upgrade comme suit (demande là aussi le mot de passe à l'utilisateur) :
copy sftp://10.13.102.118/chemin_repo local-disk
Local-disk étant un repository local qui pointe vers disk:/
Configuration des clients[modifier]
Imprimantes[modifier]
Création utilisateur dans l'AD[modifier]
Créer l'utilisateur dans ad.dr13.cnrs.fr → DR13 → Utilisateurs → divers, avec :
- Nom complet : nom de l'imprimante
- Description : Compte NAC ISE
- Membre de : NAC_Printers
- Cocher : L'utilisateur ne peut pas changer de mot de passe et Le mot de passe n'expire jamais
Ajouter le mot de passe de l'utilisateur créé dans le KeePassX du campus sur Mars\services\SSI\pwd.
Configuration réseau[modifier]
Se connecter à l'interface web puis se rendre dans Réglages système → Réglages réseau → Réglages de l'interface.
Dans la section Réglage IEEE802.1X, renseigner les infos suivantes :
- Authentification IEEE802.1X: Activer
- Méthode d'authentification EAP: PEAP
- Nom d'utilisateur EAP: printer_username_AD
- Mot de passe: printer_pwd_AD
PC sous Linux[modifier]
Avec WPA Supplicant[modifier]
Éditer le fichier /etc/wpa_supplicant/wpa_supplicant-wired-adapter.conf en remplaçant adapter par l'ID de la carte réseau.
ctrl_interface=/run/wpa_supplicant
ap_scan=0
network={
key_mgmt=IEEE8021X
eap=PEAP
identity="AD_username"
password="AD_password"
phase2="autheap=MSCHAPV2"
}
Attribuer les droits suivants au fichier de conf.
sudo chown root:root wpa_supplicant-wired-adapter.conf sudo chmod 600 wpa_supplicant-wired-adapter.conf
Pour utiliser un hash du mot de passe à la place d'un texte en clair, la directive password doit être modifiée comme suit.
password=hash:hash_of_plaintext_password
Obtenir un hash du mot de passe.
iconv -t utf16le | openssl md4
Après avoir exécuté la commande ci-dessus, saisir le mot de passe, appuyer sur Entrée puis Ctrl+D.
Avant d'activer le service associé à la carte réseau, on la désactive.
sudo ip link set adapter down
Activer le service systemd associé à l'interface (changements appliqués au prochain redémarrage).
systemctl enable wpa_supplicant-wired@interface.service
Avec Netplan[modifier]
Modifier le fichier /etc/netplan/netcfg.yaml.
network:
version: 2
ethernets:
adapter:
dhcp4: true
auth:
key-management: 802.1x
method: peap
identity: AD_username
password: AD_password
Pour utiliser un hash du mot de passe à la place d'un texte en clair, la directive password doit être modifiée comme suit.
password: hash:hash_of_plaintext_password
Obtenir un hash du mot de passe.
iconv -t utf16le | openssl md4
Après avoir exécuté la commande ci-dessus, saisir le mot de passe, appuyer sur Entrée puis Ctrl+D.
Appliquer les changements apportés à Netplan puis redémarrer.
sudo netplan apply sudo reboot
PC sous Windows[modifier]
Configurés selon la GPO définie dans ad.dr13.cnrs.fr → DR13 → Services → 802.1x Filaire DR13.
- Active 802.1X et pousse la configuration
- Active le service Configuration Automatique de réseau câblé de manière Automatique
- Pousse les certificats racine GEANT OV
Déclaration d'éléments réseau[modifier]
Ajout d'un VLAN[modifier]
Dans Policy → Policy Elements → Results → Authorization → Authorization Profiles → Add :
- Renseigner un nom
- Définir le type d'accès sur ACCESS_ACCEPT
- Dans Common Tasks, cocher VLAN et indiquer l'ID/Name du VLAN.
Ajout de switch[modifier]
1 switch[modifier]
/!\ Conf SNMP non fonctionnelle sur les SW Juniper !
Dans Administration → Network Resources → Network Devices → Add :
- Name : Sw-DR-BatX-Y
- Description : Commut Y BAT X
- IP Address : 10.13.105.ZZZ/32
- Device Profile : Cisco_DR13 ou Juniper_EX_DR13
- Model Name : À adapter
- Software version : À adapter
- Location : Switch DR13 / Switch Campus - Batiment X
- Device Type : Cisco Switch / Juniper Switch
- Shared Secret : À copier dans conf du SW (Voir KeePassX du campus, sur Mars\services\SSI\pwd)
- CoA Port : 1700 (Cisco) / 3799 (Juniper)
- SNMP Version : 3
- SNMP Username : ISE
- Security Level : Priv
- Auth Protocol : SHA
- Auth Password : Voir KeePassX du campus, sur Mars\services\SSI\pwd
- Privacy Protocol : AES256
- Privacy Password : Voir KeePassX du campus, sur Mars\services\SSI\pwd
Liste de switchs[modifier]
Télécharger le fichier template_switch.csv situé sur Mars\services\SSI\Logiciels et licences\CISCO ISE.
Adapter les champs suivants pour chacun des switch en s'inspirant des templates Cisco et Juniper :
- Name
- Description
- IP Address
- Network Device Groups
Importer le fichier depuis Administration → Network Resources → Network Devices → Import.
Ajout d'un AD[modifier]
Dans Administration → Identity Management → External Identity Sources → Active Directoy → Add, renseigner :
- Nom
- FQDN
- identifiants utilisateur avec droits d'admin
Ajout de règles[modifier]
Protocoles utilisés[modifier]
Possibilité de créer (bouton Add) un profil rassemblant un ensemble de protocoles (MAB, EAP-TLS,...) qui vont être utilisés pour l'authentification. Avant d'en définir de nouveaux, voir ceux pré-existants (DR13-DOT1X et SHD-DOT1X).
Définir de nouveaux profils depuis le menu Policy → Policy Elements → Results → Authentication → Allowed protocols
Policy Sets[modifier]
Indiquer ensuite des conditions qui vont permettre de définir des ensembles de règles (Policy Sets).
Ces conditions sont définies dans Policy → Policy Sets. Possibilité d'ajout via le bouton + en haut à gauche dans le tableau ou duplication à partir de la roue crantée.
Les tentatives de connexion sont séparées selon 2 conditions :
- le type de connexion (filaire, sans fil)
- le type de switch (DR13 ou Campus)
Règles d’autorisation d'accès au réseau[modifier]
Menu permettant de définir une règle accessible en cliquant sur le chevron bleu située sur la droite au niveau de la colonne View.
Ajout d'une règle : Authorization Policy puis cliquer sur le bouton + en haut à gauche dans le tableau ou sur la roue crantée pour dupliquer.
Éditeur de règles[modifier]
Configuration d'une règle[modifier]
Comporte 2 parties :
- Bibliothèque de conditions et règles pré-existantes
- L'éditeur en lui-même permettant d'accorder un accès réseau à une machine selon un ensemble d'attributs (certificat, identity group,...) et leurs valeurs respectives.
IMPORTANT : Une fois l'édition d'une règle terminée, 2 possibilités pour l'appliquer :
- La sauvegarder (bouton Save) pour la réutiliser ultérieurement (elle sera alors stockée dans la bibliothèque évoquée ci-dessus). En revanche, seul le nom de cette règle sera affiché dans la section Policy Sets au lieu des éléments qui la constitue
- L’utiliser (bouton Use) pour que le détail des éléments composant une condition soit visible dans la section Policy Sets. En revanche, il faut réécrire intégralement la règle pour la réutiliser
Exemple : fonctionnement de la règle DR13 Users SSI[modifier]
L'ensemble de règles nommé DR13-DOT1X-wired authentifie toutes les machines se connectant en filaire via 802.1X sur un switch appartenant à la DR13.
Exemple : les imprimantes se connectent via PEAP afin d'obtenir un accès au vlan 150.
La règle DR13 Users SSI définie dans Policy → Policy Sets → DR13-DOT1X-wired → Authorization Policy indique que la machine souhaitant obtenir un accès au VLAN 110 doit appartenir au groupe NAC_SSI dont le distinguishedName dans l'AD est égal à ad.dr13.cnrs.fr/DR13/Utilisateurs/groupes/NAC_SSI.
Exemple de configuration d'une règle MAB[modifier]
Certains clients ne supporte pas 802.1X. Il existe un mode dégradé MAB (MAC Authentication Bypass) utilisant l'adresse MAC du client pour l'authentifier.
Exemple de configuration pour la DR13 ci-après.
Identity Group[modifier]
Créer un groupe d’identité (contient les adresses MAC des clients non compatibles 802.1X) depuis Administration → Identity Management → Groups → Endpoint Identity Groups → Add.
- Name : DR13-MAB-Clients
- Description : DR13 MAB clients group
Cliquer sur Submit.
Ajouter un endpoint[modifier]
Pour ajouter des équipements à partir de leur adresse MAC, il faut que ces derniers se soient connectés à un switch dialoguant avec ISE. Pour se faire, on se rend dans Administration → Identity Management → Groups → Endpoint Identity Groups → DR13-MAB-Clients → Add.
Ajouter une liste d'endpoints[modifier]
Pour ajouter une liste d'endpoints au groupe, il faut importer un fichier CSV. Télécharger le template depuis Context Visibility → Endpoints → Import → Import From File → Generate a Template.
Exemple des champs à remplir pour insérer une imprimante :
- MAC Address : F0:9F:FC:AA:BB:CC
- IdentityGroup : DR13-MAB-Clients
- Location : Location#All Locations#Switchs DR13#Batiment A
- User-Name : F0-9F-FC-AA-BB-CC
- StaticAssignment : false
- StaticGroupAssignment : true
Une fois le fichier CSV terminé, l'importer depuis Context Visibility → Endpoints → Import → Import From File.
Policy Set[modifier]
Dans Policy → Policy Sets, ajout d'un Policy Set nommé DR13-MAB via le bouton + en haut à gauche dans le tableau.
Cliquer sur + dans la colonne Conditions.
Définir les conditions d'application de cette règle comme suit :
- 1. Cliquer sur AND
- 2. Déplacer le bloc Wired_MAB (à gauche) vers le bloc contenant NEW | AND | OR
- 3. Cliquer sur NEW
- 4. Sélectionner Click to add an attribute → Location → Device Location
- 5. Sélectionner Starts with dans le menu déroulant contenant Equals par défaut
- 6. Dans Choose from list or type, sélectionner All Locations#Switchs DR13
- 7. Cliquer sur Use tout en bas à droite
Terminer en renseignant la colonne Allowed Protocols avec DR13-DOT1X.
Règle d’autorisation d'accès au réseau[modifier]
Pour définir une règle, cliquer sur le chevron bleu située sur la droite au niveau de la colonne View.
Ajouter une règle DR13 Clients MAB dans Authorization Policy en cliquant sur le bouton + en haut à gauche dans le tableau.
Clique sur + dans la colonne Conditions.
Définir les conditions d'application de cette règle comme suit :
- 1. Sélectionner Click to add an attribute → Identity group → IdentityGroup-Name
- 2. Laisser la valeur par défaut Equals
- 3. Dans Choose from list or type, sélectionner DR13-MAB-Clients
- 4. Cliquer sur Use tout en bas à droite
Indiquer le VLAN adéquat dans la colonne Profiles.
Laisser la colonne Security Groups vide.