Introduzione
In questo documento viene descritto come abilitare l'autenticazione esterna LDAP (Lightweight Directory Access Protocol) di Microsoft con Cisco FMC e FTD.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
- Cisco Firepower Threat Defense (FTD)
- Cisco Firepower Management Center (FMC)
- LDAP Microsoft
Componenti usati
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:
- FTD 6.5.0-123
- CCP 6.5.0-115
- Microsoft Server 2012
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.
Premesse
FMC e dispositivi gestiti includono un account amministratore predefinito per l'accesso alla gestione. È possibile aggiungere account utente personalizzati nel FMC e nei dispositivi gestiti, come utenti interni o, se supportato per il modello, come utenti esterni su un server LDAP o RADIUS. L'autenticazione utente esterno è supportata per FMC e FTD.
· Utente interno - Il dispositivo FMC/FTD controlla un database locale per l'autenticazione dell'utente.
· Utente esterno - Se l'utente non è presente nel database locale, le informazioni di sistema provenienti da un server di autenticazione LDAP o RADIUS esterno popolano il relativo database utenti.
Esempio di rete
Configurazione
Configurazione LDAP di base nell'interfaccia utente di FMC
Passaggio 1. Accedere a:System > Users > External Authentication
Passaggio 2. Scegliere Add External Authentication Object:
Passaggio 3. Completare i campi obbligatori:
Passaggio 4. Abilitare l'External Authenticationoggetto e il salvataggio:
Accesso shell per utenti esterni
La FMC supporta due diversi utenti amministratori interni: uno per l'interfaccia Web e l'altro con accesso alla CLI. Ciò significa che esiste una chiara distinzione tra chi può accedere alla GUI e chi può accedere anche alla CLI. Al momento dell'installazione, la password dell'utente amministratore predefinito viene sincronizzata in modo da essere la stessa sia sulla GUI sia sulla CLI; tuttavia, viene tenuta traccia di tali password da meccanismi interni diversi e può anche essere diversa.
Agli utenti esterni LDAP deve inoltre essere concesso l'accesso alla shell.
Passaggio 1. Individuare la casella di riepilogo a discesa System > Users > External AuthenticationShell Authentication e fare clic su come mostrato nell'immagine e salvare:
Passaggio 2. Distribuire le modifiche in FMC.
Dopo aver configurato l'accesso alla shell per gli utenti esterni, eseguire il login tramite SSH come mostrato nell'immagine:
Autenticazione esterna per FTD
L'autenticazione esterna può essere abilitata sull'FTD.
Passaggio 1. Passare a Devices > Platform Settings > External Authentication. Fare clicEnabled su e salvare:
Ruoli utente
I privilegi utente sono basati sul ruolo utente assegnato. È inoltre possibile creare ruoli utente personalizzati con privilegi di accesso personalizzati in base alle esigenze dell'organizzazione oppure utilizzare ruoli predefiniti quali Security Analyst e Discovery Admin.
Esistono due tipi di ruoli utente:
- Ruoli utente interfaccia Web
- Ruoli utente CLI
Per un elenco completo dei ruoli predefiniti e per ulteriori informazioni, vedere: Ruoli utente.
Per configurare un ruolo utente predefinito per tutti gli oggetti di autenticazione esterna, passare a System > Users > External Authentication > Default User Role. Scegliere il ruolo utente predefinito che si desidera assegnare e fare clic su Save.
Per scegliere un ruolo utente predefinito o assegnare ruoli specifici a utenti specifici in un particolare gruppo di oggetti, è possibile scegliere l'oggetto e passare a Group Controlled Access Roles come mostrato nell'immagine:
SSL o TLS
Il DNS deve essere configurato nel CCP. Il motivo è che il valore Subject del certificato deve corrispondere a Authentication Object Primary Server Hostname. Dopo aver configurato Secure LDAP, le acquisizioni dei pacchetti non mostrano più le richieste di associazione in testo non crittografato.
Il protocollo SSL cambia la porta predefinita a 636 e il protocollo TLS la mantiene a 389.
Nota: la crittografia TLS richiede un certificato su tutte le piattaforme. Per SSL, l'FTD richiede anche un certificato. Per le altre piattaforme, SSL non richiede un certificato. Tuttavia, è consigliabile caricare sempre un certificato per SSL per evitare attacchi man-in-the-middle.
Passaggio 1. Individuare Devices > Platform Settings > External Authentication > External Authentication Object le informazioni SSL/TLS e immetterle:
Passaggio 2. Caricare il certificato della CA che ha firmato il certificato del server. Il certificato deve essere in formato PEM.
Passaggio 3. Salvare la configurazione.
Verifica
Base di ricerca test
Aprire un prompt dei comandi di Windows o PowerShell in cui è configurato LDAP e digitare il comando: dsquery user -name <known username>.
Ad esempio:
PS C:\Users\Administrator> dsquery user -name harry*
PS C:\Users\Administrator> dsquery user -name *
Verifica integrazione LDAP
Passare a System > Users > External Authentication > External Authentication Object. Nella parte inferiore della pagina è presente una Additional Test Parameters sezione come mostrato nell'immagine:
Scegliere Test per visualizzare i risultati.
Risoluzione dei problemi
Come interagiscono FMC/FTD e LDAP per scaricare gli utenti
Affinché FMC possa prelevare utenti da un server LDAP Microsoft, deve prima inviare una richiesta di binding sulla porta 389 o 636 (SSL) con le credenziali di amministratore LDAP. Una volta che il server LDAP è in grado di autenticare FMC, risponde con un messaggio di operazione riuscita. Infine, FMC è in grado di effettuare una richiesta con il messaggio Search Request descritto nel diagramma:
<< --- FMC sends: bindRequest(1) "Administrator@SEC-LAB0" simple LDAP must respond with: bindResponse(1) success --- >> << --- FMC sends: searchRequest(2) "DC=SEC-LAB,DC=NET" wholeSubtree
Si noti che l'autenticazione invia le password in chiaro per impostazione predefinita:
Come interagiscono FMC/FTD e LDAP per autenticare una richiesta di accesso utente
Affinché un utente possa accedere a FMC o FTD mentre l'autenticazione LDAP è abilitata, la richiesta di accesso iniziale viene inviata a Firepower, tuttavia il nome utente e la password vengono inoltrati a LDAP per una risposta di esito positivo/negativo. Ciò significa che FMC e FTD non conservano le informazioni sulla password localmente nel database e attendono invece la conferma di LDAP su come procedere.
Se il nome utente e la password vengono accettati, viene aggiunta una voce nell'interfaccia utente del Web come mostrato nell'immagine:
Eseguire il comando show user in FMC CLISH per verificare le informazioni utente: > show user <username>
Il comando visualizza informazioni di configurazione dettagliate per gli utenti specificati. Vengono visualizzati i seguenti valori:
Log in - Nome di accesso
UID — l'ID utente numerico
Auth (locale o remota) - modalità di autenticazione dell'utente
Access (Basic o Config): il livello di privilegi dell'utente
Abilitato (abilitato o disabilitato) — indica se l'utente è attivo
Reimposta (Sì o No) - Consente di specificare se l'utente deve modificare la password al successivo accesso
Exp (Never o number) - Numero di giorni trascorsi i quali è necessario modificare la password dell'utente.
Avviso (N/D o numero): il numero di giorni concessi a un utente per modificare la password prima della scadenza
Str (Sì o No) — indica se la password dell'utente deve soddisfare i criteri per verificare il livello
Blocco (Sì o No) - indica se l'account dell'utente è stato bloccato a causa di troppi errori di accesso
Max (N/D o un numero): il numero massimo di accessi non riusciti prima che l'account dell'utente venga bloccato
SSL o TLS non funziona come previsto
Se non si abilita il DNS sugli FTD, nel log pigtail verranno visualizzati errori che indicano che LDAP non è raggiungibile:
root@SEC-FMC:/$ sudo cd /var/common
root@SEC-FMC:/var/common$ sudo pigtail
MSGS: 03-05 14:35:31 SEC-FTD sshd[10174]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.0.2.15 user=h.potter
MSGS: 03-05 14:35:31 SEC-FTD sshd[10174]: pam_ldap: ldap_starttls_s: Can't contact LDAP server
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: error: PAM: Authentication failure for h.potter from 192.0.2.15
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: Failed keyboard-interactive/pam for h.potter from 192.0.2.15 port 61491 ssh2
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: error: maximum authentication attempts exceeded for h.potter from 192.0.2.15 port 61491 ssh2 [preauth]
MSGS: 03-05 14:35:33 SEC-FTD sshd[10138]: Disconnecting authenticating user h.potter 192.0.2.15 port 61491: Too many authentication failures [preauth]
Accertarsi che Firepower sia in grado di risolvere il nome di dominio completo (FQDN) dei server LDAP. In caso contrario, aggiungere il DNS corretto come visualizzato nell'immagine.
FTD: accedere al CLISH FTD ed eseguire il comando: > configure network dns servers <IP Address>.
FMC: scegliere System > Configuration, quindi Interfacce di gestione come illustrato nell'immagine:
Verificare che il certificato caricato in FMC sia il certificato della CA che ha firmato il certificato server del server LDAP, come illustrato nell'immagine:
Utilizzare le acquisizioni di pacchetti per confermare che il server LDAP invia le informazioni corrette:
Informazioni correlate