
Examinons son utilisation en pratique. Windows Active Directory + NPS (deux serveurs pour la tolérance aux pannes) + la norme 802.1x pour le contrôle d'accès et l'authentification des utilisateurs, des ordinateurs du domaine et des périphériques. Vous pouvez consulter la théorie sous-jacente à cette norme sur Wikipédia à l'adresse suivante :
Mon « laboratoire » étant limité en ressources, les rôles NPS et contrôleur de domaine sont compatibles, mais je vous recommande de séparer ces services critiques.
Méthodes standard de synchronisation des configurations (politiques) Windows Je ne connais pas NPS, nous utiliserons donc des scripts PowerShell exécutés par le Planificateur de tâches (écrits par un ancien collègue). Cela permettra l'authentification des ordinateurs du domaine et des appareils qui ne prennent pas en charge NPS. 802.1x (téléphones, imprimantes, etc.), la politique de groupe sera configurée et des groupes de sécurité seront créés.
À la fin de l'article, je parlerai de certaines des subtilités du travail avec 802.1x - comment utiliser des commutateurs non gérés, des ACL dynamiques, etc. Je partagerai des informations sur les « problèmes » détectés...
Commençons par installer et configurer le basculement NPS sur Windows Server 2012R2 (2016 est identique) : via Gestionnaire de serveur -> Assistant Ajout de rôles et de fonctionnalités, sélectionnez uniquement Serveur de stratégie réseau.

ou avec PowerShell :
Install-WindowsFeature NPAS -IncludeManagementToolsUne petite précision - quant à PAE protégé (PEAP) vous aurez certainement besoin d'un certificat confirmant l'authenticité du serveur (avec les droits d'utilisation appropriés), qui sera approuvé sur les ordinateurs clients, vous devrez probablement également installer le rôle Autorité de certification. Mais nous supposerons que CA tu as déjà installé...
Faisons de même sur le deuxième serveur. Créons un dossier pour le script C:Scripts sur les deux serveurs et un dossier réseau sur le deuxième serveur SRV2NPS-config$
Créons un script PowerShell sur le premier serveur C:ScriptsExport-NPS-config.ps1 avec le contenu suivant:
Export-NpsConfiguration -Path "SRV2NPS-config$NPS.xml"Après cela, configurez la tâche dans le Planificateur de tâches : «Exporter-NpsConfiguration »
powershell -executionpolicy unrestricted -f "C:ScriptsExport-NPS-config.ps1" Exécuter pour tous les utilisateurs - Exécuter avec les privilèges les plus élevés
Quotidiennement : répétez la tâche toutes les 10 minutes. dans les 8 heures
Sur le NPS de sauvegarde, configurez l'importation de la configuration (politique) :
créez un script PowerShell :
echo Import-NpsConfiguration -Path "c:NPS-configNPS.xml" >> C:ScriptsImport-NPS-config.ps1et une tâche pour l'exécuter toutes les 10 minutes :
powershell -executionpolicy unrestricted -f "C:ScriptsImport-NPS-config.ps1" Exécuter pour tous les utilisateurs - Exécuter avec les privilèges les plus élevés
Quotidiennement : répétez la tâche toutes les 10 minutes. dans les 8 heures
Maintenant, pour vérification, ajoutons au NPS sur l'un des serveurs (!) Quelques commutateurs dans les clients RADIUS (IP et Shared Secret), deux politiques de demande de connexion : Connexion FILAIRE (Condition : « Le type de port NAS est Ethernet ») et WiFi-Entreprise (Condition : « Le type de port NAS est IEEE 802.11 ») et la politique réseau Accéder aux périphériques réseau Cisco (Administrateurs du réseau) :
Условия:
Группы Windows - domainsg-network-admins
Ограничения:
Методы проверки подлинности - Проверка открытым текстом (PAP, SPAP)
Параметры:
Атрибуты RADIUS: Стандарт - Service-Type - Login
Зависящие от поставщика - Cisco-AV-Pair - Cisco - shell:priv-lvl=15Côté switch, les réglages suivants :
aaa new-model
aaa local authentication attempts max-fail 5
!
!
aaa group server radius NPS
server-private 192.168.38.151 auth-port 1812 acct-port 1813 key %shared_secret%
server-private 192.168.10.151 auth-port 1812 acct-port 1813 key %shared_secret%
!
aaa authentication login default group NPS local
aaa authentication dot1x default group NPS
aaa authorization console
aaa authorization exec default group NPS local if-authenticated
aaa authorization network default group NPS
!
aaa session-id common
!
identity profile default
!
dot1x system-auth-control
!
!
line vty 0 4
exec-timeout 5 0
transport input ssh
escape-character 99
line vty 5 15
exec-timeout 5 0
logging synchronous
transport input ssh
escape-character 99Après réglage, après 10 minutes, tous les paramètres de politique devraient apparaître sur le NPS de sauvegarde et nous pouvons nous connecter aux commutateurs en utilisant le compte ActiveDirectory, membre du groupe domainsg-network-admins (que nous avons créé à l'avance).
Passons à la configuration d'Active Directory - créez une politique de groupe et de mot de passe, créez les groupes nécessaires.
Stratégie de groupe Ordinateurs-8021x-Paramètres:
Computer Configuration (Enabled)
Policies
Windows Settings
Security Settings
System Services
Wired AutoConfig (Startup Mode: Automatic)
Wired Network (802.3) Policies
NPS-802-1x
Name NPS-802-1x
Description 802.1x
Global Settings
SETTING VALUE
Use Windows wired LAN network services for clients Enabled
Shared user credentials for network authentication Enabled
Network Profile
Security Settings
Enable use of IEEE 802.1X authentication for network access Enabled
Enforce use of IEEE 802.1X authentication for network access Disabled
IEEE 802.1X Settings
Computer Authentication Computer only
Maximum Authentication Failures 10
Maximum EAPOL-Start Messages Sent
Held Period (seconds)
Start Period (seconds)
Authentication Period (seconds)
Network Authentication Method Properties
Authentication method Protected EAP (PEAP)
Validate server certificate Enabled
Connect to these servers
Do not prompt user to authorize new servers or trusted certification authorities Disabled
Enable fast reconnect Enabled
Disconnect if server does not present cryptobinding TLV Disabled
Enforce network access protection Disabled
Authentication Method Configuration
Authentication method Secured password (EAP-MSCHAP v2)
Automatically use my Windows logon name and password(and domain if any) Enabled
Créer un groupe de sécurité sg-ordinateurs-8021x-vl100, où nous ajouterons les ordinateurs que nous souhaitons distribuer au vlan 100 et configurerons le filtrage pour la stratégie de groupe précédemment créée pour ce groupe :

Vous pouvez vous assurer que la politique a fonctionné avec succès en ouvrant « Centre Réseau et partage (Paramètres réseau et Internet) - Modifier les paramètres de l'adaptateur (Configuration des paramètres de l'adaptateur) - Propriétés de l'adaptateur », où nous pouvons voir l'onglet « Authentification » :

Lorsque vous êtes convaincu que la stratégie est appliquée avec succès, vous pouvez procéder à la configuration de la stratégie réseau sur les ports NPS et du commutateur de niveau d'accès.
Créons une politique de réseau ordinateurs négatifs-8021x-vl100:
Conditions:
Windows Groups - sg-computers-8021x-vl100
NAS Port Type - Ethernet
Constraints:
Authentication Methods - Microsoft: Protected EAP (PEAP) - Unencrypted authentication (PAP, SPAP)
NAS Port Type - Ethernet
Settings:
Standard:
Framed-MTU 1344
TunnelMediumType 802 (includes all 802 media plus Ethernet canonical format)
TunnelPrivateGroupId 100
TunnelType Virtual LANs (VLAN) 
Paramètres typiques du port du switch (veuillez noter que le type d'authentification « multi-domaine » est utilisé - Données & Voix, et il y a également la possibilité d'une authentification par adresse mac. Pendant la « période de transition », il est logique d'utiliser dans Les paramètres:
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
L'identifiant du vlan n'est pas une « quarantaine », mais le même que celui que l'ordinateur de l'utilisateur doit obtenir après s'être connecté avec succès - jusqu'à ce que nous soyons sûrs que tout fonctionne comme il se doit. Les mêmes paramètres peuvent être utilisés dans d'autres scénarios, par exemple lorsqu'un commutateur non géré est branché sur ce port et que vous souhaitez que tous les appareils qui y sont connectés et non authentifiés tombent dans un certain VLAN (« quarantaine »).
paramètres de port de commutation en mode multidomaine en mode hôte 802.1x
default int range Gi1/0/39-41
int range Gi1/0/39-41
shu
des PC-IPhone_802.1x
switchport mode access
switchport nonegotiate
switchport voice vlan 55
switchport port-security maximum 2
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
authentication host-mode multi-domain
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
storm-control broadcast level pps 100
storm-control multicast level pps 110
no vtp
lldp receive
lldp transmit
spanning-tree portfast
no shu
exitVous pouvez vous assurer que le téléphone de l'ordinateur a réussi l'authentification avec la commande :
sh authentication sessions int Gi1/0/39 detCréons maintenant un groupe (par exemple, sg-fgpp-mab ) dans Active Directory pour téléphones et ajoutez-y un périphérique de test (dans mon cas, il s'agit de Grandstream GXP2160 avec adresse mas 000b.82ba.a7b1 et acc. compte domaine 00b82baa7b1).
Pour le groupe créé, réduisez les exigences de la politique de mot de passe (en utilisant via le Centre d'administration Active Directory -> domaine -> Système -> Conteneur de paramètres de mot de passe) avec ces paramètres Paramètres de mot de passe pour MAB:

cela nous permettra d'utiliser l'adresse mas des appareils comme mots de passe. Après cela, nous pouvons créer une politique réseau pour l'authentification MAB par méthode 802.1x, appelons-la neag-devices-8021x-voice. Les paramètres sont les suivants :
- Type de port NAS : Ethernet
- Windows Groupes – sg-fgpp-mab
- Types EAP : authentification non cryptée (PAP, SPAP)
- Attributs RADIUS - Spécifiques au fournisseur : Cisco - Cisco-AV-Pair - Valeur de l'attribut : device-traffic-class=voice
après une authentification réussie (n'oubliez pas de configurer le port du switch), voyons les informations du port :
sh authentification se int Gi1/0/34
----------------------------------------
Interface: GigabitEthernet1/0/34
MAC Address: 000b.82ba.a7b1
IP Address: 172.29.31.89
User-Name: 000b82baa7b1
Status: Authz Success
Domain: VOICE
Oper host mode: multi-domain
Oper control dir: both
Authorized By: Authentication Server
Session timeout: N/A
Idle timeout: N/A
Common Session ID: 0000000000000EB2000B8C5E
Acct Session ID: 0x00000134
Handle: 0xCE000EB3
Runnable methods list:
Method State
dot1x Failed over
mab Authc SuccessMaintenant, comme promis, considérons quelques situations pas tout à fait évidentes. Par exemple, nous devons connecter les ordinateurs et les appareils des utilisateurs via un commutateur non géré (switch). Dans ce cas, les paramètres du port ressembleront à ceci :
paramètres de port de commutation en mode multi-authentification en mode hôte 802.1x
interface GigabitEthernet1/0/1
description *SW – 802.1x – 8 mac*
shu
switchport mode access
switchport nonegotiate
switchport voice vlan 55
switchport port-security maximum 8 ! увеличиваем кол-во допустимых мас-адресов
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
authentication host-mode multi-auth ! – режим аутентификации
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
storm-control broadcast level pps 100
storm-control multicast level pps 110
no vtp
spanning-tree portfast
no shuPS Un problème très étrange a été remarqué - si l'appareil était connecté via un tel commutateur, puis branché sur un commutateur géré, il ne fonctionnera PAS tant que nous n'aurons pas redémarré (!) Le commutateur. Je n'ai pas trouvé d'autres moyens de résoudre ce problème.
Autre point lié au DHCP (si ip dhcp snooping est utilisé) - sans ces options :
ip dhcp snooping vlan 1-100
no ip dhcp snooping information optionpour une raison quelconque, je n'arrive pas à obtenir la bonne adresse IP... bien que cela puisse être une fonctionnalité de notre serveur DHCP
Et aussi Mac OS & Linux (qui prennent en charge nativement la norme 802.1x) tentent d'authentifier l'utilisateur, même si l'authentification par adresse MAC est configurée.
Dans la prochaine partie de l'article, nous examinerons l'utilisation du 802.1x pour le sans fil (en fonction du groupe auquel appartient le compte utilisateur, nous le « lancerons » dans le réseau approprié (vlan), bien qu'il se connectera au même SSID).
Source: habr.com
