Seguridad : Dispositivos de seguridad adaptable Cisco ASA de la serie 5500

PIX/ASA 8.0: Utilización de la Autenticación LDAP para Asignar una Política de Grupo al Iniciar Sesión

25 Agosto 2008 - Traducción manual
Otras Versiones: PDFpdf | Traducción Automática (31 Julio 2013) | Inglés (2 Octubre 2007) | Comentarios

Contenido

Introducción
Prerrequisitos
Antecedentes
Configuración del ASA
      ASDM
      Interfaz de la Línea de Comandos
Configuración de Active Directory o de Otro Servidor LDAP
Verificación
      Inicio de Sesión
      Debug de la Transacción LDAP
Troubleshooting
      Los Nombres y los Valores de los Atributos Distinguen entre Mayúsculas y Minúsculas
Discusiones relacionadas de la comunidad de soporte de Cisco

Introducción

Con frecuencia, los administradores desean proporcionar diferentes permisos de acceso o contenido WebVPN a los usuarios de VPN. Normalmente, esto se puede lograr en el ASA mediante la asignación de diferentes políticas de grupo a diferentes usuarios. Cuando se utiliza la autenticación por Lightweight Directory Access Protocol (LDAP), esto se puede realizar de manera automática con el mapa de atributos LDAP.

Para utilizar LDAP para asignar una política de grupo a un usuario, es necesario configurar un mapa que mapee un atributo LDAP tal como el atributo de Active Directory (AD) memberOf al atributo IETF-Radius-Class que es comprendido por el ASA. Una vez que el mapeo del atributo está establecido, se debe asignar el valor del atributo configurado en el servidor LDAP al nombre de una política de grupo del ASA.

Nota: El atributo memberOf corresponde al grupo al cual pertenece el usuario en el Active Directory. Es posible que un usuario sea miembro de más de un grupo en el Active Directory. Esto hace que el servidor envíe varios atributos memberOf, pero el ASA sólo puede hacer coincidir un atributo con una política de grupo.

Nota: En este documento, se describe cómo asignar diferentes políticas a diferentes usuarios y aún así permitir el acceso a todos los usuarios VPN. Consulte ASA/PIX: Ejemplo de Configuración de Mapeo de Clientes VPN a Políticas de Grupo VPN a través de LDAP para obtener un ejemplo de la asignación de atributos LDAP que niega el acceso a algunos usuarios.

Prerrequisitos

Este documento requiere que ya haya una configuración de autenticación LDAP en el ASA que funcione correctamente. Consulte Configuración de Autenticación LDAP para Usuarios WebVPN para obtener información sobre cómo establecer una configuración básica de autenticación LDAP en el ASA.

Antecedentes

En este ejemplo, el atributo AD/LDAP memberOf es mapeado al atributo CVPN3000-Radius-IETF-Class del ASA. El atributo class se utiliza para asignar políticas de grupo en el ASA. El siguiente es el proceso general que realiza el ASA al autenticar usuarios con LDAP:

  1. El usuario inicia una conexión con el ASA.

  2. El ASA está configurado para autenticar a ese usuario con el servidor Microsoft AD/LDAP.

  3. El ASA se enlaza con el servidor LDAP con las credenciales configuradas en el ASA (en este caso, admin) y busca el nombre de usuario proporcionado.

  4. Si se encuentra el nombre de usuario, el ASA intenta enlazarse al servidor LDAP con las credenciales que el usuario proporciona al iniciar sesión.

  5. Si el segundo enlace es correcto, el ASA procesa los atributos de usuarios que incluyen memberOf.

  6. El atributo memberOf es mapeado a CVPN3000-Radius-IETF-Class por el mapa de atributos LDAP configurado.

    • El valor que indica pertenencia en el grupo Employees es mapeado a ExamplePolicy1.

    • El valor que indica pertenencia en el grupo Contractors es mapeado a ExamplePolicy2.

  7. Se examina el atributo CVPN3000-Radius-IETF-Class recientemente asignado y se toma una determinación sobre la política de grupo.

    • El valor de ExamplePolicy1 hace que la política de grupo ExamplePolicy1 se asigne al usuario.

    • El valor de ExamplePolicy2 hace que la política de grupo ExamplePolicy2 se asigne al usuario.

Configuración del ASA

En esta sección, se presenta información sobre la configuración del ASA para asignar una política de grupo a los usuarios en base a sus atributos LDAP.

ASDM

Complete los siguientes pasos en el Adaptive Security Device Manager (ASDM) para configurar el mapa LDAP en el ASA.

  1. Diríjase a Configuration > Remote Access VPN > AAA Setup > LDAP Attribute Map.

  2. Haga clic en Add.

  3. Déle un nombre al mapa.

  4. Cree un mapeo entre un atributo LDAP y el atributo IETF-Radius-Class del ASA. En este ejemplo, Customer Name es el atributo memberOf en el Active Directory. Es mapeado a Cisco Name de IETF-Radius-Class. Haga clic en Add.

    Nota: Los nombre y los valores de los atributos distinguen entre mayúsculas y minúsculas.

    Nota: Si no conoce exactamente los nombres de los atributos que proporciona el servidor LDAP o cómo se escriben, puede ser útil examinar las debugs antes de crear el mapa. Consulte la sección Verificación para obtener más información sobre cómo identificar los atributos LDAP con las debugs.

    asa_ldap_group_pol-1.gif

  5. Después de agregar el mapeo de atributos, haga clic en la ficha Map Value y en Add para crear el mapeo de un valor. Agregue todos los mapeos de valores requeridos y, al finalizar, haga clic en OK.

    • Customer Value: El valor del atributo desde el servidor LDAP

    • Cisco Value: El nombre de la política de grupo en el ASA

    En este ejemplo, el valor memberOf CN=Employees,CN=Users,DC=ftwsecurity,DC=cisco,DC=com es mapeado a ExamplePolicy1 y el valor memberOf CN=Contractors,CN=Users,DC=ftwsecurity,DC=cisco,DC=com es mapeado a ExamplePolicy2.

    asa_ldap_group_pol-2.gif

    Mapa Completo de Atributos LDAP

    asa_ldap_group_pol-3.gif

  6. Después de crear el mapa, éste debe asignarse al servidor AAA que está configurado para autenticación LDAP. En el panel izquierdo, elija AAA Server Groups.

  7. Seleccione el servidor AAA que está configurado para LDAP y haga clic en Edit.

  8. En la parte inferior de la ventana que aparece, ubique la lista desplegable LDAP Attribute Map. Elija la lista que acaba de crear. Al finalizar, haga clic en OK.

    asa_ldap_group_pol-3a.gif

Interfaz de la Línea de Comandos

Complete los siguientes pasos en la interfaz de línea de comandos (CLI) para configurar el mapa LDAP en el ASA.

ciscoasa#configure terminal


!--- Creación del mapa de atributos LDAP.

ciscoasa(config)#ldap attribute-map CISCOMAP
ciscoasa(config-ldap-attribute-map)#map-name memberOf IETF-Radius-Class
ciscoasa(config-ldap-attribute-map)#map-value memberOf CN=Employees,CN=Users,
   DC=ftwsecurity,DC=cisco,DC=com ExamplePolicy1
ciscoasa(config-ldap-attribute-map)#map-value memberOf CN=Contractors,CN=Users,
   DC=ftwsecurity,DC=cisco,DC=com ExamplePolicy2
ciscoasa(config-ldap-attribute-map)#exit


!--- Asignación del mapa al servidor AAA LDAP.

ciscoasa(config)#aaa-server LDAP_SRV_GRP (inside) host 192.168.1.2
ciscoasa(config-aaa-server-host)#ldap-attribute-map CISCOMAP

La única configuración requerida en el Active Directory o en otro servidor LDAP tiene que ver con los atributos del usuario. En este ejemplo, el usuario Kate Austin es miembro del grupo Employees en AD:

asa_ldap_group_pol-4.gif

Ben Linus es miembro del grupo Contractors:

asa_ldap_group_pol-5.gif

Verificación

Utilice esta sección para verificar la configuración.

Inicio de Sesión

Para verificar que su configuración sea correcta, inicie sesión como un usuario que debe tener una política de grupo asignada con el mapa de atributos LDAP. En este ejemplo, cada política de grupo tiene configurado un banner. La captura de pantalla muestra que el usuario kate inicia sesión correctamente y que se le aplica ExamplePolicy1 por ser miembro del grupo Employees.

asa_ldap_group_pol-6.gif

Debug de la Transacción LDAP

Para verificar que se lleva a cabo el mapeo LDAP, o para obtener más información sobre cuáles son los atributos que envía el servidor LDAP, emita el comando debug ldap 255 en la línea de comandos del ASA y luego intente realizar la autenticación.

En esta debug, al usuario kate se le asigna la política de grupo ExamplePolicy1 por ser miembro del grupo Employees. Esta debug también muestra que kate es miembro del grupo Castaways, pero ese atributo no es mapeado, por lo cual se lo ignora.

ciscoasa#debug ldap 255
debug ldap  enabled at level 255
ciscoasa#
[105] Session Start
[105] New request Session, context 0xd5481808, reqType = 1
[105] Fiber started
[105] Creating LDAP context with uri=ldap://192.168.1.2:389
[105] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful
[105] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com
[105] supportedLDAPVersion: value = 3
[105] supportedLDAPVersion: value = 2
[105] supportedSASLMechanisms: value = GSSAPI
[105] supportedSASLMechanisms: value = GSS-SPNEGO
[105] supportedSASLMechanisms: value = EXTERNAL
[105] supportedSASLMechanisms: value = DIGEST-MD5
[105] Binding as administrator
[105] Performing Simple authentication for admin to 192.168.1.2
[105] LDAP Search:
        Base DN = [dc=ftwsecurity, dc=cisco, dc=com]
        Filter  = [sAMAccountName=kate]
        Scope   = [SUBTREE]
[105] User DN = [CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com]
[105] Talking to Active Directory server 192.168.1.2
[105] Reading password policy for kate, dn:CN=Kate Austen,CN=Users,
   DC=ftwsecurity,DC=cisco,DC=com
[105] Read bad password count 0
[105] Binding as user
[105] Performing Simple authentication for kate to 192.168.1.2
[105] Checking password policy for user kate
[105] Binding as administrator
[105] Performing Simple authentication for admin to 192.168.1.2
[105] Authentication successful for kate to 192.168.1.2
[105] Retrieving user attributes from server 192.168.1.2
[105] Retrieved Attributes:
[105]   objectClass: value = top
[105]   objectClass: value = person
[105]   objectClass: value = organizationalPerson
[105]   objectClass: value = user
[105]   cn: value = Kate Austen
[105]   sn: value = Austen
[105]   givenName: value = Kate
[105]   distinguishedName: value = CN=Kate Austen,CN=Users,DC=ftwsecurity,
   DC=cisco,DC=com
[105]   instanceType: value = 4
[105]   whenCreated: value = 20070815155224.0Z
[105]   whenChanged: value = 20070815195813.0Z
[105]   displayName: value = Kate Austen
[105]   uSNCreated: value = 16430
[105]   memberOf: value = CN=Castaways,CN=Users,DC=ftwsecurity,DC=cisco,DC=com
[105]           mapped to IETF-Radius-Class: value = CN=Castaways,CN=Users,
   DC=ftwsecurity,DC=cisco,DC=com
[105]   memberOf: value = CN=Employees,CN=Users,DC=ftwsecurity,DC=cisco,DC=com
[105]           mapped to IETF-Radius-Class: value = ExamplePolicy1
[105]   uSNChanged: value = 20500
[105]   name: value = Kate Austen
[105]   objectGUID: value = ..z...yC.q0.....
[105]   userAccountControl: value = 66048
[105]   badPwdCount: value = 0
[105]   codePage: value = 0
[105]   countryCode: value = 0
[105]   badPasswordTime: value = 128316837694687500
[105]   lastLogoff: value = 0
[105]   lastLogon: value = 128316837785000000
[105]   pwdLastSet: value = 128316667442656250
[105]   primaryGroupID: value = 513
[105]   objectSid: value = ............Q..p..*.p?E.Z...
[105]   accountExpires: value = 9223372036854775807
[105]   logonCount: value = 0
[105]   sAMAccountName: value = kate
[105]   sAMAccountType: value = 805306368
[105]   userPrincipalName: value = kate@ftwsecurity.cisco.com
[105]   objectCategory: value = CN=Person,CN=Schema,CN=Configuration,
   DC=ftwsecurity,DC=cisco,DC=com
[105]   dSCorePropagationData: value = 20070815195237.0Z
[105]   dSCorePropagationData: value = 20070815195237.0Z
[105]   dSCorePropagationData: value = 20070815195237.0Z
[105]   dSCorePropagationData: value = 16010108151056.0Z
[105] Fiber exit Tx=685 bytes Rx=2690 bytes, status=1
[105] Session End

En esta debug, al usuario ben se le asigna la política de grupo ExamplePolicy2 por ser miembro del grupo Contractors. Esta debug también muestra que ben es miembro del grupo TheOthers, pero ese atributo no es mapeado, por lo cual se lo ignora.

ciscoasa#debug ldap 255
debug ldap  enabled at level 255
ciscoasa#
[106] Session Start
[106] New request Session, context 0xd5481808, reqType = 1
[106] Fiber started
[106] Creating LDAP context with uri=ldap://192.168.1.2:389
[106] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful
[106] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com
[106] supportedLDAPVersion: value = 3
[106] supportedLDAPVersion: value = 2
[106] supportedSASLMechanisms: value = GSSAPI
[106] supportedSASLMechanisms: value = GSS-SPNEGO
[106] supportedSASLMechanisms: value = EXTERNAL
[106] supportedSASLMechanisms: value = DIGEST-MD5
[106] Binding as administrator
[106] Performing Simple authentication for admin to 192.168.1.2
[106] LDAP Search:
        Base DN = [dc=ftwsecurity, dc=cisco, dc=com]
        Filter  = [sAMAccountName=ben]
        Scope   = [SUBTREE]
[106] User DN = [CN=Ben Linus,CN=Users,DC=ftwsecurity,DC=cisco,DC=com]
[106] Talking to Active Directory server 192.168.1.2
[106] Reading password policy for ben, dn:CN=Ben Linus,CN=Users,DC=ftwsecurity,
   DC=cisco,DC=com
[106] Read bad password count 0
[106] Binding as user
[106] Performing Simple authentication for ben to 192.168.1.2
[106] Checking password policy for user ben
[106] Binding as administrator
[106] Performing Simple authentication for admin to 192.168.1.2
[106] Authentication successful for ben to 192.168.1.2
[106] Retrieving user attributes from server 192.168.1.2
[106] Retrieved Attributes:
[106]   objectClass: value = top
[106]   objectClass: value = person
[106]   objectClass: value = organizationalPerson
[106]   objectClass: value = user
[106]   cn: value = Ben Linus
[106]   sn: value = Linus
[106]   givenName: value = Ben
[106]   distinguishedName: value = CN=Ben Linus,CN=Users,DC=ftwsecurity,
   DC=cisco,DC=com
[106]   instanceType: value = 4
[106]   whenCreated: value = 20070815160840.0Z
[106]   whenChanged: value = 20070815195243.0Z
[106]   displayName: value = Ben Linus
[106]   uSNCreated: value = 16463
[106]   memberOf: value = CN=TheOthers,CN=Users,DC=ftwsecurity,DC=cisco,DC=com
[106]           mapped to IETF-Radius-Class: value = CN=TheOthers,CN=Users,DC=ftwsecurity,DC=cisco,DC=com
[106]  memberOf: value = CN=Contractors,CN=Users,DC=ftwsecurity,DC=cisco,DC=com
[106]           mapped to IETF-Radius-Class: value = ExamplePolicy2
[106]   uSNChanged: value = 20499
[106]   name: value = Ben Linus
[106]   objectGUID: value = ..j...5@.z.|...n
[106]   userAccountControl: value = 66048
[106]   badPwdCount: value = 0
[106]   codePage: value = 0
[106]   countryCode: value = 0
[106]   badPasswordTime: value = 0
[106]   lastLogoff: value = 0
[106]   lastLogon: value = 0
[106]   pwdLastSet: value = 128316677201718750
[106]   primaryGroupID: value = 513
[106]   objectSid: value = ............Q..p..*.p?E.^...
[106]   accountExpires: value = 9223372036854775807
[106]   logonCount: value = 0
[106]   sAMAccountName: value = ben
[106]   sAMAccountType: value = 805306368
[106]   userPrincipalName: value = ben@ftwsecurity.cisco.com
[106]   objectCategory: value = CN=Person,CN=Schema,CN=Configuration,
   DC=ftwsecurity,DC=cisco,DC=com
[106]   dSCorePropagationData: value = 20070815195243.0Z
[106]   dSCorePropagationData: value = 20070815195243.0Z
[106]   dSCorePropagationData: value = 20070815195243.0Z
[106]   dSCorePropagationData: value = 16010108151056.0Z
[106] Fiber exit Tx=680 bytes Rx=2642 bytes, status=1
[106] Session End

Troubleshooting

Utilice esta sección para resolver los problemas de configuración.

Los Nombres y los Valores de los Atributos Distinguen entre Mayúsculas y Minúsculas

Los nombres y los valores de los atributos distinguen entre mayúsculas y minúsculas. Si el mapeo no se realiza de manera correcta, asegúrese de escribir correctamente en su mapa de atributo LDAP, distinguiendo entre mayúsculas y minúsculas. Esto se aplica tanto para los nombres como los valores de los atributos Cisco y LDAP.


Discusiones relacionadas de la comunidad de soporte de Cisco

La Comunidad de Soporte de Cisco es un foro donde usted puede preguntar y responder, ofrecer sugerencias y colaborar con colegas.


Document ID: 98634