La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
Questo documento descrive un esempio di configurazione per AnyConnect Single Sign-On (SSO) con Duo e mapping LDAP per l'autorizzazione su Secure Firewall.
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software:
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Flusso traffico DUO SSO
L'autorizzazione esterna dell'utente SAML dipende dal valore NameID restituito dall'IdP. Secure Firewall mappa il campo NameID al nome utente e questo nome utente può essere utilizzato per eseguire query su LDAP.
Nota: la configurazione utilizzata in questo documento consente agli utenti che appartengono a un gruppo AD di stabilire una connessione VPN di accesso remoto. La connessione non è consentita per gli utenti di diversi gruppi AD non definiti nella mappa.
Configurare un provider di identità AD o SAML che possa essere utilizzato come origine di autenticazione primaria per Duo SSO.
Inoltre, è necessario disporre di un proxy di autenticazione Duo (sono consigliati tre server proxy di autenticazione per un'elevata disponibilità) che sia raggiungibile dal provider di identità AD o SAML locale.
Per ulteriori informazioni, fare riferimento a Duo Single Sign-On.
Passaggio 1. Configurare Cisco Secure FTD sul portale di amministrazione Duo.
Applications > Protect an Application
.
2FA with SSO hosted by Duo
.
Protect
all'estrema destra per configurare la VPN FTD di Cisco.Applicazione Duo Protect
Passaggio 2. Configurare le informazioni sul provider di servizi sul portale Duo Admin.
Vengono utilizzati gli attributi riportati di seguito.
fj-ftdv.example.com
SSO-AD_Split-tunnel
Duo Service Provider
Nota: l'attributo Mail può essere impostato su
. In questo caso, la configurazione per ldap-naming-attribute
modifiche da userPrincipalName
a sAMAccountName
su Cisco Secure FTD.
Passaggio 3. Fare clic sul pulsante Save
alla fine della pagina per salvare la configurazione.
Passaggio 4. Passa a Users > Add User
come mostrato nell'immagine:
Duo Add User
Passaggio 5. Compilare lo spazio con tutte le informazioni necessarie per il nuovo utente.
Duo
Nota: i dati di Nome utente e di posta elettronica devono corrispondere alle informazioni specificate nel server Active Directory.
Passaggio 6. Aggiungere il numero di telefono per aggiungere il numero di telefono dell'utente. Questa operazione è necessaria per l'autenticazione tramite 2FA con Duo Push.
Duo Add Phone
Passaggio 7. Attivare Duo Mobile per l'utente specifico.
Attiva Duo Mobile Phone
Nota: verificare che Duo Mobile sia installato sul dispositivo dell'utente finale:
Passaggio 8. Genera il codice Duo Mobile Activation.
Duo Activation Code
Passaggio 9. Invia istruzioni tramite SMS.
Duo SMS
Passaggio 10. Fare clic sul collegamento inviato tramite SMS e l'app Duo viene collegata all'account utente nella sezione Informazioni dispositivo.
Sezione Duo Info
Passaggio 11. Ripetere la procedura per tutti gli utenti da aggiungere.
Passaggio 12. Recupera metadati applicazione:
Applications
e fare clic sull'applicazione Service Provider creata nel Passaggio 1.Identity Provider Entity ID URL
, SSO URL
,e Logout URL
dai metadati.Informazioni Duo IdP
Passaggio 13. Scarica la Identity Provider Certificate
.
Duo Download IdP Certificato
Passaggio 1. Installare e registrare il certificato del provider di identità (IdP) nel CCP.
Devices > Certificates
.
Certificato FMC 1
Add
. Scegliere l'FTD da registrare nel certificato.Add Cert Enrollment
utilizzare un nome qualsiasi come etichetta per il certificato del provider di identità.Manual
.CA only
e Skip Check for CA flag fields
.Registrazione certificato FMC
Passaggio 2. Configurare le impostazioni del server SAML:
Objects > Object Management > AAA Servers > Single Sign-on Server.
Add Single Sign-on Server.
SSO FMC
Informazioni SSO FMC
Nota: Request Timeout
è impostato su 300 in quanto il push Duo viene inviato durante il processo di autenticazione ed è necessaria l'interazione dell'utente. Modificare la Request Timeout
valore in base alla progettazione della rete.
Passaggio 3. Configurare la configurazione del server LDAP/REALM.
Integration > Other Integrations.
Area autenticazione FMC
FMC - Aggiungi realm
Ai fini della presente dimostrazione:
ActiveDirectory_SSO
example.com
administrator@example.com
Informazioni sull'area di autenticazione FMC
Nota: LDAPS
(LDAP su SSL). La porta deve essere modificata da 389 a 636.
Nota: il server AD deve disporre di dati utente caricati in Duo.
Passaggio 4. Creare Criteri di gruppo in base alle esigenze.
Objects > Object Management > VPN > Group Policy.
Add Group Policy
.Ai fini di questa dimostrazione, sono stati configurati tre Criteri di gruppo:
AnyConnect Admins
group.Criteri di gruppo 1
2. SSO_LDAP_USERS
Criteri di gruppo è il gruppo per gli utenti che appartengono al AnyConnect Users
group.
Criteri di gruppo 2
3. Il NO_ACCESS
Criteri di gruppo è il gruppo per gli utenti che non appartengono a nessuno dei Criteri di gruppo precedenti. Ha il Simultaneous Login Per User
deve essere impostato su 0.
Criteri di gruppo 3
Passaggio 5. Configurare il mapping degli attributi LDAP.
Devices > VPN > Remote Access
.
Advanced > LDAP Attribute Mapping.
LDAP Attribute Mapping
.Fornire LDAP Attribute Name
e Cisco Attribute Name
. Fare clic su Add Value Map
.
Ai fini di questa dimostrazione, configurazione della mappa degli attributi LDAP:
memberOf
Group-Policy
Mappa attributi LDAP
LDAP Attribute Value
e Cisco Attribute Value
. Fare clic su OK
.Ai fini della presente dimostrazione:
Valore attributo LDAP: CN=AnyConnect Admins, CN=Users, DC=esempio, DC=com
Valore attributo Cisco: SSO_LDAP_ADMINS
Valore attributo LDAP: CN=AnyConnect Users, CN=Users, DC=esempio, DC=com
Valore attributo Cisco: SSO_LDAP_USERS
Configura mapping attributi LDAP
Passaggio 6. Configurare Connection Profile
.
Devices > Remote Access
e quindi modificare la configurazione corrente di Accesso remoto VPN.NO_ACCESS
Criteri di gruppo come Criteri di gruppo per il profilo di connessione.Profilo connessione FMC 1
AAA
scheda. Nell'ambito Authentication Method
, scegliere SAML
e per Authorization Server
scegliere il server AD creato nel passaggio 3.Profilo di connessione FMC AAA
Avviso: VPN client embedded browser
viene scelto come esperienza di accesso SAML. Se è stato scelto Default OS Browser (Browser del sistema operativo predefinito), esaminare le restrizioni menzionate in Supporto di un browser esterno AnyConnect VPN SAML.
Alias gruppo FMC
Passaggio 7. Configurazione FlexConfig Policy
per modificare l'attributo di denominazione LDAP.
Poiché l'attributo Posta elettronica del provider di servizi è impostato su Indirizzo e-mail, ldap-naming-attribute
per il server AD deve essere modificato da sAMAccountName
a userPrincipalName
.
Nota: se IdP invia NameID
valore come sAMAccountName
, questo passaggio non è necessario.
Devices > FlexConfig
e quindi scegliere o creare la FlexConfig Policy
per modificare.FlexConfig Object
per aggiungere un nuovo oggetto.Oggetto FlexConfig di FMC
ldap-naming-attribute
da sAMAccountName
a userPrincipalname.
Aggiungi oggetto FlexConfig
Passaggio 8. Passa a Deploy > Deployment
e scegliere l'FTD corretto per applicare la configurazione.
Da frammento di codice di debug LDAP debug ldap 255
, è possibile osservare che esiste una corrispondenza nella mappa degli attributi LDAP per l'utente amministratore:
[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
Utilizzare il comando show vpn-sessiondb anyconnect
per assicurarsi che l'utente si trovi nel gruppo definito.
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
Da frammento di codice di debug 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
, è possibile osservare che esiste una corrispondenza nella mappa degli attributi LDAP per l'utente di 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
Utilizzare il comando show vpn-sessiondb anyconnect
per assicurarsi che l'utente si trovi nel gruppo corretto.
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
Da frammento di codice di debug LDAP debug ldap 255
, è possibile osservare che non esiste alcuna corrispondenza nella mappa degli attributi LDAP per NOACCESS
Utente e con debug webvpn
che NO_ACCESS
È stato scelto Criteri di gruppo, pertanto l'utente non è in grado di eseguire l'autenticazione.
[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 maggior parte delle procedure di risoluzione dei problemi SAML comporta una configurazione errata che può essere rilevata controllando la configurazione SAML o i debug:
debug webvpn saml 255
debug webvpn 255
debug webvpn anyconnect 255
debug webvpn session 255
debug webvpn request 255
Per i problemi di autorizzazione delle mappature LDAP, i debug utili sono:
debug aaa common 255
debug ldap 255
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
28-Jul-2023 |
Versione iniziale |