Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Premesse

Considerazioni sul client AnyConnect Secure Mobility

Configurazione

Esempio di rete

Certificati

ISE

Passaggio 1. Aggiungere l'ASA ai dispositivi di rete sull'ISE.

Passaggio 2. Creare un nome utente nell'archivio locale.

ASA

Windows 7

Passaggio 1. Installare il certificato CA.

Passaggio 2. Configurare la connessione VPN.

Verifica

Client Windows

Log

Debug dell'appliance ASA

Livello pacchetto

Risoluzione dei problemi

Informazioni correlate

Introduzione

In questo documento viene illustrato un esempio di configurazione di Cisco Adaptive Security Appliance (ASA) versione 9.3.2 e successive che consente all'accesso VPN remoto di utilizzare il protocollo IKEv2 (Internet Key Exchange Protocol) con autenticazione EAP (Extensible Authentication Protocol) standard. Ciò consente a un client Microsoft Windows 7 nativo (e a qualsiasi altro client IKEv2 basato su standard) di connettersi all'appliance ASA con autenticazione IKEv2 e EAP.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza dei seguenti argomenti:

- Conoscenze base di VPN e IKEv2

- Autenticazione di base, autorizzazione e accounting (AAA) e conoscenza RADIUS

- Esperienza nella configurazione di ASA VPN

- Esperienza nella configurazione di Identity Services Engine (ISE)

Componenti usati

Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

- Microsoft Windows 7

- Software Cisco ASA, versione 9.3.2 e successive

- Cisco ISE versione 1.2 e successive

Premesse

Considerazioni sul client AnyConnect Secure Mobility

Il client Windows IKEv2 nativo non supporta lo split tunnel (non sono presenti attributi CONF REPLY che potrebbero essere accettati dal client Windows 7), quindi l'unico criterio possibile con il client Microsoft è quello di eseguire il tunnel di tutto il traffico (0/0 selettori traffico). Se è necessario specificare un criterio per il tunnel suddiviso, usare AnyConnect.

AnyConnect non supporta metodi EAP standardizzati che vengono terminati sul server AAA (PEAP, Transport Layer Security). Se è necessario terminare le sessioni EAP sul server AAA, è possibile utilizzare il client Microsoft.

Configurazione

Nota: per ulteriori informazioni sui comandi menzionati in questa sezione, usare lo strumento di ricerca dei comandi (solo utenti registrati).

Esempio di rete

L'appliance ASA è configurata per l'autenticazione con un certificato (il client deve considerare attendibile il certificato). Il client Windows 7 è configurato per l'autenticazione con EAP (EAP-PEAP).

L'ASA agisce come gateway VPN per terminare la sessione IKEv2 dal client. L'ISE agisce come server AAA terminando la sessione EAP dal client. I pacchetti EAP vengono incapsulati nei pacchetti IKE_AUTH per il traffico tra il client e l'ASA (IKEv2) e quindi nei pacchetti RADIUS per il traffico di autenticazione tra l'ASA e l'ISE.

Certificati

Per generare il certificato per l'appliance ASA, è stata usata l'autorità di certificazione (CA) Microsoft. I requisiti del certificato che devono essere accettati dal client nativo di Windows 7 sono:

- L'estensione per l'utilizzo chiavi esteso deve includere l'autenticazione del server (nell'esempio riportato è stato utilizzato il modello "server Web").

- Il nome soggetto deve includere il nome di dominio completo (FQDN) che verrà utilizzato dal client per la connessione (in questo esempio ASAv.example.com).

Per ulteriori informazioni sul client Microsoft, vedere Risoluzione dei problemi di connessioni VPN IKEv2.

Nota: Android 4.x è più restrittivo e richiede il nome alternativo soggetto corretto come indicato nella RFC 6125. Per ulteriori informazioni su Android, vedere IKEv2 da Android strongSwan a Cisco IOS con autenticazione EAP e RSA.

Per generare una richiesta di firma del certificato sull'appliance ASA, è stata utilizzata questa configurazione:

hostname ASAv

domain-name example.com

crypto ca trustpoint TP

enrollment terminal

crypto ca authenticate TP

crypto ca enroll TP

ISE

Passaggio 1. Aggiungere l'ASA ai dispositivi di rete sull'ISE.

Scegliere Amministrazione > Dispositivi di rete. Impostare una password già condivisa che verrà utilizzata dall'appliance ASA.

Passaggio 2. Creare un nome utente nell'archivio locale.

Scegliere Amministrazione > Identità > Utenti. Creare il nome utente come richiesto.

Per impostazione predefinita, tutte le altre impostazioni sono abilitate per ISE per l'autenticazione degli endpoint con EAP-PEAP (Protected Extensible Authentication Protocol).

ASA

La configurazione per l'accesso remoto è simile per IKEv1 e IKEv2.

aaa-server ISE2 protocol radius

aaa-server ISE2 (inside) host 10.62.97.21

key cisco

group-policy AllProtocols internal

group-policy AllProtocols attributes

vpn-tunnel-protocol ikev1 ikev2 ssl-client ssl-clientless

ip local pool POOL 192.168.1.10-192.168.1.20 mask 255.255.255.0

crypto ipsec ikev2 ipsec-proposal ipsec-proposal

protocol esp encryption aes-256 aes-192 aes

protocol esp integrity sha-256 sha-1 md5

crypto dynamic-map DYNMAP 10 set ikev2 ipsec-proposal ipsec-proposal

crypto map MAP 10 ipsec-isakmp dynamic DYNMAP

crypto map MAP interface outside

crypto ikev2 policy 10

encryption 3des

integrity sha

group 2

prf sha

lifetime seconds 86400

Poiché Windows 7 invia un indirizzo di tipo IKE-ID nel pacchetto IKE_AUTH, è consigliabile utilizzare DefaultRAGroup per assicurarsi che la connessione termini sul gruppo di tunnel corretto. L'ASA esegue l'autenticazione con un certificato (autenticazione locale) e prevede che il client utilizzi l'autenticazione EAP (autenticazione remota). Inoltre, l'ASA deve inviare specificamente una richiesta di identità EAP affinché il client risponda con una risposta di identità EAP (query-identity).

tunnel-group DefaultRAGroup general-attributes

address-pool POOL

authentication-server-group ISE

default-group-policy AllProtocols

tunnel-group DefaultRAGroup ipsec-attributes

ikev2 remote-authentication eap query-identity

ikev2 local-authentication certificate TP

Infine, è necessario abilitare IKEv2 e utilizzare il certificato corretto.

crypto ikev2 enable outside client-services port 443

crypto ikev2 remote-access trustpoint TP

Windows 7

Passaggio 1. Installare il certificato CA.

Per considerare attendibile il certificato presentato dall'ASA, il client Windows deve considerare attendibile la relativa CA. È necessario aggiungere il certificato CA all'archivio certificati del computer (non all'archivio utenti). Il client Windows utilizza l'archivio del computer per convalidare il certificato IKEv2.

Per aggiungere la CA, scegliere MMC > Aggiungi o rimuovi snap-in > Certificati.

Fare clic sul pulsante di opzione Account computer.

Importare la CA nelle Autorità di certificazione radice attendibili.

Se il client Windows non è in grado di convalidare il certificato presentato dall'ASA, restituisce:

13801: IKE authentication credentials are unacceptable

Passaggio 2. Configurare la connessione VPN.

Per configurare la connessione VPN da Centro connessioni di rete e condivisione, scegliere Connetti a una rete aziendale per creare una connessione VPN.

Scegliere Usa connessione Internet (VPN).

Configurare l'indirizzo con un FQDN ASA. Verificare che sia risolto correttamente dal DNS (Domain Name Server).

Se necessario, modificare le proprietà, ad esempio la convalida del certificato, nella finestra Proprietà PEAP.

Verifica

Per verificare che la configurazione funzioni correttamente, consultare questa sezione.

Lo strumento Output Interpreter (solo utenti registrati) supporta alcuni comandi show. Usare lo strumento Output Interpreter per visualizzare un'analisi dell'output del comando show.

Client Windows

Quando ci si connette, immettere le credenziali.

Dopo l'autenticazione, viene applicata la configurazione IKEv2.

La sessione è attiva.

La tabella di routing è stata aggiornata con la route predefinita utilizzando una nuova interfaccia con metrica di livello inferiore.

C:\Users\admin>route print

===========================================================================

Interface List

41...........................IKEv2 connection to ASA

11...08 00 27 d2 cb 54 ......Karta Intel(R) PRO/1000 MT Desktop Adapter

1...........................Software Loopback Interface 1

15...00 00 00 00 00 00 00 e0 Karta Microsoft ISATAP

12...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface

22...00 00 00 00 00 00 00 e0 Karta Microsoft ISATAP #4

===========================================================================

IPv4 Route Table

===========================================================================

Active Routes:

Network Destination        Netmask          Gateway       Interface  Metric

0.0.0.0          0.0.0.0     192.168.10.1    192.168.10.68   4491

0.0.0.0          0.0.0.0         On-link      192.168.1.10     11

10.62.71.177  255.255.255.255     192.168.10.1    192.168.10.68   4236

127.0.0.0        255.0.0.0         On-link         127.0.0.1   4531

127.0.0.1  255.255.255.255         On-link         127.0.0.1   4531

127.255.255.255  255.255.255.255         On-link         127.0.0.1   4531

192.168.1.10  255.255.255.255         On-link      192.168.1.10    266

192.168.10.0    255.255.255.0         On-link     192.168.10.68   4491

192.168.10.68  255.255.255.255         On-link     192.168.10.68   4491

192.168.10.255  255.255.255.255         On-link     192.168.10.68   4491

224.0.0.0        240.0.0.0         On-link         127.0.0.1   4531

224.0.0.0        240.0.0.0         On-link     192.168.10.68   4493

224.0.0.0        240.0.0.0         On-link      192.168.1.10     11

255.255.255.255  255.255.255.255         On-link         127.0.0.1   4531

255.255.255.255  255.255.255.255         On-link     192.168.10.68   4491

255.255.255.255  255.255.255.255         On-link      192.168.1.10    266

===========================================================================

Log

Dopo aver completato l'autenticazione, l'appliance ASA segnala:

ASAv(config)# show vpn-sessiondb detail ra-ikev2-ipsec

Session Type: Generic Remote-Access IKEv2 IPsec Detailed

Username     : cisco                  Index        : 13

Assigned IP  : 192.168.1.10           Public IP    : 10.147.24.166

Protocol     : IKEv2 IPsecOverNatT

License      : AnyConnect Premium

Encryption   : IKEv2: (1)3DES  IPsecOverNatT: (1)AES256

Hashing      : IKEv2: (1)SHA1  IPsecOverNatT: (1)SHA1

Bytes Tx     : 0                      Bytes Rx     : 7775

Pkts Tx      : 0                      Pkts Rx      : 94

Pkts Tx Drop : 0                      Pkts Rx Drop : 0

Group Policy : AllProtocols           Tunnel Group : DefaultRAGroup

Login Time   : 17:31:34 UTC Tue Nov 18 2014

Duration     : 0h:00m:50s

Inactivity   : 0h:00m:00s

VLAN Mapping : N/A                    VLAN         : none

Audt Sess ID : c0a801010000d000546b8276

Security Grp : none

IKEv2 Tunnels: 1

IPsecOverNatT Tunnels: 1

IKEv2:

Tunnel ID    : 13.1

UDP Src Port : 4500                   UDP Dst Port : 4500

Rem Auth Mode: EAP

Loc Auth Mode: rsaCertificate

Encryption   : 3DES                   Hashing      : SHA1

Rekey Int (T): 86400 Seconds          Rekey Left(T): 86351 Seconds

PRF          : SHA1                   D/H Group    : 2

Filter Name  :

IPsecOverNatT:

Tunnel ID    : 13.2

Local Addr   : 0.0.0.0/0.0.0.0/0/0

Remote Addr  : 192.168.1.10/255.255.255.255/0/0

Encryption   : AES256                 Hashing      : SHA1

Encapsulation: Tunnel

Rekey Int (T): 28800 Seconds          Rekey Left(T): 28750 Seconds

Idle Time Out: 30 Minutes             Idle TO Left : 29 Minutes

Bytes Tx     : 0                      Bytes Rx     : 7834

Pkts Tx      : 0                      Pkts Rx      : 95

I registri ISE indicano che l'autenticazione è riuscita con le regole di autenticazione e autorizzazione predefinite.

I dettagli indicano il metodo PEAP.

Debug dell'appliance ASA

I debug più importanti includono:

ASAv# debug crypto ikev2 protocol 32

<most debugs omitted for clarity....

Pacchetto IKE_SA_INIT ricevuto dall'ASA (include le proposte IKEv2 e lo scambio di chiavi per Diffie-Hellman (DH)):

IKEv2-PROTO-2: Received Packet [From 10.147.24.166:500/To 10.62.71.177:500/VRF i0:f0]

Initiator SPI : 7E5B69A028355701 - Responder SPI : 0000000000000000 Message id: 0

IKEv2 IKE_SA_INIT Exchange REQUESTIKEv2-PROTO-3: Next payload: SA,

version: 2.0 Exchange type: IKE_SA_INIT, flags: INITIATOR Message id: 0, length: 528

Payload contents:

SA  Next payload: KE, reserved: 0x0, length: 256

last proposal: 0x2, reserved: 0x0, length: 40

Proposal: 1, Protocol id: IKE, SPI size: 0, #trans: 4    last transform: 0x3,

reserved: 0x0: length: 8

.....

Risposta IKE_SA_INIT all'iniziatore (include le proposte IKEv2, lo scambio di chiavi per DH e la richiesta di certificato):

IKEv2-PROTO-2: (30): Generating IKE_SA_INIT message

IKEv2-PROTO-2: (30): IKE Proposal: 1, SPI size: 0 (initial negotiation),

Num. transforms: 4

(30):    3DES(30):    SHA1(30):    SHA96(30):    DH_GROUP_1024_MODP/Group

2IKEv2-PROTO-5:

Construct Vendor Specific Payload: DELETE-REASONIKEv2-PROTO-5: Construct Vendor

Specific Payload: (CUSTOM)IKEv2-PROTO-5: Construct Notify Payload:

NAT_DETECTION_SOURCE_IPIKEv2-PROTO-5: Construct Notify Payload:

NAT_DETECTION_DESTINATION_IPIKEv2-PROTO-5: Construct Vendor Specific Payload:

FRAGMENTATION(30):

IKEv2-PROTO-2: (30): Sending Packet [To 10.147.24.166:500/From

10.62.71.177:500/VRF i0:f0]

IKE_AUTH per il client con IKE-ID, richiesta di certificato, set di trasformazioni proposti, configurazione richiesta e selettori traffico:

IKEv2-PROTO-2: (30): Received Packet [From 10.147.24.166:4500/To 10.62.71.177:500/VRF

i0:f0]

(30): Initiator SPI : 7E5B69A028355701 - Responder SPI : 1B1A94C7A7739855 Message id: 1

(30): IKEv2 IKE_AUTH Exchange REQUESTIKEv2-PROTO-3: (30): Next payload: ENCR,

version: 2.0 (30): Exchange type: IKE_AUTH, flags: INITIATOR (30): Message id: 1,

length: 948(30):

Risposta IKE_AUTH dall'appliance ASA che include una richiesta di identità EAP (primo pacchetto con estensioni EAP). Il pacchetto include anche il certificato (se non è presente un certificato corretto sull'appliance ASA, è presente un errore):

IKEv2-PROTO-2: (30): Generating EAP request

IKEv2-PROTO-2: (30): Sending Packet [To 10.147.24.166:4500/From 10.62.71.177:4500/VRF

i0:f0]

Risposta EAP ricevuta dall'ASA (lunghezza 5, payload: cisco)

(30): REAL Decrypted packet:(30): Data&colon; 14 bytes

(30):  EAP(30):   Next payload: NONE, reserved: 0x0, length: 14

(30):     Code: response: id: 36, length: 10

(30):     Type: identity

(30): EAP data&colon; 5 bytes

Successivamente, vengono scambiati più pacchetti come parte di EAP-PEAP. Infine, il successo EAP viene ricevuto dall'ASA e inoltrato al richiedente:

Payload contents:

(30):  EAP(30):   Next payload: NONE, reserved: 0x0, length: 8

(30):     Code: success: id: 76, length: 4

Autenticazione peer riuscita:

IKEv2-PROTO-2: (30): Verification of peer's authenctication data PASSED

E la sessione VPN è terminata correttamente.

Livello pacchetto

La richiesta di identità EAP è incapsulata nella "Extensible Authentication" di IKE_AUTH inviato dall'appliance ASA. Insieme alla richiesta di identità, vengono inviati IKE_ID e certificati.

Tutti i pacchetti EAP successivi sono incapsulati in IKE_AUTH. Dopo la conferma del metodo (EAP-PEAP), il supplicant avvia la generazione di un tunnel SSL (Secure Sockets Layer) che protegge la sessione MSCHAPv2 utilizzata per l'autenticazione.

Dopo lo scambio di più pacchetti, ISE conferma il successo.

La sessione IKEv2 viene completata dall'ASA, la configurazione finale (risposta della configurazione con valori quali un indirizzo IP assegnato), i set di trasformazioni e i selettori del traffico vengono inviati al client VPN.

Risoluzione dei problemi

Al momento non sono disponibili informazioni specifiche per la risoluzione dei problemi di questa configurazione.

Informazioni correlate

- Guida alla configurazione di Cisco ASA VPN CLI, 9.3

- Guida dell'utente di Cisco Identity Services Engine, versione 1.2

- Documentazione e supporto tecnico – Cisco Systems