Situation:
J'essaie de faire fonctionner 802.1X pour moi. Je veux que le serveur RADIUS attribue dynamiquement des VLAN aux ports en fonction de l'attribut de réponse RADIUS pour un utilisateur particulier. J'ai un commutateur HP E2620 et un serveur FreeRADIUS. Le demandeur est une machine Windows 8.1
J'ai fait référence à ce document sur le site de freeradius.
Ce que j'ai fait jusqu'à présent:
Sur FreeRADIUS, j'ai créé un utilisateur avec ces paramètres:
dot1xtest User-Password := "secret"
Tunnel-Type = "VLAN",
Tunnel-Medium-Type = "IEEE-802",
Tunnel-Private-Group-ID = "100"
J'ai également essayé à la Tunnel-Pvt-Group-ID
place, mais cela ne fonctionne pas sur FreeRADIUS, aboie juste sur moi (je l'ai vu sur les ressources pour la configuration sur Microsoft NPS, l' une d'entre elles ). J'ai également essayé les valeurs "802", 802, 6 pour le type de tunnel moyen.
J'ai également essayé d'utiliser le nom de VLAN réel au lieu de VLAN-ID comme valeur d'ID de groupe. Quoi qu'il en soit, son type de données est une chaîne.
J'ai configuré le commutateur HP pour utiliser ce serveur RADIUS pour AAA et l'ai configuré pour le port 10:
aaa port-access gvrp-vlans
aaa authentication port-access eap-radius
aaa port-access authenticator 10
aaa port-access authenticator 10 auth-vid 150
aaa port-access authenticator 10 unauth-vid 200
aaa port-access authenticator active
VLAN:
VLAN 100 - VLAN which I want to get after authentication.
VLAN 150 - VLAN which I get now, because my config is not working
VLAN 200 - Unauthorized VLAN which is used on auth. failure
Remarques:
Port 10 a également VLAN non balisé 150 qui lui est attribué:
vlan 150 untagged 10
. Et je ne peux pas me débarrasser de l'affectation statiqueTous les VLAN répertoriés ci-dessus sont présents dans la base de données VLAN du commutateur.
Chaque fois que je me connecte à ce port, il me demande des informations d'identification; après avoir réussi l'authentification, il m'envoie simplement au VLAN150 et si j'essaie d'échouer, j'arrive au VLAN200.
J'ai activé l'authentification 802.1X sur une connexion Windows comme décrit ici .
J'ai essayé d'activer GVRP - cela ne change rien
Sortie de commande de diagnostic / show:
Affectation VLAN statique pour le port 10. VLAN 150 non balisé
SW # show vlans ports 10 detail
Status and Counters - VLAN Information - for ports 10
VLAN ID Name | Status Voice Jumbo Mode
------- -------------------------------- + ---------- ----- ----- --------
150 VLAN150 | Port-based No No Untagged
En show logging
je vois ceci:
I 08/28/14 08:29:24 00077 ports: port 10 is now off-line
I 08/28/14 08:29:29 00435 ports: port 10 is Blocked by AAA
I 08/28/14 08:29:29 00435 ports: port 10 is Blocked by STP
I 08/28/14 08:29:29 00076 ports: port 10 is now on-line
I 08/28/14 08:29:29 00001 vlan: VLAN200 virtual LAN enabled
I 08/28/14 08:29:29 00435 ports: port 10 is Blocked by AAA
I 08/28/14 08:29:29 00002 vlan: UNUSED virtual LAN disabled
I 08/28/14 08:29:29 00435 ports: port 10 is Blocked by STP
I 08/28/14 08:29:29 00076 ports: port 10 is now on-line
I 08/28/14 08:29:29 00001 vlan: UNUSED virtual LAN enabled
I 08/28/14 08:29:47 00002 vlan: UNUSED virtual LAN disabled
show port-access authenticator
production:
SW # show port-access authenticator
Port Access Authenticator Status
Port-access authenticator activated [No] : Yes
Allow RADIUS-assigned dynamic (GVRP) VLANs [No] : Yes
Auths/ Unauth Untagged Tagged % In RADIUS Cntrl
Port Guests Clients VLAN VLANs Port COS Limit ACL Dir
---- ------- ------- -------- ------ --------- ----- ------ -----
10 1/0 0 150 No No No No both
Test utilisateur RADIUS:
Linux-server # radtest dot1xtest secret localhost 0 secretkey
Sending Access-Request of id 158 to 127.0.0.1 port 1812
User-Name = "dot1xtest"
User-Password = "secret"
NAS-IP-Address = 127.0.0.1
NAS-Port = 0
Message-Authenticator = 0x00000000000000000000000000000000
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=158, length=37
Tunnel-Type:0 = VLAN
Tunnel-Medium-Type:0 = 802
Tunnel-Private-Group-Id:0 = "100"
C'est ce que j'ai vu dans TCPdump sur le serveur RADIUS. Je capturais le trafic UDP sortant avec le port source 1812. C'est ce que mon commutateur obtient (si c'est le cas, je ne sais pas comment vérifier cela ...)
Tunnel Type Attribute (64), length: 6, Value: Tag[Unused]#13
0x0000: 0000 000d
Tunnel Medium Attribute (65), length: 6, Value: Tag[Unused]802
0x0000: 0000 0006
Tunnel Private Group Attribute (81), length: 5, Value: 100
0x0000: 3130 30
Déboguer:
debug security radius-server
debug security port-access authenticator
debug destination buffer
Après cela, j'ai débranché et branché le câble et l'ai fait show debug buffer
et voici le copier-coller de celui-ci . C'est bizarre, rien n'est dit sur un attribut lié au VLAN.
Des questions:
Qu'est-ce que je fais mal?
J'ai lu dans un tas de ressources que si le RADIUS attribue un commutateur ID VLAN l'utilise en premier lieu. Il revient ensuite au VLAN autorisé configuré pour l'authentificateur d'accès au port si l'authentification réussit. S'il n'est pas présent, il attribue un VLAN non balisé configuré sur le port. Pourquoi n'ai-je pas ce comportement?
Je commence à penser que l'attribut Tunnel-Private-Group-Id
n'est pas pris en charge sur ces commutateurs. Il semble que chaque ressource se réfère à la Tunnel-Pvt-Group-Id
place (configuration sur Microsoft). Dommage que je n'ai pas Windows Server à vérifier.
Peut-être que c'est lié au firmware? Je n'ai pas encore essayé de mettre à niveau, j'utilise RA_15_06_0009.swi et il y a déjà RA_15_14_0007.swi
Mise à jour
Je viens d'essayer sur un 3500yl-24G-PWR
modèle et ne fonctionne toujours pas. Donc ... je suppose que les commutateurs n'obtiennent tout simplement pas la configuration du serveur RADIUS (ou ai-je utilisé des attributs ou des opérateurs incorrects?). Comment puis-je résoudre ce problème?
la source
aaa port-access authenticator 10 auth-vid 150
déclaration. IIRC, cela indiquerait au commutateur d'utiliser 150 pour les périphériques authentifiés, sauf s'il obtient une valeur différente de RADIUS. Sans cela, je soupçonne qu'il n'utilisera que la valeur de port configurée. Ne pas publier comme réponse car je travaille sur la mémoire et cela échoue souvent de nos jours. Si cela fonctionne, faites-le moi savoir et je posterai comme réponse.Réponses:
Alex, bonjour là-bas!
J'ai construit un environnement de test pour vous, donc j'utilise freeradius 2.1.12 + dfsg-1.2 (sur debian) et je change de hp 2650. Je viens de répéter votre configuration et je n'ai aucun problème avec cela. Mon test procurve ip 10.0.10.29, test freeradius ip 192.168.2.60.
procurve config:
/ etc / freeradius / users:
/etc/freeradius/radiusd.conf:
Et j'ai utilisé ce manuel pour activer 8021x dans Windows:
Mais, j'ai désactivé l'utilisation des crédits d'utilisateur enregistrés.
Donc, si les codes d'utilisateur sont corrects, j'ai ce message dans /var/log/freeradius/radius.log
et sur mon interrupteur, j'ai eu:
Si les crédits sont incorrects:
Peut-être que vous n'avez pas activé 8021x dans Windows? J'espère que cela vous aide, mec.
la source
Wow, je n'aurais jamais pensé à celui-ci. Ce n'était qu'une solution aléatoire.
Donc, le problème était avec la
authorize
section dans ladefault
configuration de mon site à/etc/raddb/sites-enabled/default
, c'était une sorte de défaut. Je ne sais pas vraiment ce qui se passe avec ça (si vous, les gars, savez, commentez ça, s'il vous plaît), vous allez faire des recherches là-dessus; C'est ici:J'ai commenté cela et remplacé par juste:
Je n'espérais plus pouvoir le faire fonctionner, puis je me suis reconnecté et ... c'est arrivé, juste au hasard et je suis tellement excité maintenant! J'ai reçu un VLAN de manière dynamique:
Déboguer:
SW # show port-access authenticator 10 vlan
- affiche toujours le VLAN 200 non autorisé et le VLAN 150 autoriséSW # show vlans ports 10 detail
- Et le VLAN non balisé sur le port 10 a été réglé surVLAN 100
SW # show port-access authenticator
De plus, si vous voulez que cela fonctionne, vous devez créer tous les VLAN requis sur le commutateur, sinon vous obtiendrez ce genre de choses:
et Windows va juste dire:
Authentication failed
ce qui est un peu déroutant aussi.Je ne l'ai pas vraiment fait fonctionner avec des VLAN inconnus malgré le fait que GVRP était activé, a
aaa port-access gvrp-vlans
été défini et j'ai également explicitement définiunknown-vlans learn
sur l'interface 10, mais eh bien ... nvm.la source
Vous devez ajouter la commande suivante:
aaa port-access authenticator 10 auth-vid 150
Cela indiquerait au commutateur que le port 10 utilisera le VLAN attribué par l'authentification pour les périphériques authentifiés à moins qu'il n'obtienne une valeur différente de RADIUS. Sans cela, il utilisera simplement la valeur de port configurée et ignorera toutes les affectations de VLAN fournies par RADIUS.
J'ai creusé et trouvé cette friandise dans l'un de mes documents HP enregistrés:
la source
show logging
oushow port-access authenticator
par exemple)? Avez-vous combiné cela avec certains des autres changements que vous avez essayés précédemment? Peut-être que celui que vous avez exclu était nécessaire, mais il manquait également un autre morceau avant de travailler.