Ce document décrit comment configurer des mappages d'attributs LDAP (Lightweight Directory Access Protocol) pour attribuer automatiquement la stratégie VPN correcte à un utilisateur en fonction de ses informations d'identification.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Les informations contenues dans ce document sont basées sur les versions de matériel et de logiciel suivantes :
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Le protocole LDAP est un protocole d'application standard ouvert, neutre pour les fournisseurs, qui permet d'accéder aux services d'informations d'annuaire distribués et de les gérer sur un réseau IP (Internet Protocol). Les services d'annuaire jouent un rôle important dans le développement d'applications intranet et Internet car ils permettent le partage d'informations sur les utilisateurs, les systèmes, les réseaux, les services et les applications sur l'ensemble du réseau.
Fréquemment, les administrateurs veulent fournir à des utilisateurs VPN différentes autorisations d'accès ou de contenu WebVPN. Ceci peut être complété par la configuration de différentes stratégies VPN sur le serveur VPN et l'attribution de ces jeux de stratégies à chaque utilisateur en fonction de leurs informations d'identification. Bien que cela puisse être effectué manuellement, il est plus efficace d'automatiser le processus avec les services d'annuaire. Afin d'utiliser LDAP pour affecter une stratégie de groupe à un utilisateur, vous devez configurer une carte qui mappe un attribut LDAP tel que l'attribut Active Directory (AD) « memberOf » à un attribut compris par la tête de réseau VPN.
Sur le dispositif de sécurité adaptatif (ASA), ceci est régulièrement réalisé par l'affectation de différentes stratégies de groupe à différents utilisateurs avec une carte d'attribut LDAP comme illustré dans l'Exemple de configuration de l'utilisation ASA des mappages d'attributs LDAP.
Sur Cisco IOS, la même chose peut être obtenue avec la configuration de différents groupes de politiques sous le contexte WebVPN et l'utilisation de mappages d'attributs LDAP afin de déterminer quel groupe de politiques l'utilisateur sera affecté. Sur les têtes de réseau Cisco IOS, l'attribut AD « memberOf » est mappé au groupe de supplicants d'attribut AAA (Authentication, Authorization, and Accounting). Pour plus d'informations sur les mappages d'attributs par défaut, consultez Exemple de configuration LDAP sur les périphériques IOS utilisant des mappages d'attributs dynamiques. Cependant, pour le VPN SSL, il existe deux mappages d'attributs AAA pertinents :
Nom d'attribut AAA | Pertinence VPN SSL |
user-vpn-group | mappe au groupe de stratégies défini dans le contexte WebVPN |
webvpn-context | mappe au contexte WebVPN lui-même |
Par conséquent, la carte d'attribut LDAP doit mapper l'attribut LDAP approprié à l'un de ces deux attributs AAA.
Cette configuration utilise une carte d'attribut LDAP afin de mapper l'attribut LDAP « memberOf » à l'attribut AAA user-vpn-group.
Configurez la méthode d'authentification et le groupe de serveurs AAA.
aaa new-model
!
!
aaa group server ldap AD
server DC1
!
aaa authentication login default local
aaa authentication login vpn local
aaa authentication login AD group ldap local
aaa authorization exec default local
Configurez une carte d'attribut LDAP.
ldap attribute-map ADMAP
map type memberOf user-vpn-group
Configurez le serveur LDAP qui fait référence au mappage d'attribut LDAP précédent.
ldap server DC1
ipv4 192.168.0.136
attribute map ADMAP
bind authenticate root-dn CN=Cisco Systems,OU=Service Accounts,DC=chillsthrills,
DC=local password 7 <removed>
base-dn DC=chillsthrills,DC=local
Configurez le routeur pour qu'il agisse en tant que serveur WebVPN. Dans cet exemple, étant donné que l'attribut « memberOf » sera mappé à l'attribut « user-vpn-group », un contexte WebVPN unique est configuré avec plusieurs groupes de stratégies qui incluent une stratégie « NOACCESS ». Ce groupe de stratégies est destiné aux utilisateurs qui n'ont pas de valeur « memberOf » correspondante.
ip local pool vpnpool 192.168.200.200 192.168.200.250
!
webvpn gateway gateway_1
hostname vpn
ip address 173.11.196.220 port 443
http-redirect port 80
ssl trustpoint TP-self-signed-2564112419
logging enable
inservice
!
webvpn install svc flash:/webvpn/anyconnect-win-2.5.2019-k9.pkg sequence 1
!
webvpn install csd flash:/webvpn/sdesktop.pkg
!
webvpn context VPNACCESS
secondary-color white
title-color #669999
text-color black
ssl authenticate verify all
!
policy group NOACCESS
banner "Access denied per user group restrictions in Active Directory.
Please contact your system administrator or manager to request access."
hide-url-bar
timeout idle 60
timeout session 1
!
!
policy group CN=T,OU=MyBusiness,DC=chillsthrills,DC=local
functions svc-enabled
banner "special access-granted"
svc address-pool "vpnpool"
svc default-domain "cisco.com"
svc keep-client-installed
svc rekey method new-tunnel
svc split dns "cisco.com"
svc split include 192.168.0.0 255.255.255.0
svc split include 10.10.10.0 255.255.255.0
svc split include 172.16.254.0 255.255.255.0
svc dns-server primary 192.168.0.136
default-group-policy NOACCESS
aaa authentication list AD
gateway gateway_1
inservice
!
end
Si l'utilisateur est un groupe multiple « memberOf », la première valeur « memberOf » est utilisée par le routeur.
Ce qui est étrange dans cette configuration, c'est que le nom du groupe de stratégies doit correspondre exactement à la chaîne complète poussée par le serveur LDAP pour la valeur « memberOf ». En règle générale, les administrateurs utilisent des noms plus courts et plus pertinents pour le groupe de stratégies, tels que VPNACCESS, mais en dehors du problème cosmétique, cela peut conduire à un problème plus important. Il n'est pas rare que la chaîne d'attribut « memberOf » soit beaucoup plus grande que celle utilisée dans cet exemple. Par exemple, considérez ce message de débogage :
004090: Aug 23 08:26:57.235 PCTime: %SSLVPN-6-INVALID_RADIUS_CONFIGURATION:
Radius configured group policy "CN=VPNACCESS,OU=SecurityGroups,OU=MyBusiness,
DC=chillsthrills,DC=local" does not exist
Il montre clairement que la chaîne reçue d'AD est :
"CN=VPNACCESS,OU=SecurityGroups,OU=MyBusiness,DC=chillsthrills,DC=local"
Cependant, comme aucun groupe de stratégies n'est défini, si l'administrateur tente de configurer une telle stratégie de groupe, il en résulte une erreur car Cisco IOS a une limite sur le nombre de caractères dans le nom du groupe de stratégies :
HOURTR1(config-webvpn-context)#webvpn context VPNACCESS
HOURTR1(config-webvpn-context)# policy group "CN=VPNACCESS,OU=Security Groups,
OU=MyBusiness,DC=chillsthrills,DC=local"
Error: group policy name cannot exceed 63 characters
Dans de telles situations, il existe deux solutions possibles :
Utilisez un attribut LDAP différent, tel que « service ».
Considérez cette carte d'attribut LDAP :
ldap attribute-map ADMAP
map type department user-vpn-group
Dans ce cas, la valeur de l'attribut de service pour un utilisateur peut être définie sur une valeur telle que VPNACCESS et la configuration WebVPN est un peu plus simple :
webvpn context VPNACCESS
secondary-color white
title-color #669999
text-color black
ssl authenticate verify all
!
policy group NOACCESS
banner "Access denied per user group restrictions in Active Directory.
Please contact your system administrator or manager to request access."
!
policy group VPNACCESS
functions svc-enabled
banner "access-granted"
svc address-pool "vpnpool"
svc default-domain "cisco.com"
svc keep-client-installed
svc rekey method new-tunnel
svc split dns "cisco.com"
svc split include 192.168.0.0 255.255.255.0
svc split include 10.10.10.0 255.255.255.0
svc split include 172.16.254.0 255.255.255.0
svc dns-server primary 192.168.0.136
default-group-policy NOACCESS
aaa authentication list AD
gateway gateway_1
inservice
!
end
Utilisez le mot clé DN-to-string dans le mappage d'attribut LDAP.
Si la solution de contournement précédente n'est pas appropriée, l'administrateur peut utiliser le mot clé dn-to-string dans le mappage d'attribut LDAP afin d'extraire uniquement la valeur Common Name (CN) de la chaîne « memberOf ». Dans ce scénario, la carte d'attribut LDAP serait :
ldap attribute-map ADMAP
map type memberOf user-vpn-group format dn-to-string
Et la configuration WebVPN serait :
webvpn context VPNACCESS
secondary-color white
title-color #669999
text-color black
ssl authenticate verify all
!
policy group NOACCESS
banner "Access denied per user group restrictions in Active Directory.
Please contact your system administrator or manager to request access."
!
policy group VPNACCESS
functions svc-enabled
banner "access-granted"
svc address-pool "vpnpool"
svc default-domain "cisco.com"
svc keep-client-installed
svc rekey method new-tunnel
svc split dns "cisco.com"
svc split include 192.168.0.0 255.255.255.0
svc split include 10.10.10.0 255.255.255.0
svc split include 172.16.254.0 255.255.255.0
svc dns-server primary 192.168.0.136
default-group-policy NOACCESS
aaa authentication list AD
gateway gateway_1
inservice
!
end
Référez-vous à cette section pour vous assurer du bon fonctionnement de votre configuration.
L'Outil d'interprétation de sortie (clients enregistrés seulement) prend en charge certaines commandes d'affichage. Utilisez l'Outil d'interprétation de sortie afin de visualiser une analyse de commande d'affichage de sortie .
Cette section fournit des informations que vous pouvez utiliser pour dépanner votre configuration.
Afin de dépanner le mappage d'attribut LDAP, activez ces débogages :
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
07-Jan-2015 |
Première publication |