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).
In questo documento viene illustrato un esempio di come configurare un headend IOS XE per l'accesso remoto con postura utilizzando il metodo di autenticazione AnyConnect IKEv2 e EAP-Message Digest 5 (EAP-MD5).
Cisco raccomanda la conoscenza dei seguenti argomenti:
Le informazioni fornite in questo documento si basano sulle seguenti versioni software e 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.
Per garantire che le misure di sicurezza della rete imposte rimangano pertinenti ed efficaci, Cisco ISE consente di convalidare e mantenere le funzionalità di sicurezza su qualsiasi computer client che accede alla rete protetta. Utilizzando policy di postura progettate per garantire la disponibilità delle impostazioni o delle applicazioni di sicurezza più aggiornate sui computer client, l'amministratore Cisco ISE può garantire che tutti i computer client che accedono alla rete soddisfino e continuino a soddisfare gli standard di sicurezza definiti per l'accesso alla rete aziendale. I report di conformità della postura forniscono a Cisco ISE un'istantanea del livello di conformità del client al momento dell'accesso dell'utente, nonché ogni volta che si verifica una rivalutazione periodica.
La postura può essere rappresentata da tre elementi principali:
Nota: I router che eseguono IOS XE non supportano il reindirizzamento.
Nota: Affinché CoA con ISE sia completamente operativo, il software IOS XE deve avere le correzioni per i seguenti difetti:
CSCve16269 IKEv2 CoA non funziona con ISE
CSCvi90729 IKEv2 CoA non funziona con ISE (coa-push=TRUE anziché TRUE)
Il flusso di postura senza reindirizzamento è ben documentato nell'articolo "ISE Posture Style Comparison for Pre and Post 2.2", sezione "Posture flow in ISE 2.2".
Il provisioning del modulo Anyconnect ISE Posture con FlexVPN può essere eseguito in due modi:
Le seguenti condizioni devono essere soddisfatte per il lavoro di postura con il provisioning manuale del modulo di postura ISE:
1. Il DNS (Domain Name Server) deve risolvere l'FQDN (Fully Qualified Domain Name) enroll.cisco.com in IP di PSN (Policy Service Nodes). Durante il primo tentativo di connessione, il modulo della postura non dispone di informazioni sui PSN disponibili. È in corso l'invio di richieste di individuazione per trovare PSN disponibili. L'FQDN enroll.cisco.com viene utilizzato in una di queste richieste.
2. La porta TCP 8905 deve essere consentita per gli IP dei PSN. in questo scenario, la postura passa attraverso la porta TCP 8905.
3. Il certificato di amministrazione sui nodi PSN deve avere enroll.cisco.com nel campo SAN. La connessione tra l'utente VPN e il nodo PSN tramite TCP 8905 è protetta tramite certificato amministratore e l'utente riceverà un avviso di certificato se non è presente il nome "enroll.cisco.com" nel certificato amministratore del nodo PSN.
Nota: In base a RFC6125, i CN dei certificati devono essere ignorati se sono stati specificati valori SAN. Significa anche che dobbiamo aggiungere CN di amministrazione certificato in campo SAN.
Le seguenti condizioni devono essere soddisfatte per il lavoro di postura con il provisioning automatico del modulo ISE Posture:
1. Il DNS deve risolvere il nome di dominio completo (FQDN) del PCP negli IP dei nodi di servizio dei criteri (PSN).
2. Le porte TCP 80, 443 e la porta CPP (8443 per impostazione predefinita) devono essere consentite per i PSN e IP. Il client deve aprire l'FQDN di CPP direttamente tramite HTTP (verrà reindirizzato a HTTPS ) o HTTPS. La richiesta verrà reindirizzata alla porta di CPP (per impostazione predefinita 8443) e quindi la postura passerà attraverso tale porta.
3. I certificati di amministrazione e CPP sui nodi PSN devono avere un FQDN CPP nel campo SAN. La connessione tra l'utente VPN e il nodo PSN tramite TCP 443 è protetta dal certificato di amministrazione e la connessione sulla porta CPP è protetta dal certificato CPP.
Nota: In base a RFC6125, i CN dei certificati devono essere ignorati se sono stati specificati valori SAN. Significa anche che dobbiamo aggiungere CN di amministrazione e certificati CPP nel campo SAN dei certificati corrispondenti.
Nota: Se il software ISE non contiene una correzione per CSCvj76466, la postura o il provisioning del client funzioneranno solo se l'esposizione o il provisioning del client vengono eseguiti sullo stesso PSN su cui il client è stato autenticato.
In caso di postura con FlexVPN, il flusso include i seguenti passaggi:
1. L'utente si connette all'hub FlexVPN utilizzando il client Anyconnect.
2. ISE invia un messaggio di accesso/accettazione all'hub FlexVPN con il nome ACL che deve essere applicato per limitare l'accesso.
3 bis. Prima connessione con il provisioning manuale: il modulo di postura ISE inizia a rilevare il policy server che invia la sonda a enroll.cisco.com tramite la porta TCP 8905. Di conseguenza, il modulo di postura scarica il profilo di postura configurato e aggiorna il modulo di conformità sul lato client.
Durante i successivi tentativi di connessione, il modulo di postura ISE utilizzerà anche i nomi e gli IP specificati nell'elenco Call Home del profilo di postura per il rilevamento del policy server.
3 ter. Prima connessione con Provisioning automatico - Il client apre CPP tramite FQDN. Come risultato positivo Network Setup Assistant viene scaricato sulla workstation del client, quindi scarica e installa il modulo ISE Posture, il modulo ISE Compliance e il profilo postura.
Durante i successivi tentativi di connessione, il modulo di postura ISE utilizzerà i nomi e gli IP specificati nell'elenco Call Home del profilo di postura per il rilevamento del policy server.
4. Il modulo Posture avvia i controlli di conformità e invia i risultati dei controlli all'ISE.
5. Se lo stato del client è Conforme, ISE invia Access-Accept all'hub FlexVPN con il nome ACL che deve essere applicato al client conforme.
6, il client ottiene l'accesso alla rete.
Per ulteriori informazioni sul processo di postura, consultare il documento "ISE Posture Style Comparison for Pre and Post 2.2".
L'utente VPN avrà accesso al server (10.0.0.10) solo se è conforme allo stato.
In questo documento Windows Server 2008 R2 viene utilizzato come server DNS.
Passaggio 1. Aggiungere il record dell'host (A) per enroll.cisco.com che punta all'IP del PSN:
Passaggio 2. Aggiungere il record host (A) per l'FQDN del PCP (cpp.example.com utilizzato in questo esempio) che punta all'IP del PSN:
Il router utilizzerà un certificato per autenticarsi al client Anyconnect. Il certificato del router deve essere considerato attendibile dal sistema operativo dell'utente in modo da evitare avvisi relativi al certificato durante la fase di connessione.
Il certificato di identità può essere fornito in uno dei modi seguenti:
Nota: L'utilizzo di certificati autofirmati non è supportato con IKEv2 FlexVPN.
Opzione 1 - Configurare il server Autorità di certificazione (CA) sul router
Nota: È possibile creare un server CA sullo stesso router IOS o su un altro router. In questo articolo la CA viene creata sullo stesso router.
Nota: È necessario sincronizzare l'ora con il server NTP prima di abilitare il server CA.
Nota: Si noti che l'utente non sarà in grado di verificare l'autenticità di questo certificato, pertanto i dati utente non saranno protetti da attacchi man-in-the-middle a meno che il certificato CA non venga verificato manualmente e importato nel computer dell'utente prima di stabilire la connessione.
Passaggio 1. Generare le chiavi RSA per il server CA:
FlexVPN-HUB(config)# crypto key generate rsa label ROOT-CA modulus 2048
Passaggio 2. Generare le chiavi RSA per il certificato di identità:
FlexVPN-HUB(config)# crypto key generate rsa label FLEX-1 modulus 2048
Verifica:
FlexVPN-HUB# show crypto key mypubkey rsa ---- output truncated ----- Key name: ROOT-CA
Key type: RSA KEYS
Storage Device: private-config
Usage: General Purpose Key
Key is not exportable. Redundancy enabled.
Key Data:
30820122 300D0609 2A864886 F70D0101 01050003 82010F00 3082010A 02820101
00C01F04 E0AF3AB8 97CED516 3B31152A 5C3678A0 829A0D0D 2F46D86C 2CBC9175
----- output truncated ------ ----- output truncated ------ Key name: FLEX-1
Key type: RSA KEYS
Storage Device: private-config
Usage: General Purpose Key
Key is not exportable. Redundancy enabled.
Key Data:
30820122 300D0609 2A864886 F70D0101 01050003 82010F00 3082010A 02820101
009091AE 4185DC96 4F561F7E 506D56E8 240606D0 CC16CC5E E4E24EEB 1664E42C ----- output truncated ------
Passaggio 3. Configurare la CA:
ip http server crypto pki server ROOT-CA issuer-name cn=ROOT-CA.example.com hash sha256 lifetime certificate 1095 lifetime ca-certificate 3650 eku server-auth no shutdown
Verifica:
FlexVPN-HUB# show crypto pki server Certificate Server ROOT-CA:
Status: enabled
State: enabled
Server's configuration is locked (enter "shut" to unlock it)
Issuer name: cn=ROOT-CA.example.com
CA cert fingerprint: A5522AAB 1410E645 667F0D70 49AADA45
Granting mode is: auto
Last certificate issued serial number (hex): 3
CA certificate expiration timer: 18:12:07 UTC Mar 26 2021
CRL NextUpdate timer: 21:52:55 UTC May 21 2018
Current primary storage dir: nvram:
Database Level: Minimum - no cert data written to storage
Passaggio 4. Configurare il trust point:
interface loopback 0 ip address 10.10.10.10 255.255.255.255 crypto pki trustpoint FLEX-TP-1
enrollment url http://10.10.10.10:80
fqdn none
subject-name cn=flexvpn-hub.example.com
revocation-check none
rsakeypair FLEX-1
Passaggio 5. Autenticare la CA:
FlexVPN-HUB(config)#crypto pki authenticate FLEX-TP-1
Certificate has the following attributes:
Fingerprint MD5: A5522AAB 1410E645 667F0D70 49AADA45
Fingerprint SHA1: F52EAB1A D39642E7 D8EAB804 0EB30973 7647A860
% Do you accept this certificate? [yes/no]: yes
Trustpoint CA certificate accepted.
Passaggio 6. Registrazione del router nella CA:
FlexVPN-HUB(config)#crypto pki enroll FLEX-TP-1
%
% Start certificate enrollment ..
% Create a challenge password. You will need to verbally provide this
password to the CA Administrator in order to revoke your certificate.
For security reasons your password will not be saved in the configuration.
Please make a note of it.
Password:
Re-enter password:
% The subject name in the certificate will include: cn=flexvpn-hub.example.com
% The fully-qualified domain name will not be included in the certificate
% Include the router serial number in the subject name? [yes/no]: no
% Include an IP address in the subject name? [no]: no
Request certificate from CA? [yes/no]: yes
% Certificate request sent to Certificate Authority
% The 'show crypto pki certificate verbose FLEX-TP-1' commandwill show the fingerprint.
May 21 16:16:55.922: CRYPTO_PKI: Certificate Request Fingerprint MD5: 80B1FAFD 35346D0F D23F6648 F83F039B
May 21 16:16:55.924: CRYPTO_PKI: Certificate Request Fingerprint SHA1: A8401EDE 35EE4AF8 46C4D619 8D653BFD 079C44F7
Controllare le richieste di certificati in sospeso nella CA e verificare che l'impronta digitale corrisponda a:
FlexVPN-HUB#show crypto pki server ROOT-CA requests
Enrollment Request Database:
Subordinate CA certificate requests:
ReqID State Fingerprint SubjectName
--------------------------------------------------------------
RA certificate requests:
ReqID State Fingerprint SubjectName
--------------------------------------------------------------
Router certificates requests:
ReqID State Fingerprint SubjectName
--------------------------------------------------------------
1 pending 80B1FAFD35346D0FD23F6648F83F039B cn=flexvpn-hub.example.com
Passaggio 7. Concedere il certificato utilizzando il ReqID appropriato:
FlexVPN-HUB#crypto pki server ROOT-CA grant 1
Attendere finché il router non richiede nuovamente il certificato (in base a questa configurazione verrà controllato 10 volte al minuto). Cerca messaggio syslog:
May 21 16:18:56.375: %PKI-6-CERTRET: Certificate received from Certificate Authority
Verificare che il certificato sia installato:
FlexVPN-HUB#show crypto pki certificates FLEX-TP-1
Certificate
Status: Available
Certificate Serial Number (hex): 04
Certificate Usage: General Purpose
Issuer:
cn=ROOT-CA.example.com
Subject:
Name: flexvpn-hub.example.com
cn=flexvpn-hub.example.com
Validity Date:
start date: 16:18:16 UTC May 21 2018
end date: 18:12:07 UTC Mar 26 2021
Associated Trustpoints: FLEX-TP-1
CA Certificate
Status: Available
Certificate Serial Number (hex): 01
Certificate Usage: Signature
Issuer:
cn=ROOT-CA.example.com
Subject:
cn=ROOT-CA.example.com
Validity Date:
start date: 18:12:07 UTC Mar 27 2018
end date: 18:12:07 UTC Mar 26 2021
Associated Trustpoints: FLEX-TP-1 ROOT-CA
Storage: nvram:ROOT-CAexamp#1CA.cer
Opzione 2 - Importare un certificato firmato esternamente
FlexVPN-HUB(config)# crypto pki import FLEX-TP-2 pkcs12 ftp://cisco:cisco@10.48.30.130/ password cisco123
% Importing pkcs12...
Address or name of remote host [10.48.30.130]?
Source filename [FLEX-TP-2]? flexvpn-hub.example.com.p12
Reading file from ftp://cisco@10.48.30.130/flexvpn-hub.example.com.p12!
[OK - 4416/4096 bytes]
% The CA cert is not self-signed.
% Do you also want to create trustpoints for CAs higher in
% the hierarchy? [yes/no]:
May 21 16:55:26.344: %CRYPTO_ENGINE-5-KEY_ADDITION: A key named FLEX-TP-2 has been generated or imported
yes
CRYPTO_PKI: Imported PKCS12 file successfully.
FlexVPN-HUB(config)#
May 21 16:55:34.396: %PKI-6-PKCS12IMPORT_SUCCESS: PKCS #12 Successfully Imported.
FlexVPN-HUB(config)#
Passaggio 1. Configurare il server RADIUS e il CoA:
aaa group server radius FlexVPN-AuthC-Server-Group-1
server-private 10.48.30.127 key Cisco123
server-private 10.48.30.128 key Cisco123
aaa server radius dynamic-author
client 10.48.30.127 server-key Cisco123
client 10.48.30.128 server-key Cisco123
server-key Cisco123
auth-type any
Passaggio 2. Configurare gli elenchi di autenticazione e autorizzazione:
aaa new-model
aaa authentication login FlexVPN-AuthC-List-1 group FlexVPN-AuthC-Server-Group-1
aaa authorization network FlexVPN-AuthZ-List-1 local
aaa accounting update newinfo
aaa accounting network FlexVPN-Accounting-List-1 start-stop group FlexVPN-AuthC-Server-Group-1
Passaggio 3. Creare i criteri di autorizzazione ikev2:
crypto ikev2 authorization policy FlexVPN-Local-Policy-1
pool FlexVPN-Pool-1
dns 10.48.30.104
netmask 255.255.255.0
def-domain example.com
Passaggio 4. Creare il profilo IKEv2:
crypto ikev2 profile FlexVPN-IKEv2-Profile-1
match identity remote key-id example.com
identity local dn
authentication local rsa-sig
authentication remote eap query-identity
pki trustpoint FLEX-TP-2
dpd 60 2 on-demand
aaa authentication eap FlexVPN-AuthC-List-1
aaa authorization group eap list FlexVPN-AuthZ-List-1 FlexVPN-Local-Policy-1
aaa authorization user eap cached
aaa accounting eap FlexVPN-Accounting-List-1
virtual-template 10
Passaggio 5. Creare il set di trasformazioni e il profilo IPSec:
crypto ipsec transform-set FlexVPN-TS-1 esp-aes esp-sha-hmac
mode tunnel
crypto ipsec profile FlexVPN-IPsec-Profile-1
set transform-set FlexVPN-TS-1
set ikev2-profile FlexVPN-IKEv2-Profile-1
Passaggio 6. Creazione dell'interfaccia del modello virtuale:
interface Virtual-Template10 type tunnel
ip unnumbered GigabitEthernet3
tunnel mode ipsec ipv4
tunnel protection ipsec profile FlexVPN-IPsec-Profile-1
Passaggio 7. Creare il pool locale:
ip local pool FlexVPN-Pool-1 10.20.30.100 10.20.30.200
Passaggio 8. Creare un ACL per limitare l'accesso dei client non conformi. Durante lo stato di postura sconosciuto devono essere fornite almeno le autorizzazioni seguenti:
Questo è un esempio di ACL senza server di monitoraggio e aggiornamento, con l'aggiunta dell'opzione di negazione esplicita per la rete 10.0.0.0/24 per ottenere visibilità, l'opzione implicita di "negazione ip any any" esiste alla fine dell'ACL:
ip access-list extended DENY_SERVER
permit udp any any eq domain
permit tcp any host 10.48.30.127 eq 80
permit tcp any host 10.48.30.127 eq 443
permit tcp any host 10.48.30.127 eq 8443
permit tcp any host 10.48.30.127 eq 8905
permit tcp any host 10.48.30.128 eq 80
permit tcp any host 10.48.30.128 eq 443
permit tcp any host 10.48.30.128 eq 8443
permit tcp any host 10.48.30.128 eq 8905
deny ip any 10.0.0.0 0.0.0.255
Passaggio 9. Creare un ACL per consentire l'accesso ai client conformi:
ip access-list extended PERMIT_ALL
permit ip any any
Passaggio 10. Configurazione del tunnel suddiviso (facoltativo)
Per impostazione predefinita, tutto il traffico verrà indirizzato su VPN. Per eseguire il tunnel del traffico solo sulle reti specificate, è possibile specificarle nella sezione dei criteri di autorizzazione ikev2. È possibile aggiungere più istruzioni o utilizzare l'elenco degli accessi standard.
crypto ikev2 authorization policy FlexVPN-Local-Policy-1 route set remote ipv4 10.0.0.0 255.0.0.0
Passaggio 11. Accesso a Internet per client remoti (facoltativo)
Affinché le connessioni in uscita dai client di accesso remoto agli host in Internet siano collegate tramite NAT all'indirizzo IP globale del router, configurare la conversione NAT:
ip access-list extended NAT
permit ip 10.20.30.0 0.0.0.255 any
ip nat inside source list NAT interface GigabitEthernet1 overload extended
interface GigabitEthernet1
ip nat outside
interface Virtual-Template 10
ip nat inside
Configurare il profilo client utilizzando l'Editor profili AnyConnect. I profili di Anyconnect Security Mobile Client su Windows 7 e 10 sono salvati in %ProgramData%\Cisco\Cisco AnyConnect Secure Mobility Client\Profile.
Passaggio 1. Disabilitare la funzionalità di rilevamento dei portali vincolati. Se il server http non è disabilitato sull'hub FlexVPN, la funzione di rilevamento del portale captive di AnyConnect impedirà il completamento della connessione. Il server CA non funzionerà senza il server HTTP.
Passaggio 2. Configurare l'elenco dei server:
Passaggio 3. Salvare il profilo in %ProgramData%\Cisco\Cisco AnyConnect Secure Mobility Client\Profile e riavviare l'applicazione CA.
L'equivalente XML del profilo:
<?xml version="1.0" encoding="UTF-8"?>
<AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/encoding/ AnyConnectProfile.xsd">
<ClientInitialization>
<UseStartBeforeLogon UserControllable="true">false</UseStartBeforeLogon>
<AutomaticCertSelection UserControllable="true">true</AutomaticCertSelection>
<ShowPreConnectMessage>false</ShowPreConnectMessage>
<CertificateStore>All</CertificateStore>
<CertificateStoreMac>All</CertificateStoreMac>
<CertificateStoreOverride>false</CertificateStoreOverride>
<ProxySettings>Native</ProxySettings>
<AllowLocalProxyConnections>false</AllowLocalProxyConnections>
<AuthenticationTimeout>12</AuthenticationTimeout>
<AutoConnectOnStart UserControllable="true">false</AutoConnectOnStart>
<MinimizeOnConnect UserControllable="true">true</MinimizeOnConnect>
<LocalLanAccess UserControllable="true">false</LocalLanAccess>
<DisableCaptivePortalDetection UserControllable="false">true</DisableCaptivePortalDetection>
<ClearSmartcardPin UserControllable="true">false</ClearSmartcardPin>
<IPProtocolSupport>IPv4,IPv6</IPProtocolSupport>
<AutoReconnect UserControllable="false">true
<AutoReconnectBehavior UserControllable="false">ReconnectAfterResume</AutoReconnectBehavior>
</AutoReconnect>
<AutoUpdate UserControllable="false">true</AutoUpdate>
<RSASecurIDIntegration UserControllable="false">Automatic</RSASecurIDIntegration>
<WindowsLogonEnforcement>SingleLocalLogon</WindowsLogonEnforcement>
<WindowsVPNEstablishment>LocalUsersOnly</WindowsVPNEstablishment>
<AutomaticVPNPolicy>false</AutomaticVPNPolicy>
<PPPExclusion UserControllable="false">Automatic
<PPPExclusionServerIP UserControllable="false"></PPPExclusionServerIP>
</PPPExclusion>
<EnableScripting UserControllable="false">false</EnableScripting>
<EnableAutomaticServerSelection UserControllable="true">false
<AutoServerSelectionImprovement>20</AutoServerSelectionImprovement>
<AutoServerSelectionSuspendTime>4</AutoServerSelectionSuspendTime>
</EnableAutomaticServerSelection>
<RetainVpnOnLogoff>false
</RetainVpnOnLogoff>
<AllowManualHostInput>true</AllowManualHostInput>
</ClientInitialization>
<ServerList>
<HostEntry>
<HostName>FLEXVPN</HostName>
<HostAddress>flexvpn-hub.example.com</HostAddress>
<PrimaryProtocol>IPsec
<StandardAuthenticationOnly>true
<AuthMethodDuringIKENegotiation>EAP-MD5</AuthMethodDuringIKENegotiation>
<IKEIdentity>example.com</IKEIdentity>
</StandardAuthenticationOnly>
</PrimaryProtocol>
</HostEntry>
</ServerList>
</AnyConnectProfile>
Nota: La modifica del certificato di amministrazione comporta il riavvio del nodo in cui il certificato è stato modificato.
Passaggio 1. Accedere ad Amministrazione -> Sistema -> Certificati -> Richieste di firma del certificato, quindi fare clic su Genera richieste di firma del certificato (CSR):
Passaggio 2. Nella pagina aperta selezionare il nodo PSN necessario, compilare i campi necessari e aggiungere il nome di dominio completo del nodo, enroll.cisco.com, cpp.example.com e l'indirizzo IP del nodo nei campi SAN e fare clic su Genera:
Nota: Se si seleziona Multiuso in questo passaggio, è possibile utilizzare lo stesso certificato anche per Portal.
Nella finestra visualizzata, fare clic su Esporta per salvare il CSR in formato pem nella workstation locale:
Passaggio 3. Firmare il CSR con un'autorità di certificazione attendibile e ottenere il file di certificato dall'autorità di certificazione, nonché la catena completa di certificati dell'autorità di certificazione (radice e intermedia).
Passaggio 4. Accedere ad Amministrazione -> Sistema -> Certificati -> Certificati attendibili, quindi fare clic su Importa. Nella schermata successiva fare clic su Choose file (Scegli file) e selezionare Root CA certificate file (File certificato CA radice), inserire Nome descrittivo e Descrizione se necessario, selezionare le opzioni Trusted For necessarie e fare clic su Submit (Invia):
Ripetere questo passaggio per tutti i certificati intermedi nella catena, se presenti.
Passaggio 5. Tornare ad Amministrazione -> Sistema -> Certificati -> Richieste di firma del certificato, selezionare CSR necessario e fare clic su Associa certificato:
Passaggio 6. Nella pagina aperta fare clic su Scegli file, selezionare il file del certificato ricevuto dall'autorità di certificazione, immettere Nome descrittivo, se necessario, quindi selezionare Uso: Admin (Sintassi: Il portale può essere selezionato anche qui se il CSR è stato creato con multiuso) e fare clic su Invia:
Passaggio 7. Nel popup di avviso fare clic su Sì per completare l'importazione. Il nodo interessato dalla modifica del certificato di amministrazione verrà riavviato:
Ripetere i passaggi per la modifica del certificato CPP se si decide di utilizzare un certificato separato per il portale. Nel passo 6, selezionare Uso: Portal e fare clic su Submit:
Ripetere i passaggi per tutti i nomi PSN nella distribuzione ISE.
Nota: Con il metodo EAP-MD5, ISE supporta solo gli utenti locali.
Passaggio 1. Accedere ad Amministrazione -> Gestione delle identità -> Identità -> Utenti, quindi fare clic su Aggiungi.
Passaggio 2. Nella pagina aperta immettere nome utente, password e altre informazioni necessarie e fare clic su Invia.
Passaggio 1. Accedere a Centri di lavoro -> Postura -> Dispositivi di rete, quindi fare clic su Aggiungi.
Passaggio 2. Nella pagina aperta immettere Nome dispositivo, indirizzo IP e altre informazioni necessarie, selezionare la casella di controllo "Impostazioni autenticazione RADIUS", immettere il segreto condiviso e fare clic su Invia nella parte inferiore della pagina.
Di seguito viene riportata la procedura per preparare la configurazione di Anyconnect.
Passaggio 1. Download del pacchetto Anyconnect. Il pacchetto Anyconnect non è disponibile per il download diretto da ISE, quindi prima di iniziare, verificare che l'alimentazione sia disponibile sul PC. Questo collegamento può essere utilizzato per il download di CA - http://cisco.com/go/anyconnect. In questo documento viene usato il pacchetto anyconnect-win-4.5.05030-webdeploy-k9.pkg.
Passaggio 2. Per caricare il pacchetto di corrente alternata in ISE, passare a Work Center -> Posture -> Client Provisioning -> Resources e fare clic su Add. Scegliere Risorse agente dal disco locale. Nella nuova finestra selezionare Cisco Provided Packages (Pacchetti forniti da Cisco), fare clic su Choose File (Scegli file), quindi selezionare AC Package (Pacchetto CA) sul PC.
Fare clic su Invia per completare l'importazione. Verificare l'hash del pacchetto e premere Confirm.
Passaggio 3. Il modulo sulla conformità deve essere caricato su ISE. Nella stessa pagina (Centri di lavoro -> Postura -> Provisioning client -> Risorse) fare clic su Aggiungi e scegliere Risorse agente dal sito Cisco. Nell'elenco delle risorse è necessario controllare un modulo di conformità e fare clic su Salva. Per questo documento AnyConnectComplianceModule Viene utilizzato il modulo di conformità di Windows 4.3.50.0.
Passaggio 4. A questo punto è necessario creare il profilo della postura CA. Fare clic su Add (Aggiungi), quindi selezionare NAC agent o Anyconnect posture profile (Profilo di postura Anyconnect).
Passaggio 5. Creare la configurazione CA. Passare a Centri di lavoro -> Postura -> Provisioning client -> Risorse e fare clic su Aggiungi, quindi selezionare Configurazione AnyConnect.
Passaggio 6. Configurare i criteri di provisioning client. Passare a Centri di lavoro -> Postura -> Provisioning client. In caso di configurazione iniziale è possibile inserire valori vuoti nei criteri presentati con i valori predefiniti. Per aggiungere i criteri alla configurazione di postura esistente, passare ai criteri che possono essere riutilizzati e scegliere Duplica sopra o Duplica sotto. Si possono anche creare nuove regole.
Questo è l'esempio del criterio utilizzato nel documento.
Scegliere la configurazione CA nella sezione dei risultati.
Viene utilizzato un semplice controllo della postura. ISE è configurato per verificare l'esistenza del file C:\TEST.txt sul lato del dispositivo terminale. Gli scenari reali possono essere molto più complicati, ma i passaggi di configurazione generali sono gli stessi.
Passaggio 1. Creare una condizione di postura. Le condizioni di postura si trovano in Centri di lavoro -> Postura -> Elementi della politica -> Condizioni. Selezionate il tipo di condizione di postura e fate clic su Aggiungi (Add). Specificare le informazioni necessarie e fare clic su Salva. Di seguito è riportato un esempio di condizione del servizio che verifica se il file C:\TEST.txt esiste.
Passaggio 2. Configurazione dei requisiti di postura. Passare a Centri di lavoro -> Postura -> Elementi criteri -> Requisiti. Questo è un esempio di esistenza del file TEST.txt:
Scegliere la condizione di postura in un nuovo requisito e specificare un'azione di correzione.
Passaggio 3. Configurazione dei criteri di postura. Passare a Centri di lavoro -> Postura -> Criteri di postura. Di seguito sono riportati alcuni esempi di criteri utilizzati per questo documento. Ai criteri è assegnato il requisito di "esistenza file" come obbligatorio e non sono assegnate altre condizioni.
Per la postura senza reindirizzamento, è necessario modificare la configurazione del portale di provisioning client. Passare a Centri di lavoro -> Postura -> Provisioning client -> Portale di provisioning client È possibile utilizzare il portale predefinito o crearne uno personalizzato.
Tali impostazioni devono essere modificate nella configurazione del portale per lo scenario di non reindirizzamento:
È necessario limitare l'accesso iniziale del client quando lo stato di postura non è disponibile. Questo obiettivo può essere raggiunto in diversi modi:
cisco-av-pair = ip:interface-config=ip access-group DENY_SERVER in
Passaggio 1. Configurare il profilo di autorizzazione.
Come al solito per la postura sono richiesti due profili di autorizzazione. Il primo deve contenere qualsiasi tipo di restrizione di accesso alla rete. Questo profilo può essere applicato alle autenticazioni il cui stato di postura è diverso da conforme. Il secondo profilo di autorizzazione può contenere solo l'accesso consentito e può essere applicato per una sessione con stato di postura uguale a conforme.
Per creare un profilo di autorizzazione, passare a Centri di lavoro -> Postura -> Elementi criteri -> Profili di autorizzazione.
Esempio di profilo ad accesso limitato con ID filtro raggio:
Esempio di profilo ad accesso limitato con cisco-av-pair:
Esempio di profilo di accesso illimitato con ID filtro raggio:
Esempio di profilo di accesso illimitato con cisco-av-pair:
Passaggio 2. Configurare i criteri di autorizzazione. In questa fase è necessario creare due criteri di autorizzazione. Uno per soddisfare la richiesta di autenticazione iniziale con stato di postura sconosciuto e l'altro per assegnare l'accesso completo dopo il processo di postura riuscito.
Si tratta di un esempio di criteri di autorizzazione semplici per questo caso:
La configurazione dei criteri di autenticazione non fa parte di questo documento, ma è necessario tenere presente che l'autenticazione deve avere esito positivo prima che l'elaborazione dei criteri di autorizzazione abbia inizio.
La verifica di base del flusso può consistere in tre fasi principali:
Passaggio 1. Verifica della sessione VPN di Assistenza remota sull'HUB FlexVPN:
show crypto session username vpnuser detail
Crypto session current status
Code: C - IKE Configuration mode, D - Dead Peer Detection
K - Keepalives, N - NAT-traversal, T - cTCP encapsulation
X - IKE Extended Authentication, F - IKE Fragmentation
R - IKE Auto Reconnect, U - IKE Dynamic Route Update
Interface: Virtual-Access1
Profile: FlexVPN-IKEv2-Profile-1
Uptime: 00:04:40
Session status: UP-ACTIVE
Peer: 7.7.7.7 port 60644 fvrf: (none) ivrf: (none)
Phase1_id: example.com
Desc: (none)
Session ID: 20
IKEv2 SA: local 5.5.5.5/4500 remote 7.7.7.7/60644 Active
Capabilities:DNX connid:1 lifetime:23:55:20
IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 host 10.20.30.107
Active SAs: 2, origin: crypto map
Inbound: #pkts dec'ed 499 drop 0 life (KB/Sec) 4607933/3320
Outbound: #pkts enc'ed 185 drop 0 life (KB/Sec) 4607945/3320
show crypto ikev2 sa detail
IPv4 Crypto IKEv2 SA
Tunnel-id Local Remote fvrf/ivrf Status
1 5.5.5.5/4500 7.7.7.7/60644 none/none READY
Encr: AES-CBC, keysize: 256, PRF: SHA512, Hash: SHA512, DH Grp:5, Auth sign: RSA, Auth verify: EAP
Life/Active Time: 86400/393 sec
CE id: 1010, Session-id: 8
Status Description: Negotiation done
Local spi: 54EC006180B502D8 Remote spi: C3B92D79A86B0DF8
Local id: cn=flexvpn-hub.example.com
Remote id: example.com
Remote EAP id: vpnuser
Local req msg id: 0 Remote req msg id: 19
Local next msg id: 0 Remote next msg id: 19
Local req queued: 0 Remote req queued: 19
Local window: 5 Remote window: 1
DPD configured for 60 seconds, retry 2
Fragmentation not configured.
Dynamic Route Update: disabled
Extended Authentication configured.
NAT-T is detected outside
Cisco Trust Security SGT is disabled
Assigned host addr: 10.20.30.107
Initiator of SA : No
IPv6 Crypto IKEv2 SA
Passaggio 2. Verifica del flusso di autenticazione (Radius Live Logs):
Poiché per questo esempio è stato utilizzato un router basato su IOS XE come NAD, non viene visualizzata alcuna richiesta di autenticazione successiva per l'utente. Ciò è dovuto al fatto che ISE utilizza il push COA per IOS XE, che evita l'interruzione del servizio VPN. In questo scenario, il certificato di autenticità contiene nuovi parametri di autorizzazione, pertanto non è necessaria la riautenticazione.
Passo 3.Verifica report postura - Passare a Operazioni -> Report -> Report -> Endpoint e utenti -> Valutazione postura per endpoint.
Da qui è possibile aprire un report dettagliato per ogni evento specifico per controllare ad esempio a quale ID sessione appartiene questo report, quali requisiti di postura esatti sono stati selezionati da ISE per l'endpoint e lo stato per ogni requisito.
Le informazioni contenute in questa sezione permettono di risolvere i problemi relativi alla configurazione.
debug crypto ikev2
debug crypto ikev2 packet
debug crypto ikev2 internal
debug crypto ikev2 error
debug aaa authorization
debug aaa authentication
debug aaa accounting
debug aaa coa
debug radius authentication
debug radius accounting
Per la risoluzione dei problemi del processo di postura, i componenti ISE devono essere abilitati nel debug sui nodi ISE in cui può avvenire il processo di postura:
Per la risoluzione dei problemi lato client è possibile utilizzare: