Dans le cadre de la documentation associée à ce produit, nous nous efforçons d’utiliser un langage exempt de préjugés. Dans cet ensemble de documents, le langage exempt de discrimination renvoie à une langue qui exclut la discrimination en fonction de l’âge, des handicaps, du genre, de l’appartenance raciale de l’identité ethnique, de l’orientation sexuelle, de la situation socio-économique et de l’intersectionnalité. Des exceptions peuvent s’appliquer dans les documents si le langage est codé en dur dans les interfaces utilisateurs du produit logiciel, si le langage utilisé est basé sur la documentation RFP ou si le langage utilisé provient d’un produit tiers référencé. Découvrez comment Cisco utilise le langage inclusif.
Cisco a traduit ce document en traduction automatisée vérifiée par une personne dans le cadre d’un service mondial permettant à nos utilisateurs d’obtenir le contenu d’assistance dans leur propre langue. Il convient cependant de noter que même la meilleure traduction automatisée ne sera pas aussi précise que celle fournie par un traducteur professionnel.
Ce document décrit un exemple de configuration pour AnyConnect Single Sign-On (SSO) avec Duo et mappage LDAP pour l'autorisation sur le pare-feu sécurisé.
Cisco vous recommande de prendre connaissance des rubriques suivantes :
Les informations contenues dans ce document sont basées sur les versions 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. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
L'autorisation externe de l'utilisateur SAML dépend de la valeur NameID renvoyée par le fournisseur d'identités. Le pare-feu sécurisé mappe le champ NameID au nom d'utilisateur et ce nom d'utilisateur peut être utilisé pour interroger LDAP.
Remarque : la configuration utilisée dans ce document permet aux utilisateurs qui appartiennent à un groupe AD d'établir une connexion VPN d'accès à distance (RA). La connexion est interdite pour les utilisateurs de différents groupes Active Directory non définis sur la carte.
Configurez un fournisseur d'identité AD ou SAML qui peut être utilisé comme source d'authentification principale pour Duo SSO.
En outre, vous avez besoin d'un proxy d'authentification double (recommandé trois serveurs proxy d'authentification pour une haute disponibilité) qui soit accessible à votre fournisseur d'identité AD ou SAML sur site.
Pour plus d'informations, référez-vous à Authentification unique duo.
Étape 1. Configurez Cisco Secure FTD sur le portail d'administration Duo.
Applications > Protect an Application
.
2FA with SSO hosted by Duo
.
Protect
à l'extrême droite afin de configurer le VPN FTD de Cisco.
Étape 2. Configurez les informations du fournisseur de services sur le portail d'administration Duo.
Ces attributs sont utilisés :
fj-ftdv.example.com
SSO-AD_Split-tunnel
Remarque : l'attribut Mail peut être défini sur
. Si c'est le cas, la configuration de ldap-naming-attribute
modifications de userPrincipalName
par sAMAccountName
sur le Cisco Secure FTD.
Étape 3. Cliquez sur le bouton Save
à la fin de la page afin d'enregistrer la configuration.
Étape 4. Naviguez jusqu'à Users > Add User
comme l'illustre l'image :
Étape 5. Complétez la zone vide avec toutes les informations nécessaires pour le nouvel utilisateur.
Remarque : les données de nom d'utilisateur et de messagerie doivent correspondre aux informations fournies dans le serveur Active Directory.
Étape 6. Add Phone afin d'ajouter le numéro de téléphone de l'utilisateur. Ceci est nécessaire pour que l'utilisateur s'authentifie via 2FA avec Duo Push.
Étape 7. Activez Duo Mobile pour l'utilisateur en question.
Remarque : assurez-vous que Duo Mobile est installé sur l'appareil de l'utilisateur final :
Étape 8. Générez le code d'activation Duo Mobile.
Étape 9. Envoyez des instructions par SMS.
Étape 10. Cliquez sur le lien envoyé par SMS, et l'application Duo est liée au compte d'utilisateur dans la section Device info.
Étape 11. Répétez le processus pour tous les utilisateurs à ajouter.
Étape 12. Récupérer les métadonnées d'application :
Applications
et cliquez sur l'application Service Provider créée à l'étape 1.Identity Provider Entity ID URL
, SSO URL
,et Logout URL
à partir des métadonnées.
Étape 13. Téléchargez le Identity Provider Certificate
.
Étape 1. Installez et inscrivez le certificat du fournisseur d'identité (IdP) sur le FMC.
Devices > Certificates
.
Add
. Sélectionnez le FTD pour vous inscrire à ce certificat.Add Cert Enrollment
, utilisez n'importe quel nom comme étiquette pour le certificat IdP.Manual
.CA only
et Skip Check for CA flag fields
.
Étape 2. Configurez les paramètres du serveur SAML :
Objects > Object Management > AAA Servers > Single Sign-on Server.
Add Single Sign-on Server.
Remarque : Request Timeout
est défini sur 300, car la transmission Duo est envoyée pendant le processus d'authentification et une interaction de l'utilisateur est nécessaire. Modifiez le Request Timeout
selon la conception du réseau.
Étape 3. Configurez le serveur REALM/LDAP.
Integration > Other Integrations.
Pour les besoins de cette démonstration :
ActiveDirectory_SSO
example.com
administrator@example.com
Remarque : LDAPS
(LDAP sur SSL) peut être utilisé. Le port doit être modifié de 389 à 636.
Remarque : le serveur AD doit disposer de données utilisateur qui ont été téléchargées vers Duo.
Étape 4. Créez des stratégies de groupe selon vos besoins.
Objects > Object Management > VPN > Group Policy.
Add Group Policy
.Dans le cadre de cette démonstration, trois stratégies de groupe ont été configurées :
AnyConnect Admins
groupe.
2. SSO_LDAP_USERS
La stratégie de groupe est le groupe pour les utilisateurs qui appartiennent à la AnyConnect Users
groupe.
3. Le NO_ACCESS
La stratégie de groupe est le groupe pour les utilisateurs qui n'appartiennent à aucune des stratégies de groupe précédentes. Il possède la Simultaneous Login Per User
doit être défini sur 0.
Étape 5. Configurer le mappage des attributs LDAP
Devices > VPN > Remote Access
.
Advanced > LDAP Attribute Mapping.
LDAP Attribute Mapping
.Fournir le LDAP Attribute Name
et la Cisco Attribute Name
. Cliquer Add Value Map
.
Pour les besoins de cette démonstration, la configuration de mappage d'attribut LDAP :
memberOf
Group-Policy
LDAP Attribute Value
et la Cisco Attribute Value
. Cliquer OK
.Pour les besoins de cette démonstration :
Valeur d'attribut LDAP : CN=Administrateurs AnyConnect, CN=Utilisateurs, DC=exemple, DC=com
Valeur d'attribut Cisco : SSO_LDAP_ADMINS
Valeur d'attribut LDAP : CN=Utilisateurs AnyConnect, CN=Utilisateurs, DC=exemple, DC=com
Valeur d'attribut Cisco : SSO_LDAP_USERS
Étape 6. Configurez le Connection Profile
.
Devices > Remote Access
puis modifiez votre configuration d'accès à distance VPN actuelle.NO_ACCESS
Stratégie de groupe comme stratégie de groupe pour ce profil de connexion.
AAA
s'affiche. Sous la Authentication Method
, choisissez SAML
, et pour Authorization Server
, choisissez le serveur AD qui a été créé à l'étape 3.
Avertissement : VPN client embedded browser
est sélectionné comme expérience de connexion SAML. Si Default OS Browser est sélectionné, alors examinez les restrictions mentionnées dans Support for an AnyConnect VPN SAML External Browser.
Étape 7. Configurer FlexConfig Policy
afin de modifier l'attribut d'appellation LDAP.
Comme l'attribut Courrier du fournisseur de services est défini sur Adresse e-mail, ldap-naming-attribute
pour le serveur AD doit être modifié à partir de sAMAccountName
par userPrincipalName
.
Remarque : si le fournisseur d'identité envoie NameID
évaluer comme sAMAccountName
, cette étape n'est pas nécessaire.
Devices > FlexConfig
puis choisissez ou créez le FlexConfig Policy
afin d'effectuer des modifications.FlexConfig Object
afin d'ajouter un nouvel objet.
ldap-naming-attribute
expéditeur sAMAccountName
par userPrincipalname.
Étape 8. Naviguez jusqu'à Deploy > Deployment
et choisissez le FTD approprié afin d'appliquer la configuration.
Extrait du débogage LDAP debug ldap 255
, il peut être observé qu'il y a une correspondance sur le mappage d'attribut LDAP pour l'utilisateur Admin :
[26] LDAP Search:
Base DN = [DC=example,DC=com]
Filter = [userPrincipalName=admin_user@example.com]
Scope = [SUBTREE]
[20]
memberOf: value = CN=AnyConnect Admins,CN=Users,DC=example,DC=com [20]
mapped to Group-Policy: value = SSO_LDAP_ADMINS
[20]
mapped to LDAP-Class: value = SSO_LDAP_ADMINS
Lancez show vpn-sessiondb anyconnect
afin de s'assurer que l'utilisateur est dans le groupe défini.
firepower# show vpn-sessiondb anyconnect
Session Type: AnyConnect
Username : admin_user@example.com
Index : 6
Public IP : XX.XX.XX.XX
Protocol : AnyConnect-Parent
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none
Hashing : AnyConnect-Parent: (1)none
Bytes Tx : 0 Bytes Rx : 0
Group Policy : SSO_LDAP_ADMINS
Extrait du débogage LDAP Tunnel Group : SSO_AD_Split-tunnel Login Time : 19:37:28 UTC Thu Jul 20 2023 Duration : 0h:01m:33s Inactivity : 0h:00m:00s VLAN Mapping : N/A VLAN : none Audt Sess ID : 0a1f7c490000600064b98cf8 Security Grp : none Tunnel Zone : 0
. debug ldap 255
, il peut être observé qu'il y a une correspondance sur le mappage d'attribut LDAP pour l'utilisateur test :
[29] LDAP Search:
Base DN = [DC=example,DC=com]
Filter = [userPrincipalName=test_user@example.com]
Scope = [SUBTREE]
[29]
memberOf: value = CN=AnyConnect Users,CN=Users,DC=example,DC=com [29]
mapped to Group-Policy: value = SSO_LDAP_USERS [29]
mapped to LDAP-Class: value = SSO_LDAP_USERS
Lancez show vpn-sessiondb anyconnect
afin de s'assurer que l'utilisateur est dans le bon groupe.
firepower# show vpn-sessiondb anyconnect
Session Type: AnyConnect
Username : test_user@example.com
Index : 6
Public IP : XX.XX.XX.XX
Protocol : AnyConnect-Parent
License : AnyConnect Premium
Encryption : AnyConnect-Parent: (1)none
Hashing : AnyConnect-Parent: (1)none
Bytes Tx : 0 Bytes Rx : 0
Group Policy : SSO_LDAP_USERS Tunnel Group : SSO_AD_Split-tunnel
Login Time : 19:37:28 UTC Thu Jul 20 2023
Duration : 0h:08m:07s
Inactivity : 0h:00m:00s
VLAN Mapping : N/A VLAN : none
Audt Sess ID : 0a1f7c490000600064b98cf8
Security Grp : none Tunnel Zone : 0
Extrait du débogage LDAP debug ldap 255
, il peut être observé qu'il n'y a pas de correspondance sur le mappage d'attribut LDAP pour NOACCESS
Utilisateur et avec débogage webvpn
qui NO_ACCESS
La stratégie de groupe est sélectionnée, l'utilisateur ne peut donc pas s'authentifier.
[32] LDAP Search:
Base DN = [DC=example,DC=com]
Filter = [userPrincipalName=noaccess_user@example.com]
Scope = [SUBTREE]
User Policy Access-Lists: user_acl[0] = NULL user_acl[1] = NULL tunnel policy attributes: 1 Filter-Id(11) 8 "" 2 Session-Timeout(27) 4 0 3 Idle-Timeout(28) 4 30 4 Simultaneous-Logins(4098) 4 0 5 Primary-DNS(4101) 4 IP: 0.0.0.0 6 Secondary-DNS(4102) 4 IP: 0.0.0.0 7 Primary-WINS(4103) 4 IP: 0.0.0.0 8 Secondary-WINS(4104) 4 IP: 0.0.0.0 9 Tunnelling-Protocol(4107) 4 96 10 Banner(4111) 0 0x000014e304401888 ** Unresolved Attribute ** 11 Group-Policy(4121) 9
"NO_ACCESS"
La plupart des dépannages SAML impliquent une mauvaise configuration qui peut être trouvée en vérifiant la configuration SAML ou les débogages :
debug webvpn saml 255
debug webvpn 255
debug webvpn anyconnect 255
debug webvpn session 255
debug webvpn request 255
Pour les problèmes d'autorisation de mappage LDAP, les débogages utiles sont les suivants :
debug aaa common 255
debug ldap 255
Révision | Date de publication | Commentaires |
---|---|---|
1.0 |
28-Jul-2023 |
Première publication |