802.1x, EX2200, NPS et tout-tout-tout ...

L'idée d'utiliser le 802.1x comme moyen de lutter contre les accès non autorisés au réseau n'est pas nouvelle. Chacun de nous doit avoir rencontré un coursier du service de livraison, qui peut voir un cordon de raccordement dans la manche de la veste de l'entreprise, et vous pouvez déjà voir comment lui, ayant remarqué une prise RJ-45 gratuite, se précipite vers lui avec un mouvement rapide ...

Cependant, si dans le concept général l'utilisation et la configuration de 802.1x avec autorisation via RADIUS sont battues et simples, dans ce cas il y a eu un incident, dont je proposerai la solution ci-dessous.

Étant donné:

  • Commutateur d'accès - EX2200, JunOS 12.3R2.
  • Serveur RADIUS basé sur NPS Windows Server 2012R2.

  • Un zoo diversifié d'appareils du genre - téléviseurs, AppleTV, imprimantes et autres petits animaux du réseau, qui ne peuvent pas se connecter en tant que participants normaux et adéquats via des certificats ou PEAP. Chacun des appareils dans Active Directory a son propre compte dans l'unité d'organisation correspondante avec sAMAccountName = MAC (en minuscules, sans caractères de séparation), password = sAMAccountName.

Pour les départements ou groupes de sécurité contenant ces appareils, un FineGrainedPasswordPolicy distinct a été créé afin de pouvoir définir des mots de passe inappropriés pour les normes de sécurité.

Configuration d'origine pour 802.1x sur EX2200:

//set actual interfaces set interfaces interface-range ACCESS_PORTS member "ge-0/0/[0-40]" // Config interface range as L2 ports set interfaces interface-range ACCESS_PORTS unit 0 family ethernet-switching set protocols dot1x authenticator authentication-profile-name dynamicvlan set protocols dot1x authenticator radius-options use-vlan-id set protocols dot1x authenticator interface ACCESS_PORTS supplicant single set protocols dot1x authenticator interface ACCESS_PORTS transmit-period 10 set protocols dot1x authenticator interface ACCESS_PORTS retries 0 set protocols dot1x authenticator interface ACCESS_PORTS mac-radius set protocols dot1x authenticator interface ACCESS_PORTS supplicant-timeout 10 //set actual reject-vlan and fail-vlan set protocols dot1x authenticator interface ACCESS_PORTS server-reject-vlan default set protocols dot1x authenticator interface ACCESS_PORTS server-fail vlan-name default set protocols dot1x authenticator interface ACCESS_PORTS guest-vlan default //set actual password set access radius-server 172.17.xx secret "xxx" set access profile dynamicvlan authentication-order radius set access profile dynamicvlan radius authentication-server 172.17.xx 

Tous les postes de travail se sont connectés sans problème, mais aucun des shushera susmentionnés - non. Wireshark a obstinément montré que NPS envoie Access-Reject avec le code EAP 4, ce qui, comme on le sait dans les cercles étroits, signifie l'échec.

Informatif, cependant, comme toujours ...

Le protocole utilisé par le demandeur pour l'authentification mac-radius est EAP-MD5 par défaut.

Il existe également des options PEAP et PAP.

PEAP n'est pas disponible pour l'EX2200.

Nous essayons de configurer PAP. En clair, bien sûr, je ne voulais pas vraiment, mais, pour ne pas avoir le meilleur, nous conduisons l'équipe chérie

 set protocols dot1x authenticator interface ACCESS_PORTS mac-radius authentication-protocol pap 

et (roulement de tambour) - Erreur de syntaxe - nous dit utilement Juniper.

Lors de l'épreuve de force, des menaces avec un fer à souder et d'autres mesures répressives, le site Web de Juniper a suggéré que cette option n'est disponible que pour le firmware de la version 15.1.

Il semblerait, voilà, une solution au problème. Mais non, le même Juniper le recommande non seulement, mais protège également de toutes les manières possibles la coutume d'une obscénité telle que le firmware 15.1 sur l'EX2200. Le grain, l'utilisation du processeur central et de la RAM est au-dessus de la norme, donc 12,3 est le plafond de la version JunOS pour les heureux propriétaires d'EX2200.

D'accord, nous allons traiter du protocole qui envoie les données du commutateur à NPS.

Il s'est donc avéré que par défaut, il les envoie à eap-md5, qui quoi? - Correctement, il est désactivé dans Windows Server, à partir de la version 2008 - ils disent que ce n'est pas sécurisé. Plusieurs requêtes sur Google donnent le résultat souhaité - un fichier reg qui inclut le protocole dont nous avons besoin.

Cependant, NPS répond obstinément aux demandes des imprimantes et autres refus d' accès .
Il a sorti des cigarettes, s'est souvenu qu'il l'avait jetée, l'avait cachée ...

Google, qui est là dans le monde ... Mais non, ça vient d'un autre opéra ...

Ok Google? Authentification MAC 802.1x avec NPS RADIUS

Après quelques pages google, sur le forum ubnt j'ai trouvé ce que je cherchais. Vous devez activer plusieurs paramètres pour les informations d'identification des appareils, puis recréer les mots de passe et - le tour est joué - Miracle. De plus, cela s'est avéré encore meilleur que prévu. Eap-md5, bien sûr, n'est pas une bonne nouvelle, mais toujours mieux que du texte brut.

La configuration résultante, les paramètres et les captures d'écran de la politique sous le spoiler.

Configuration de l'EX2200, stratégies NPS
Fichier reg magique qui inclut la prise en charge d'EAP-MD5 dans Windows Server 2012 R2

 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\PPP\EAP\4] "RolesSupported"=dword:0000000a "FriendlyName"="MD5-Challenge" "Path"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\ 00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,52,00,\ 61,00,73,00,63,00,68,00,61,00,70,00,2e,00,64,00,6c,00,6c,00,00,00 "InvokeUsernameDialog"=dword:00000001 "InvokePasswordDialog"=dword:00000001 

Après avoir apporté des modifications au registre, vous devez redémarrer le service NPS

 Stop-Service IAS Start-Service IAS 

Un script qui définit les paramètres nécessaires pour les comptes d'appareils:

 $devices=Get-ADUser -SearchBase "ou=802.1x-groups,ou=devices_groups,dc=company,dc=local" -Filter * foreach ($device in $devices) { set-aduser -Identity $device.name -UserPrincipalName ($device.name+"@company.local") -PasswordNeverExpires $true -AllowReversiblePasswordEncryption $true -CannotChangePassword $true Set-ADAccountPassword -Identity $device.name -NewPassword (ConvertTo-SecureString -AsPlainText $device.name -force) } 

En fait, il définit les paramètres équivalents à une capture d'écran. Mais, c'est une chose à mettre de côté pour quelques appareils, et une autre quand vous en avez plus de vingt. Le script réinitialise également le mot de passe du compte d'appareil, ce qui est nécessaire après avoir activé le cryptage inverse.

image

Paramètres de stratégie NPS:

  • Nous indiquons le groupe avec les appareils et le type de port.

  • Après avoir manipulé le registre, notre chéri MD5-Challenge apparaît dans la liste des protocoles disponibles. Nous le choisissons.

  • Nous définissons les paramètres restants en fonction des exigences de l'implémentation logique. Pas différent du paramètre RADIUS + 802.1x standard.



Le résultat:

  • Les périphériques réseau tels que les téléviseurs, l'Apple TV, les imprimantes sont authentifiés par 802.1x et par appartenance à un groupe.
  • Les mots de passe ne sont pas transmis en texte clair, mais au moins cryptés.

Liste des directions, guides et ressources:

Recommandations de Juniper pour la version du logiciel sur l'EX2200
Prise en charge EAP-PAP sur les appareils Juniper pour l'authentification MAC RADIUS
La communauté UBNT donne le dernier coup de pied dans la bonne direction

Source: https://habr.com/ru/post/fr437408/


All Articles