Sécurité : Cisco Secure Access Control Server pour Windows

Configurer ACS pour affecter une stratégie de groupe lors de la connexion à l'aide de RADIUS

17 décembre 2015 - Traduction automatique
Autres versions: PDFpdf | Anglais (22 août 2015) | Commentaires


Contenu


Introduction

Vous pouvez employer l'authentification RADIUS pour assigner une politique de groupe à un utilisateur lorsqu'un utilisateur du VPN se connecte au dispositif de sécurité adaptatif (ASA). La politique de groupe qui est appliquée est déterminée par l'attribut IETF RADIUS 25 (classe) qui est assigné au groupe d'utilisateurs dans le serveur de contrôle d'accès (ACS).

Dans cet exemple, des utilisateurs qui sont dans le groupe des employés dans l'ACS sont assignés ExamplePolicy1 sur l'ASA, alors que des utilisateurs qui sont dans le groupe de sous-traitants sont assignés ExamplePolicy2 sur l'ASA.

Le serveur de RAYON dans cet exemple est version 4.1 de Cisco Secure ACS.

Conditions préalables

Conditions requises

Ce document exige qu'une installation fonctionnante de RAYON est déjà configurée sur l'ASA. Référez-vous au document 98594 pour apprendre comment installer une configuration RADIUS de base sur l'ASA et le Cisco Secure ACS.

Informations générales

Configuration de stratégie de groupe ASA

Pour que l'ACS et l'ASA travaille ensemble pour assigner une stratégie de groupe à un utilisateur à la procédure de connexion, l'ASA doit avoir des stratégies de groupe configurées pour l'attribut RADIUS 25 pour correspondre à. La configuration de stratégie de groupe est hors de portée de ce document, mais d'expositions de cet extrait de configuration ce qui ressemble à la configuration de stratégie de groupe sur l'ASA.

group-policy ExamplePolicy1 internal
group-policy ExamplePolicy1 attributes
 banner value This is ExamplePolicy1
group-policy ExamplePolicy2 internal
group-policy ExamplePolicy2 attributes
 banner value This is ExamplePolicy2

Actuellement, la seule différence entre les deux stratégies de groupe est la bannière qui est affichée à la procédure de connexion. Cependant, beaucoup d'autres options peuvent être configurées.

Configurez ACS pour assigner une stratégie de groupe

Configurez ACS

Terminez-vous ces étapes afin de configurer l'attribut RADIUS 25 (classe) IETF d'un groupe pour correspondre à une stratégie de groupe sur l'ASA.

  1. Configuration d'interface choisie du menu de gauche de l'affichage ACS.

  2. Choisissez le RAYON (IETF).

  3. Assurez-vous que la classe [025] est signée la colonne de groupe.

    /image/gif/paws/98608/radius-assign-group-policy-1.gif

  4. Group Setup choisi du menu de gauche.

  5. Sélectionnez le groupe désiré du déroulant et cliquez sur Edit les configurations.

  6. Faites descendre l'écran à l'IETF RADIUS Attributes et localisez la classe [025].

  7. Cochez la case à côté de la classe [025].

  8. Écrivez le nom de la stratégie de groupe sur l'ASA que vous voulez assigner aux utilisateurs de ce groupe quand ils ouvrent une session. Ou=Policyname utilisez format « ;  » où vous remplacez « Policyname » avec le nom de votre stratégie de groupe. Cliquez sur Submit + reprise quand vous êtes fait.

    /image/gif/paws/98608/radius-assign-group-policy-2.gif

Vérifiez

Employez cette section pour vérifier votre configuration.

Procédure de connexion

Un moyen simple de tester si votre configuration est réussie est d'ouvrir une session en tant qu'utilisateur qui est censé obtenir une stratégie de groupe assignée par l'ACS. Dans cet exemple, une bannière est configurée pour chaque stratégie de groupe. Ce tir d'écran affiche un utilisateur WebVPN qui a ouvert une session avec succès et fait appliquer ExamplePolicy1.

/image/gif/paws/98608/radius-assign-group-policy-3.gif

affichez VPN-sessiondb

La commande de VPN-sessiondb d'exposition est extrêmement utile quand vous voulez vérifier que vos utilisateurs sont assignés les stratégies de groupe correctes. Dans ces exemples, le kate et le Ben utilisent le webvpn, mais cette commande show peut être utilisée pour n'importe quel genre de sessions VPN distantes.

Cet exemple de sortie est pour le kate qui est dans les employés groupe et est censé être assigné ExamplePolicy1.

ciscoasa#show vpn-sessiondb webvpn

Session Type: WebVPN

Username     : kate                   Index        : 21
Public IP    : 10.88.250.211
Protocol     : Clientless
Encryption   : RC4                    Hashing      : SHA1
Bytes Tx     : 4207283                Bytes Rx     : 1352862
Group Policy : ExamplePolicy1         Tunnel Group : ExampleGroup1
Login Time   : 10:24:01 UTC Thu Aug 16 2007
Duration     : 0h:01m:43s
NAC Result   : Unknown
VLAN Mapping : N/A                    VLAN         : none

Cet exemple de sortie est pour Ben qui est dans le groupe de sous-traitants et est censé être assigné ExamplePolicy2.

ciscoasa#show vpn-sessiondb webvpn

Session Type: WebVPN

Username     : ben                    Index        : 22
Public IP    : 10.88.250.211
Protocol     : Clientless
Encryption   : RC4                    Hashing      : SHA1
Bytes Tx     : 4331698                Bytes Rx     : 1373769
Group Policy : ExamplePolicy2         Tunnel Group : ExampleGroup1
Login Time   : 10:27:25 UTC Thu Aug 16 2007
Duration     : 0h:02m:41s
NAC Result   : Unknown
VLAN Mapping : N/A                    VLAN         : none

Dépannez

Utilisez cette section pour dépanner votre configuration.

Débuggez l'activité de RAYON

Quand vous activez le RAYON mettant au point vous pouvez examiner la réponse réelle du serveur ACS pour s'assurer qu'elle contient l'attribut de classe que vous désirez. Les exemples de sortie dans cette section prouvent que le debug radius a été activé. Ces élimination des imperfections de session de RAYON de commandes enables aussi bien que décoder de paquet RADIUS. Dans chaque sortie de débogage présentée dans cette section, le premier paquet décodé est le paquet envoyé de l'ASA au serveur ACS. Le deuxième paquet est la réponse du serveur ACS.

Remarque: Référez-vous aux informations importantes sur les commandes de débogage avant d'utiliser les commandes de débogage.

Dans cette sortie, l'ASA entre en contact avec l'ACS pour authentifier le kate d'utilisateur. L'ACS répond avec un Access-recevoir aussi bien que l'attribut de classe qui assigne ExamplePolicy1 au kate parce qu'elle est un membre des employés sur le serveur ACS.

ciscoasa#debug radius
ciscoasa# radius mkreq: 0x72
alloc_rip 0xd5627ae4
    new request 0x72 --> 36 (0xd5627ae4)
got user ''
got password
add_req 0xd5627ae4 session 0x72 id 36
RADIUS_REQUEST
radius.c: rad_mkpkt

RADIUS packet decode (authentication request)

--------------------------------------
Raw packet data (length = 113).....
01 24 00 71 df 2c f5 8a fb 18 71 56 d7 c4 ad e2    |  .$.q.,....qV....
73 30 a9 2e 01 06 6b 61 74 65 02 12 26 1b fb 69    |  s0....kate..&..i
2e ec 8d 74 14 b9 8c d8 64 d9 2a 57 1f 0f 31 30    |  ...t....d.*W..10
2e 38 38 2e 32 35 30 2e 32 31 31 3d 06 00 00 00    |  .88.250.211=....
05 04 06 c0 a8 01 01 05 06 00 00 00 24 1a 24 00    |  ............$.$.
00 00 09 01 1e 69 70 3a 73 6f 75 72 63 65 2d 69    |  .....ip:source-i
70 3d 31 30 2e 38 38 2e 32 35 30 2e 32 31 31 85    |  p=10.88.250.211.
6a                                                 |  j

Parsed packet data.....
Radius: Code = 1 (0x01)
Radius: Identifier = 36 (0x24)
Radius: Length = 113 (0x0071)
Radius: Vector: DF2CF58AFB187156D7C4ADE27330A92E
Radius: Type = 1 (0x01) User-Name
Radius: Length = 6 (0x06)
Radius: Value (String) =
6b 61 74 65                                        |  kate
Radius: Type = 2 (0x02) User-Password
Radius: Length = 18 (0x12)
Radius: Value (String) =
26 1b fb 69 2e ec 8d 74 14 b9 8c d8 64 d9 2a 57    |  &..i...t....d.*W
Radius: Type = 31 (0x1F) Calling-Station-Id
Radius: Length = 15 (0x0F)
Radius: Value (String) =
31 30 2e 38 38 2e 32 35 30 2e 32 31 31             |  10.88.250.211
Radius: Type = 61 (0x3D) NAS-Port-Type
Radius: Length = 6 (0x06)
Radius: Value (Hex) = 0x5
Radius: Type = 4 (0x04) NAS-IP-Address
Radius: Length = 6 (0x06)
Radius: Value (IP Address) = 192.168.1.1 (0xC0A80101)
Radius: Type = 5 (0x05) NAS-Port
Radius: Length = 6 (0x06)
Radius: Value (Hex) = 0x24
Radius: Type = 26 (0x1A) Vendor-Specific
Radius: Length = 36 (0x24)
Radius: Vendor ID = 9 (0x00000009)
Radius: Type = 1 (0x01) Cisco-AV-pair
Radius: Length = 30 (0x1E)
Radius: Value (String) =
69 70 3a 73 6f 75 72 63 65 2d 69 70 3d 31 30 2e    |  ip:source-ip=10.
38 38 2e 32 35 30 2e 32 31 31 85 6a                |  88.250.211.j
send pkt 192.168.1.2/1645
rip 0xd5627ae4 state 7 id 36
rad_vrfy() : response message verified
rip 0xd544d2e8
 : chall_state ''
 : state 0x7
 : timer 0x0
 : reqauth:
     df 2c f5 8a fb 18 71 56 d7 c4 ad e2 73 30 a9 2e
 : info 0x72
     session_id 0x72
     request_id 0x24
     user 'kate'
     response '***'
     app 0
     reason 0
     skey 'secretkey'
     sip 192.168.1.2
     type 1

RADIUS packet decode (response)

--------------------------------------
Raw packet data (length = 70).....
02 24 00 46 cb 46 53 67 3b 5a 77 99 9e c3 91 5e    |  .$.F.FSg;Zw....^
85 54 70 48 19 14 6f 75 3d 45 78 61 6d 70 6c 65    |  .TpH..ou=Example
50 6f 6c 69 63 79 31 3b 08 06 ff ff ff ff 19 18    |  Policy1;........
43 41 43 53 3a 30 2f 31 61 37 2f 63 30 61 38 30    |  CACS:0/1a7/c0a80
31 30 31 2f 33 36                                  |  101/36

Parsed packet data.....
Radius: Code = 2 (0x02)
Radius: Identifier = 36 (0x24)
Radius: Length = 70 (0x0046)
Radius: Vector: CB4653673B5A77999EC3915E85547048
Radius: Type = 25 (0x19) Class
Radius: Length = 20 (0x14)
Radius: Value (String) =
6f 75 3d 45 78 61 6d 70 6c 65 50 6f 6c 69 63 79    |  ou=ExamplePolicy
31 3b                                              |  1;
Radius: Type = 8 (0x08) Framed-IP-Address
Radius: Length = 6 (0x06)
Radius: Value (IP Address) = 255.255.255.255 (0xFFFFFFFF)
Radius: Type = 25 (0x19) Class
Radius: Length = 24 (0x18)
Radius: Value (String) =
43 41 43 53 3a 30 2f 31 61 37 2f 63 30 61 38 30    |  CACS:0/1a7/c0a80
31 30 31 2f 33 36                                  |  101/36
rad_procpkt: ACCEPT
RADIUS_ACCESS_ACCEPT: normal termination
RADIUS_DELETE
remove_req 0xd5627ae4 session 0x72 id 36
free_rip 0xd5627ae4
radius: send queue empty

Dans cette sortie, l'ASA entre en contact avec l'ACS pour authentifier l'utilisateur Ben. L'ACS répond avec un Access-recevoir aussi bien que l'attribut de classe qui assigne ExamplePolicy2 à Ben parce qu'il est un membre des sous-traitants sur le serveur ACS.

ciscoasa#debug radius
ciscoasa# radius mkreq: 0x75
alloc_rip 0xd5627ae4
    new request 0x75 --> 37 (0xd5627ae4)
got user ''
got password
add_req 0xd5627ae4 session 0x75 id 37
RADIUS_REQUEST
radius.c: rad_mkpkt

RADIUS packet decode (authentication request)

--------------------------------------
Raw packet data (length = 112).....
01 25 00 70 cf 5c 65 3a eb 48 e1 06 c7 f4 1d 92    |  .%.p.\e:.H......
63 60 19 de 01 05 62 65 6e 02 12 a3 6d 71 a2 2c    |  c`....ben...mq.,
a8 92 ad 5d 19 00 37 d4 c2 8d ca 1f 0f 31 30 2e    |  ...]..7......10.
38 38 2e 32 35 30 2e 32 31 31 3d 06 00 00 00 05    |  88.250.211=.....
04 06 c0 a8 01 01 05 06 00 00 00 25 1a 24 00 00    |  ...........%.$..
00 09 01 1e 69 70 3a 73 6f 75 72 63 65 2d 69 70    |  ....ip:source-ip
3d 31 30 2e 38 38 2e 32 35 30 2e 32 31 31 19 45    |  =10.88.250.211.E

Parsed packet data.....
Radius: Code = 1 (0x01)
Radius: Identifier = 37 (0x25)
Radius: Length = 112 (0x0070)
Radius: Vector: CF5C653AEB48E106C7F41D92636019DE
Radius: Type = 1 (0x01) User-Name
Radius: Length = 5 (0x05)
Radius: Value (String) =
62 65 6e                                           |  ben
Radius: Type = 2 (0x02) User-Password
Radius: Length = 18 (0x12)
Radius: Value (String) =
a3 6d 71 a2 2c a8 92 ad 5d 19 00 37 d4 c2 8d ca    |  .mq.,...]..7....
Radius: Type = 31 (0x1F) Calling-Station-Id
Radius: Length = 15 (0x0F)
Radius: Value (String) =
31 30 2e 38 38 2e 32 35 30 2e 32 31 31             |  10.88.250.211
Radius: Type = 61 (0x3D) NAS-Port-Type
Radius: Length = 6 (0x06)
Radius: Value (Hex) = 0x5
Radius: Type = 4 (0x04) NAS-IP-Address
Radius: Length = 6 (0x06)
Radius: Value (IP Address) = 192.168.1.1 (0xC0A80101)
Radius: Type = 5 (0x05) NAS-Port
Radius: Length = 6 (0x06)
Radius: Value (Hex) = 0x25
Radius: Type = 26 (0x1A) Vendor-Specific
Radius: Length = 36 (0x24)
Radius: Vendor ID = 9 (0x00000009)
Radius: Type = 1 (0x01) Cisco-AV-pair
Radius: Length = 30 (0x1E)
Radius: Value (String) =
69 70 3a 73 6f 75 72 63 65 2d 69 70 3d 31 30 2e    |  ip:source-ip=10.
38 38 2e 32 35 30 2e 32 31 31 19 45                |  88.250.211.E
send pkt 192.168.1.2/1645
rip 0xd5627ae4 state 7 id 37
rad_vrfy() : response message verified
rip 0xd544d2e8
 : chall_state ''
 : state 0x7
 : timer 0x0
 : reqauth:
     cf 5c 65 3a eb 48 e1 06 c7 f4 1d 92 63 60 19 de
 : info 0x75
     session_id 0x75
     request_id 0x25
     user 'ben'
     response '***'
     app 0
     reason 0
     skey 'secretkey'
     sip 192.168.1.2
     type 1

RADIUS packet decode (response)

--------------------------------------
Raw packet data (length = 70).....
02 25 00 46 2d 78 a3 18 ee fc 2f ac 66 b3 06 33    |  .%.F-x..../.f..3
53 31 cf 19 19 14 6f 75 3d 45 78 61 6d 70 6c 65    |  S1....ou=Example
50 6f 6c 69 63 79 32 3b 08 06 ff ff ff ff 19 18    |  Policy2;........
43 41 43 53 3a 30 2f 31 61 61 2f 63 30 61 38 30    |  CACS:0/1aa/c0a80
31 30 31 2f 33 37                                  |  101/37

Parsed packet data.....
Radius: Code = 2 (0x02)
Radius: Identifier = 37 (0x25)
Radius: Length = 70 (0x0046)
Radius: Vector: 2D78A318EEFC2FAC66B306335331CF19
Radius: Type = 25 (0x19) Class
Radius: Length = 20 (0x14)
Radius: Value (String) =
6f 75 3d 45 78 61 6d 70 6c 65 50 6f 6c 69 63 79    |  ou=ExamplePolicy
32 3b                                              |  2;
Radius: Type = 8 (0x08) Framed-IP-Address
Radius: Length = 6 (0x06)
Radius: Value (IP Address) = 255.255.255.255 (0xFFFFFFFF)
Radius: Type = 25 (0x19) Class
Radius: Length = 24 (0x18)
Radius: Value (String) =
43 41 43 53 3a 30 2f 31 61 61 2f 63 30 61 38 30    |  CACS:0/1aa/c0a80
31 30 31 2f 33 37                                  |  101/37
rad_procpkt: ACCEPT
RADIUS_ACCESS_ACCEPT: normal termination
RADIUS_DELETE
remove_req 0xd5627ae4 session 0x75 id 37
free_rip 0xd5627ae4
radius: send queue empty

Conversations connexes de la communauté de soutien de Cisco

Le site Cisco Support Community est un forum où vous pouvez poser des questions, répondre à des questions, faire part de suggestions et collaborer avec vos pairs.


Informations connexes


Document ID: 98608