Este documento demuestra cómo configurar Cisco Adaptive Security Appliance (ASA) para utilizar un servidor LDAP para la autenticación de usuarios de WebVPN. El servidor LDAP de este ejemplo es Microsoft Active Directory. Esta configuración se realiza con Adaptive Security Device Manager (ASDM) 6.0(2) en un ASA que ejecuta la versión de software 8.0(2).
Nota: En este ejemplo, la autenticación LDAP (protocolo ligero de acceso a directorios) se configura para los usuarios de WebVPN, pero esta configuración también se puede utilizar para todos los demás tipos de clientes de acceso remoto. Simplemente asigne el grupo de servidores AAA al perfil de conexión deseado (grupo de túnel), como se muestra.
Se requiere una configuración VPN básica. En este ejemplo se utiliza WebVPN.
En este ejemplo, ASA verifica con un servidor LDAP para verificar la identidad de los usuarios que autentica. Este proceso no funciona como un intercambio tradicional RADIUS (servicio de usuario de acceso telefónico de autenticación remota) o TACACS+ (sistema de control de acceso del controlador de acceso a terminales). Estos pasos explican, a un nivel superior, cómo ASA utiliza un servidor LDAP para verificar las credenciales del usuario.
El usuario inicia una conexión al ASA.
ASA está configurado para autenticar a ese usuario con el servidor Microsoft Active Directory (AD)/LDAP.
El ASA enlaza al servidor LDAP con las credenciales configuradas en el ASA (admin en este caso), y busca el nombre de usuario proporcionado. El usuario admin también obtiene las credenciales apropiadas para enumerar el contenido dentro de Active Directory. Consulte http://support.microsoft.com/?id=320528 para obtener más información sobre cómo otorgar privilegios de consulta LDAP.
Nota: El sitio web de Microsoft en http://support.microsoft.com/?id=320528 lo administra un proveedor externo. Cisco no se hace responsable de su contenido.
Si se encuentra el nombre de usuario, ASA intenta enlazar con el servidor LDAP con las credenciales que el usuario proporcionó al iniciar sesión.
Si el segundo enlace es exitoso, la autenticación es exitosa y ASA procesa los atributos del usuario.
Nota: En este ejemplo, los atributos no se utilizan para nada. Consulte ASA/PIX: Mapping VPN Clients to VPN Group Policies Through LDAP Configuration Example para ver un ejemplo de cómo ASA puede procesar atributos LDAP.
En esta sección, se le presenta la información para configurar ASA para utilizar un servidor LDAP para la autenticación de clientes WebVPN.
Complete estos pasos en el ASDM para configurar el ASA para comunicarse con el servidor LDAP y autenticar los clientes WebVPN.
Vaya a Configuration > Remote Access VPN > AAA Setup > AAA Server Groups .
Haga clic en Agregar junto a Grupos de servidores AAA
Especifique un nombre para el nuevo grupo de servidores AAA y elija LDAP como protocolo.
Asegúrese de que el nuevo grupo esté seleccionado en el panel superior y haga clic en Agregar junto a Servidores en el panel Grupo seleccionado.
Proporcione la información de configuración para su servidor LDAP. La siguiente captura de pantalla ilustra un ejemplo de configuración. Esta es una explicación de muchas de las opciones de configuración:
Nombre de interfaz: la interfaz que ASA utiliza para alcanzar el servidor LDAP
Nombre de servidor o dirección IP: la dirección que ASA utiliza para alcanzar el servidor LDAP
Tipo de servidor: el tipo de servidor LDAP, como Microsoft
DN base: la ubicación en la jerarquía LDAP donde el servidor debe comenzar a buscar
Alcance: el alcance de la búsqueda en la jerarquía LDAP que el servidor debe realizar
Atributo de nombre: atributo (o atributos) de nombre distinguido relativo que identifica de forma exclusiva una entrada en el servidor LDAP. sAMAccountName es el atributo predeterminado en Microsoft Active Directory. Otros atributos utilizados habitualmente son CN, UID y userPrincipalName.
DN de inicio de sesión: DN con privilegios suficientes para poder buscar/leer/buscar usuarios en el servidor LDAP.
Contraseña de inicio de sesión: la contraseña de la cuenta DN.
Mapa de atributos LDAP: un mapa de atributos LDAP que se utilizará con las respuestas de este servidor. Consulte ASA/PIX: Mapping VPN Clients to VPN Group Policies Through LDAP Configuration Example para obtener más información sobre cómo configurar los mapas de atributos LDAP.
Una vez que haya configurado el grupo de servidores AAA y agregado un servidor al mismo, es necesario configurar su perfil de conexión (grupo de túnel) para utilizar la nueva configuración AAA. Vaya a Configuration > Remote Access VPN > Clientless SSL VPN Access > Connection Profiles .
Elija el perfil de conexión (grupo de túnel) para el que desea configurar AAA y haga clic en Editar
En Autenticación, elija el grupo de servidores LDAP que creó anteriormente.
Complete estos pasos en la interfaz de línea de comandos (CLI) para configurar ASA para comunicarse con el servidor LDAP y autenticar clientes WebVPN.
ciscoasa#configure terminal !--- Configure the AAA Server group. ciscoasa(config)#aaa-server LDAP_SRV_GRP protocol ldap !--- Configure the AAA Server. ciscoasa(config-aaa-server-group)#aaa-server LDAP_SRV_GRP (inside) host 192.168.1.2 ciscoasa(config-aaa-server-host)#ldap-base-dn dc=ftwsecurity, dc=cisco, dc=com ciscoasa(config-aaa-server-host)#ldap-login-dn cn=admin, cn=users, dc=ftwsecurity, dc=cisco, dc=com ciscoasa(config-aaa-server-host)#ldap-login-password ********** ciscoasa(config-aaa-server-host)#ldap-naming-attribute sAMAccountName ciscoasa(config-aaa-server-host)#ldap-scope subtree ciscoasa(config-aaa-server-host)#server-type microsoft ciscoasa(config-aaa-server-host)#exit !--- Configure the tunnel group to use the new AAA setup. ciscoasa(config)#tunnel-group ExampleGroup2 general-att ciscoasa(config-tunnel-general)#authentication-server-group LDAP_SRV_GRP
Opcional. Actualmente, ASA no admite el mecanismo de referencia LDAP para búsquedas en varios dominios (Id. de error de Cisco CSCsj32153). Las búsquedas en varios dominios se admiten con AD en el modo Global Catalog Server. Para realizar búsquedas en varios dominios, configure el servidor AD para el modo Global Catalog Server, generalmente con estos parámetros clave para la entrada del servidor LDAP en el ASA. La clave es utilizar un atributo ldap-name que debe ser único en el árbol de directorios.
server-port 3268 ldap-scope subtree ldap-naming-attribute userPrincipalName
Utilize esta sección para confirmar que su configuración funcione correctamente.
Verifique su configuración de LDAP con el botón Test en la pantalla AAA Server Groups configuration. Una vez que haya proporcionado un nombre de usuario y una contraseña, este botón le permite enviar una solicitud de autenticación de prueba al servidor LDAP.
Vaya a Configuration > Remote Access VPN > AAA Setup > AAA Server Groups .
Seleccione el grupo de servidores AAA que desee en el panel superior.
Seleccione el servidor AAA que desea probar en el panel inferior.
Haga clic en el botón Test situado a la derecha del panel inferior.
En la ventana que aparece, haga clic en el botón de opción Authentication y proporcione las credenciales con las que desea realizar la prueba. Haga clic en Aceptar cuando termine.
Una vez que el ASA se pone en contacto con el servidor LDAP, aparece un mensaje de éxito o fracaso.
Puede utilizar el comando test en la línea de comandos para probar su configuración AAA. Se envía una solicitud de prueba al servidor AAA y el resultado aparece en la línea de comandos.
ciscoasa#test aaa-server authentication LDAP_SRV_GRP host 192.168.1.2 username kate password cisco123 INFO: Attempting Authentication test to IP address <192.168.1.2> (timeout: 12 seconds) INFO: Authentication Successful
Si no está seguro de la cadena de DN actual que se va a utilizar, puede ejecutar el comando dsquery en un servidor de Windows Active Directory desde un símbolo del sistema para verificar la cadena de DN adecuada de un objeto de usuario.
C:\Documents and Settings\Administrator>dsquery user -samid kate !--- Queries Active Directory for samid id "kate" "CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com"
El comando debug ldap 255 puede ayudar a resolver problemas de autenticación en este escenario. Este comando habilita la depuración LDAP y le permite observar el proceso que ASA utiliza para conectarse al servidor LDAP. Estos resultados muestran la conexión de ASA con el servidor LDAP como se describe en la sección Información en Segundo Plano de este documento.
Esta depuración muestra una autenticación exitosa:
ciscoasa#debug ldap 255 [7] Session Start [7] New request Session, context 0xd4b11730, reqType = 1 [7] Fiber started [7] Creating LDAP context with uri=ldap://192.168.1.2:389 [7] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful [7] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com [7] supportedLDAPVersion: value = 3 [7] supportedLDAPVersion: value = 2 [7] supportedSASLMechanisms: value = GSSAPI [7] supportedSASLMechanisms: value = GSS-SPNEGO [7] supportedSASLMechanisms: value = EXTERNAL [7] supportedSASLMechanisms: value = DIGEST-MD5 !--- The ASA connects to the LDAP server as admin to search for kate. [7] Binding as administrator [7] Performing Simple authentication for admin to 192.168.1.2 [7] LDAP Search: Base DN = [dc=ftwsecurity, dc=cisco, dc=com] Filter = [sAMAccountName=kate] Scope = [SUBTREE] [7] User DN = [CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com] [7] Talking to Active Directory server 192.168.1.2 [7] Reading password policy for kate, dn:CN=Kate Austen,CN=Users, DC=ftwsecurity,DC=cisco,DC=com [7] Read bad password count 1 !--- The ASA binds to the LDAP server as kate to test the password. [7] Binding as user [7] Performing Simple authentication for kate to 192.168.1.2 [7] Checking password policy for user kate [7] Binding as administrator [7] Performing Simple authentication for admin to 192.168.1.2 [7] Authentication successful for kate to 192.168.1.2 [7] Retrieving user attributes from server 192.168.1.2 [7] Retrieved Attributes: [7] objectClass: value = top [7] objectClass: value = person [7] objectClass: value = organizationalPerson [7] objectClass: value = user [7] cn: value = Kate Austen [7] sn: value = Austen [7] givenName: value = Kate [7] distinguishedName: value = CN=Kate Austen,CN=Users,DC=ftwsecurity, DC=cisco,DC=com [7] instanceType: value = 4 [7] whenCreated: value = 20070815155224.0Z [7] whenChanged: value = 20070815195813.0Z [7] displayName: value = Kate Austen [7] uSNCreated: value = 16430 [7] memberOf: value = CN=Castaways,CN=Users,DC=ftwsecurity,DC=cisco,DC=com [7] memberOf: value = CN=Employees,CN=Users,DC=ftwsecurity,DC=cisco,DC=com [7] uSNChanged: value = 20500 [7] name: value = Kate Austen [7] objectGUID: value = ..z...yC.q0..... [7] userAccountControl: value = 66048 [7] badPwdCount: value = 1 [7] codePage: value = 0 [7] countryCode: value = 0 [7] badPasswordTime: value = 128321799570937500 [7] lastLogoff: value = 0 [7] lastLogon: value = 128321798130468750 [7] pwdLastSet: value = 128316667442656250 [7] primaryGroupID: value = 513 [7] objectSid: value = ............Q..p..*.p?E.Z... [7] accountExpires: value = 9223372036854775807 [7] logonCount: value = 0 [7] sAMAccountName: value = kate [7] sAMAccountType: value = 805306368 [7] userPrincipalName: value = kate@ftwsecurity.cisco.com [7] objectCategory: value = CN=Person,CN=Schema,CN=Configuration, DC=ftwsecurity,DC=cisco,DC=com [7] dSCorePropagationData: value = 20070815195237.0Z [7] dSCorePropagationData: value = 20070815195237.0Z [7] dSCorePropagationData: value = 20070815195237.0Z [7] dSCorePropagationData: value = 16010108151056.0Z [7] Fiber exit Tx=685 bytes Rx=2690 bytes, status=1 [7] Session End
Esta depuración muestra una autenticación que falla debido a una contraseña incorrecta:
ciscoasa#debug ldap 255 [8] Session Start [8] New request Session, context 0xd4b11730, reqType = 1 [8] Fiber started [8] Creating LDAP context with uri=ldap://192.168.1.2:389 [8] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful [8] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com [8] supportedLDAPVersion: value = 3 [8] supportedLDAPVersion: value = 2 [8] supportedSASLMechanisms: value = GSSAPI [8] supportedSASLMechanisms: value = GSS-SPNEGO [8] supportedSASLMechanisms: value = EXTERNAL [8] supportedSASLMechanisms: value = DIGEST-MD5 !--- The ASA connects to the LDAP server as admin to search for kate. [8] Binding as administrator [8] Performing Simple authentication for admin to 192.168.1.2 [8] LDAP Search: Base DN = [dc=ftwsecurity, dc=cisco, dc=com] Filter = [sAMAccountName=kate] Scope = [SUBTREE] [8] User DN = [CN=Kate Austen,CN=Users,DC=ftwsecurity,DC=cisco,DC=com] [8] Talking to Active Directory server 192.168.1.2 [8] Reading password policy for kate, dn:CN=Kate Austen,CN=Users, DC=ftwsecurity,DC=cisco,DC=com [8] Read bad password count 1 !--- The ASA attempts to bind as kate, but the password is incorrect. [8] Binding as user [8] Performing Simple authentication for kate to 192.168.1.2 [8] Simple authentication for kate returned code (49) Invalid credentials [8] Binding as administrator [8] Performing Simple authentication for admin to 192.168.1.2 [8] Reading bad password count for kate, dn: CN=Kate Austen,CN=Users, DC=ftwsecurity,DC=cisco,DC=com [8] Received badPwdCount=1 for user kate [8] badPwdCount=1 before, badPwdCount=1 after for kate [8] now: Tue, 28 Aug 2007 15:33:05 GMT, lastset: Wed, 15 Aug 2007 15:52:24 GMT, delta=1122041, maxage=3710851 secs [8] Invalid password for kate [8] Fiber exit Tx=788 bytes Rx=2904 bytes, status=-1 [8] Session End
Esta depuración muestra una autenticación que falla porque el usuario no se puede encontrar en el servidor LDAP:
ciscoasa#debug ldap 255 [9] Session Start [9] New request Session, context 0xd4b11730, reqType = 1 [9] Fiber started [9] Creating LDAP context with uri=ldap://192.168.1.2:389 [9] Connect to LDAP server: ldap://192.168.1.2:389, status = Successful [9] defaultNamingContext: value = DC=ftwsecurity,DC=cisco,DC=com [9] supportedLDAPVersion: value = 3 [9] supportedLDAPVersion: value = 2 [9] supportedSASLMechanisms: value = GSSAPI [9] supportedSASLMechanisms: value = GSS-SPNEGO [9] supportedSASLMechanisms: value = EXTERNAL [9] supportedSASLMechanisms: value = DIGEST-MD5 !--- The user mikhail is not found. [9] Binding as administrator [9] Performing Simple authentication for admin to 192.168.1.2 [9] LDAP Search: Base DN = [dc=ftwsecurity, dc=cisco, dc=com] Filter = [sAMAccountName=mikhail] Scope = [SUBTREE] [9] Requested attributes not found [9] Fiber exit Tx=256 bytes Rx=607 bytes, status=-1 [9] Session End
Las depuraciones muestran este mensaje de error cuando la conectividad entre el ASA y el servidor de autenticación LDAP no funciona:
ciscoasa# debug webvpn 255 INFO: debug webvpn enabled at level 255. ciscoasa# webvpn_portal.c:ewaFormSubmit_webvpn_login[2162] ewaFormSubmit_webvpn_login: tgCookie = NULL ewaFormSubmit_webvpn_login: cookie = 1 ewaFormSubmit_webvpn_login: tgCookieSet = 0 ewaFormSubmit_webvpn_login: tgroup = NULL ....not resuming [2587] webvpn_portal.c:http_webvpn_kill_cookie[787] webvpn_auth.c:http_webvpn_pre_authentication[2327] WebVPN: calling AAA with ewsContext (-847917520) and nh (-851696992)! webvpn_auth.c:webvpn_add_auth_handle[5118] WebVPN: started user authentication... webvpn_auth.c:webvpn_aaa_callback[5158] WebVPN: AAA status = (ERROR) webvpn_portal.c:ewaFormSubmit_webvpn_login[2162] ewaFormSubmit_webvpn_login: tgCookie = NULL ewaFormSubmit_webvpn_login: cookie = 1 ewaFormSubmit_webvpn_login: tgCookieSet = 0 ewaFormSubmit_webvpn_login: tgroup = NULL ....resuming [2564] webvpn_auth.c:http_webvpn_post_authentication[1506] WebVPN: user: (utrcd01) auth error.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
28-Aug-2007 |
Versión inicial |