In questo documento viene descritta la configurazione 802.1x con EAP-TLS (Extensible Authentication Protocol-Transport Layer Security) e ACS (Access Control System) in quanto questi eseguono un confronto binario tra un certificato client fornito dal richiedente e lo stesso certificato conservato in Microsoft Active Directory (AD). Il profilo AnyConnect Network Access Manager (NAM) viene usato per la personalizzazione. La configurazione per tutti i componenti è illustrata in questo documento, insieme a scenari per la risoluzione dei problemi relativi alla configurazione.
Nessun requisito specifico previsto per questo documento.
Il documento può essere consultato per tutte le versioni software o hardware.
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.
Fare riferimento a Cisco Technical Tips Conventions per ulteriori informazioni sulle convenzioni dei documenti.
Sulla stazione di Windows 7 è installato AnyConnect NAM, che viene usato come supplicant per autenticarsi al server ACS con il metodo EAP-TLS. Lo switch con 802.1x funge da autenticatore. Il certificato utente viene verificato da ACS e l'autorizzazione criterio applica criteri basati sul nome comune (CN) del certificato. Inoltre, il servizio ACS recupera il certificato utente da AD ed esegue un confronto binario con il certificato fornito dal richiedente.
Lo switch ha una configurazione di base. Per impostazione predefinita, la porta è nella VLAN 666 in quarantena. Tale VLAN ha un accesso limitato. Dopo aver autorizzato l'utente, la porta VLAN viene riconfigurata.
aaa authentication login default group radius local
aaa authentication dot1x default group radius
aaa authorization network default group radius
dot1x system-auth-control
interface Ethernet0/0
switchport access vlan 666
switchport mode access
ip device tracking maximum 10
duplex auto
authentication event fail action next-method
authentication order dot1x mab
authentication port-control auto
dot1x pae authenticator
end
radius-server host 192.168.10.152 auth-port 1645 acct-port 1646 key cisco
Per EAP-TLS, è necessario un certificato sia per il richiedente che per il server di autenticazione. Questo esempio si basa sui certificati generati con OpenSSL. È possibile utilizzare Microsoft Certificate Authority (CA) per semplificare la distribuzione nelle reti aziendali.
openssl genrsa -des3 -out ca.key 1024
openssl req -new -key ca.key -out ca.csr
cp ca.key ca.key.org
openssl rsa -in ca.key.org -out ca.key
openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
Il certificato CA viene conservato nel file ca.crt e la chiave privata (e non protetta) nel file ca.key.
Lo script per generare un singolo certificato firmato dalla CA di Cisco è:
openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial
-out server.crt -days 365
openssl pkcs12 -export -out server.pfx -inkey server.key -in server.crt
-certfile ca.crt
La chiave privata si trova nel file server.key e il certificato nel file server.crt. La versione di pkcs12 si trova nel file server.pfx.
Lo stesso processo può essere seguito in Windows 7 (supplicant) o utilizzare Active Directory per eseguire il push dei certificati utente.
È necessario mappare il certificato specifico all'utente specifico in AD.
Nota: La password non è importante.
Nota: Non utilizzare Mapping nomi (fare clic con il pulsante destro del mouse sul nome utente). Viene utilizzato per diversi servizi.
In questa fase il certificato è associato a un utente specifico in Active Directory. È possibile verificare questa condizione tramite ldapsearch:
ldapsearch -h 192.168.10.101 -D "CN=Administrator,CN=Users,DC=cisco-test,DC=com" -w
Adminpass -b "DC=cisco-test,DC=com"
Di seguito sono riportati alcuni risultati di esempio per test2.
# test2, Users, cisco-test.com
dn: CN=test2,CN=Users,DC=cisco-test,DC=com
..................
userCertificate:: MIICuDCCAiGgAwIBAgIJAP6cPWHhMc2yMA0GCSqGSIb3DQEBBQUAMFYxCzAJ
BgNVBAYTAlBMMQwwCgYDVQQIDANNYXoxDzANBgNVBAcMBldhcnNhdzEMMAoGA1UECgwDVEFDMQwwC
gYDVQQLDANSQUMxDDAKBgNVBAMMA1RBQzAeFw0xMzAzMDYxMjUzMjdaFw0xNDAzMDYxMjUzMjdaMF
oxCzAJBgNVBAYTAlBMMQswCQYDVQQIDAJQTDEPMA0GA1UEBwwGS3Jha293MQ4wDAYDVQQKDAVDaXN
jbzENMAsGA1UECwwEQ29yZTEOMAwGA1UEAwwFdGVzdDIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
AoGBAMFQZywrGTQKL+LeI19ovNavCFSG2zt2HGs8qGPrf/h3o4IIvU+nN6aZPdkTdsjiuCeav8HYD
aRznaK1LURt1PeGtHlcTgcGZ1MwIGptimzG+h234GmPU59k4XSVQixARCDpMH8IBR9zOSWQLXe+kR
iZpXC444eKOh6wO/+yWb4bAgMBAAGjgYkwgYYwCwYDVR0PBAQDAgTwMHcGA1UdJQRwMG4GCCsGAQU
FBwMBBggrBgEFBQcDAgYKKwYBBAGCNwoDBAYLKwYBBAGCNwoDBAEGCCsGAQUFBwMBBggrBgEFBQgC
FQYKKwYBBAGCNwoDAQYKKwYBBAGCNxQCAQYJKwYBBAGCNxUGBggrBgEFBQcDAjANBgkqhkiG9w0BA
QUFAAOBgQCuXwAgcYqLNm6gEDTWm/OWmTFjPyA5KSDB76yVqZwr11ch7eZiNSmCtH7Pn+VILagf9o
tiFl5ttk9KX6tIvbeEC4X/mQVgAB3HuJH5sL1n/k2H10XCXKfMqMGrtsZrA64tMCcCeZRoxfAO94n
PulwF4nkcnu1xO/B7x+LpcjxjhQ==
In questa fase è molto importante offrire all'utente la possibilità di utilizzare il certificato per ogni autenticazione. Non memorizzare nella cache tale scelta. Utilizzare inoltre 'username' come ID non protetto. È importante ricordare che non si tratta dello stesso ID utilizzato da ACS per eseguire una query su AD per il certificato. L'ID verrà configurato in ACS.
Nell'esempio è illustrata una distribuzione manuale del profilo. AD potrebbe essere utilizzato per distribuire il file per tutti gli utenti. Inoltre, se integrata con le VPN, l'ASA può essere utilizzata per effettuare il provisioning del profilo.
ACS confronta i nomi utente AD con l'utilizzo del campo CN del certificato ricevuto dal richiedente (in questo caso test1, test2 o test3). È inoltre abilitato il confronto binario. In questo modo ACS ottiene il certificato utente da AD e lo confronta con lo stesso certificato ricevuto dal richiedente. Se non corrisponde, l'autenticazione non riesce.
Utilizzato come origine identità nei criteri di identità RADIUS.
VLAN2 è il profilo di autorizzazione che restituisce gli attributi RADIUS che associano l'utente alla VLAN2 sullo switch.
È buona norma disabilitare il servizio 802.1x nativo sul supplicant Windows 7 poiché viene utilizzato AnyConnect NAM. Con il profilo configurato, il client può selezionare un certificato specifico.
Quando si utilizza il certificato test2, lo switch riceve una risposta di esito positivo insieme agli attributi RADIUS.
00:02:51: %DOT1X-5-SUCCESS: Authentication successful for client
(0800.277f.5f64) on Interface Et0/0
00:02:51: %AUTHMGR-7-RESULT: Authentication result 'success' from 'dot1x'
for client (0800.277f.5f64) on Interface Et0/0
switch#
00:02:51: %EPM-6-POLICY_REQ: IP=0.0.0.0| MAC=0800.277f.5f64|
AUDITSESID=C0A80A0A00000001000215F0| AUTHTYPE=DOT1X|
EVENT=APPLY
switch#show authentication sessions interface e0/0
Interface: Ethernet0/0
MAC Address: 0800.277f.5f64
IP Address: Unknown
User-Name: test2
Status: Authz Success
Domain: DATA
Oper host mode: single-host
Oper control dir: both
Authorized By: Authentication Server
Vlan Policy: 2
Session timeout: N/A
Idle timeout: N/A
Common Session ID: C0A80A0A00000001000215F0
Acct Session ID: 0x00000005
Handle: 0xE8000002
Runnable methods list:
Method State
dot1x Authc Succes
Notare che la VLAN 2 è stata assegnata. È possibile aggiungere altri attributi RADIUS a tale profilo di autorizzazione in ACS (ad esempio, Advanced Access Control List o timer di riautorizzazione).
I log su ACS sono i seguenti:
Errore possibile - errore interno in ACS Active Directory
Errore possibile - impossibile recuperare il certificato utente da Active Directory
Nelle reti aziendali, si consiglia di eseguire l'autenticazione con l'utilizzo di certificati sia del computer che dell'utente. In questo scenario, si consiglia di utilizzare la modalità 802.1x aperta sullo switch con VLAN limitata. Al riavvio del computer per 802.1x, la prima sessione di autenticazione viene avviata e autenticata con il certificato del computer AD. Quindi, dopo che l'utente ha fornito le credenziali e ha effettuato l'accesso al dominio, viene avviata la seconda sessione di autenticazione con il certificato utente. L'utente utilizza la VLAN corretta (attendibile) con accesso completo alla rete. Si integra perfettamente con Identity Services Engine (ISE).
È quindi possibile configurare autenticazioni separate dalle schede Autenticazione computer e Autenticazione utente.
Se la modalità 802.1x aperta non è accettabile sullo switch, è possibile utilizzare la modalità 802.1x prima che la funzionalità di accesso sia configurata nella policy del client.
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
09-Apr-2013 |
Versione iniziale |