Ce document explique comment configurer le dispositif de sécurité adaptatif Cisco (ASA) pour utiliser un serveur LDAP pour l'authentification des utilisateurs WebVPN. Le serveur LDAP dans cet exemple est Microsoft Active Directory. Cette configuration est effectuée avec Adaptive Security Device Manager (ASDM) 6.0(2) sur un ASA qui exécute la version logicielle 8.0(2).
Remarque : dans cet exemple, l'authentification LDAP (Lightweight Directory Access Protocol) est configurée pour les utilisateurs WebVPN, mais cette configuration peut également être utilisée pour tous les autres types de clients d'accès à distance. Affectez simplement le groupe de serveurs AAA au profil de connexion souhaité (groupe de tunnels), comme illustré.
Une configuration VPN de base est requise. Dans cet exemple, WebVPN est utilisé.
Dans cet exemple, l'ASA vérifie avec un serveur LDAP afin de vérifier l'identité des utilisateurs qu'il authentifie. Ce processus ne fonctionne pas comme un échange RADIUS (Remote Authentication Dial-In User Service) ou TACACS+ (Terminal Access Controller Access-Control System Plus) traditionnel. Ces étapes expliquent, à un niveau élevé, comment l'ASA utilise un serveur LDAP afin de vérifier les informations d'identification de l'utilisateur.
L'utilisateur établit une connexion à l'ASA.
L'ASA est configuré pour authentifier cet utilisateur avec le serveur Microsoft Active Directory (AD)/LDAP.
L'ASA se lie au serveur LDAP avec les informations d'identification configurées sur l'ASA (admin dans ce cas), et recherche le nom d'utilisateur fourni. L'utilisateur admin obtient également les informations d'identification appropriées pour répertorier le contenu dans Active Directory. Pour plus d'informations sur la façon d'accorder des privilèges de requête LDAP, reportez-vous à http://support.microsoft.com/?id=320528.
Remarque : le site Web de Microsoft à l'adresse http://support.microsoft.com/?id=320528 est géré par un fournisseur tiers. Cisco n'est pas responsable de son contenu.
Si le nom d'utilisateur est trouvé, l'ASA tente de se lier au serveur LDAP avec les informations d'identification fournies par l'utilisateur lors de la connexion.
Si la deuxième liaison réussit, l'authentification réussit et l'ASA traite les attributs de l'utilisateur.
Remarque : dans cet exemple, les attributs ne sont utilisés pour rien. Référez-vous à Exemple de configuration LDAP ASA/PIX : Mapping VPN Clients to VPN Group Policies Through LDAP afin de voir un exemple de la façon dont l'ASA peut traiter les attributs LDAP.
Dans cette section, vous êtes présenté avec les informations pour configurer l'ASA pour utiliser un serveur LDAP pour l'authentification des clients WebVPN.
Complétez ces étapes dans l'ASDM afin de configurer l'ASA pour communiquer avec le serveur LDAP et authentifier les clients WebVPN.
Accédez à Configuration > Remote Access VPN > AAA Setup > AAA Server Groups.
Cliquez sur Add en regard de AAA Server Groups
Spécifiez un nom pour le nouveau groupe de serveurs AAA et choisissez LDAP comme protocole.
Assurez-vous que votre nouveau groupe est sélectionné dans le volet supérieur, et cliquez sur Ajouter à côté des serveurs dans le volet Groupe sélectionné.
Fournissez les informations de configuration de votre serveur LDAP. La capture d'écran suivante illustre un exemple de configuration. Voici une explication de la plupart des options de configuration :
Interface Name : interface utilisée par l'ASA pour atteindre le serveur LDAP
Nom du serveur ou adresse IP : adresse que l'ASA utilise pour atteindre le serveur LDAP
Type de serveur : type de serveur LDAP, tel que Microsoft
DN de base : emplacement dans la hiérarchie LDAP où le serveur doit commencer la recherche
Étendue : étendue de la recherche dans la hiérarchie LDAP que le serveur doit effectuer
Attribut d'appellation : attribut (ou attributs) de nom distinctif relatif qui identifie de manière unique une entrée sur le serveur LDAP. sAMAccountName est l'attribut par défaut dans Microsoft Active Directory. Les autres attributs couramment utilisés sont CN, UID et userPrincipalName.
Login DN : DN disposant de privilèges suffisants pour pouvoir rechercher/lire/rechercher des utilisateurs dans le serveur LDAP
Login Password : mot de passe du compte DN
Mappage d'attributs LDAP : mappage d'attributs LDAP à utiliser avec les réponses de ce serveur. Référez-vous à ASA/PIX : Mapping VPN Clients to VPN Group Policies Through LDAP Configuration Example pour plus d'informations sur la façon de configurer les mappages d'attributs LDAP.
Une fois que vous avez configuré le groupe de serveurs AAA et que vous y avez ajouté un serveur, il est nécessaire de configurer votre profil de connexion (groupe de tunnels) pour utiliser la nouvelle configuration AAA. Accédez à Configuration > Remote Access VPN > Clientless SSL VPN Access > Connection Profiles.
Choisissez le profil de connexion (groupe de tunnels) pour lequel vous voulez configurer AAA, et cliquez sur Edit
Sous Authentication, choisissez le groupe de serveurs LDAP que vous avez créé précédemment.
Complétez ces étapes dans l'interface de ligne de commande (CLI) afin de configurer l'ASA pour communiquer avec le serveur LDAP et authentifier les clients 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
Facultatif. L'ASA ne prend actuellement pas en charge le mécanisme de référence LDAP pour les recherches multidomaines (ID de bogue Cisco CSCsj32153). Les recherches multidomaines sont prises en charge avec Active Directory en mode serveur de catalogue global. Afin d'effectuer des recherches multidomaines, configurez le serveur AD pour le mode de serveur de catalogue global, généralement avec ces paramètres clés pour l'entrée de serveur LDAP dans l'ASA. La clé est d'utiliser un attribut nom-ldap qui doit être unique dans l'arborescence.
server-port 3268 ldap-scope subtree ldap-naming-attribute userPrincipalName
Utilisez cette section pour confirmer que votre configuration fonctionne correctement.
Vérifiez votre configuration LDAP à l'aide du bouton Test sur l'écran de configuration AAA Server Groups. Une fois que vous avez fourni un nom d'utilisateur et un mot de passe, ce bouton vous permet d'envoyer une demande de test d'authentification au serveur LDAP.
Accédez à Configuration > Remote Access VPN > AAA Setup > AAA Server Groups.
Sélectionnez le groupe de serveurs AAA de votre choix dans le volet supérieur.
Sélectionnez le serveur AAA que vous souhaitez tester dans le volet inférieur.
Cliquez sur le bouton Test à droite du volet inférieur.
Dans la fenêtre qui s'affiche, cliquez sur la case d'option Authentication, et fournissez les informations d'identification avec lesquelles vous voulez tester. Cliquez sur OK lorsque vous avez terminé.
Une fois que l'ASA a contacté le serveur LDAP, un message de réussite ou d'échec s'affiche.
Vous pouvez utiliser la commande test sur la ligne de commande afin de tester votre configuration AAA. Une demande de test est envoyée au serveur AAA et le résultat apparaît sur la ligne de commande.
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 vous n'êtes pas sûr de la chaîne DN actuelle à utiliser, vous pouvez émettre la commande dsquery sur un serveur Windows Active Directory à partir d'une invite de commandes afin de vérifier la chaîne DN appropriée d'un objet utilisateur.
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"
La commande debug ldap 255 peut aider à dépanner les problèmes d'authentification dans ce scénario. Cette commande active le débogage LDAP et vous permet de surveiller le processus que l'ASA utilise pour se connecter au serveur LDAP. Ces sorties montrent la connexion ASA au serveur LDAP comme indiqué dans la section Informations d'arrière-plan de ce document.
Ce débogage montre une authentification réussie :
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
Ce débogage montre une authentification qui échoue en raison d'un mot de passe incorrect :
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
Ce débogage montre une authentification qui échoue parce que l'utilisateur est introuvable sur le serveur 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
Les débogages affichent ce message d'erreur lorsque la connectivité entre l'ASA et le serveur d'authentification LDAP ne fonctionne pas :
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.
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
28-Aug-2007 |
Première publication |