Questo documento descrive il processo di migrazione da EzVPN a FlexVPN. FlexVPN è la nuova soluzione VPN unificata offerta da Cisco. FlexVPN sfrutta il protocollo IKEv2 e combina l'accesso remoto, l'accesso da sito a sito, l'hub e lo spoke e le distribuzioni VPN mesh parziali. Con tecnologie legacy come EzVPN, Cisco ti incoraggia vivamente a migrare a FlexVPN per sfruttare le sue funzionalità complete.
Questo documento esamina una distribuzione EzVPN esistente costituita da client hardware EzVPN legacy che terminano i tunnel su un dispositivo headend EzVPN basato su una mappa crittografica legacy. L'obiettivo è migrare da questa configurazione per supportare FlexVPN con questi requisiti:
I client legacy esistenti continueranno a funzionare senza problemi senza alcuna modifica alla configurazione. Ciò consente una migrazione graduale di questi client a FlexVPN nel tempo.
Il dispositivo headend deve supportare contemporaneamente la terminazione di nuovi client FlexVPN.
Per raggiungere questi obiettivi di migrazione, vengono utilizzati due componenti chiave della configurazione IPsec: ovvero IKEv2 e VTI (Virtual Tunnel Interfaces). Questi obiettivi sono illustrati brevemente nel presente documento.
Altri documenti di questa serie
Nessun requisito specifico previsto per questo documento.
Il documento può essere consultato per tutte le versioni software o hardware.
Per ulteriori informazioni sulle convenzioni usate, consultare il documento Cisco sulle convenzioni nei suggerimenti tecnici.
FlexVPN si basa sul protocollo IKEv2, che è il protocollo di gestione delle chiavi di nuova generazione basato sulla RFC 4306, e su una versione migliorata del protocollo IKEv1. FlexVPN non è compatibile con le tecnologie precedenti che supportano solo IKEv1 (ad esempio, EzVPN). Questa è una delle considerazioni principali da tenere in considerazione quando si esegue la migrazione da EzVPN a FlexVPN. Per un'introduzione al protocollo IKEv2 e un confronto con IKEv1, consultare brevemente IKE versione 2.
Virtual Tunnel Interface (VTI) è un nuovo metodo di configurazione utilizzato sia per le configurazioni dei client che dei server VPN. VTI
Sostituzione con mappe crittografiche dinamiche, ora considerata configurazione legacy.
Supporta il tunneling IPsec nativo.
non richiede un mapping statico di una sessione IPsec a un'interfaccia fisica; pertanto, offre la flessibilità di inviare e ricevere traffico crittografato su qualsiasi interfaccia fisica (ad esempio, più percorsi).
Configurazione minima in quanto l'accesso virtuale su richiesta viene clonato dall'interfaccia del modello virtuale.
Il traffico viene criptato/decriptato quando viene inoltrato verso/dall'interfaccia del tunnel e gestito dalla tabella di routing IP (che svolge quindi un ruolo importante nel processo di crittografia).
Le funzionalità possono essere applicate a pacchetti non crittografati sull'interfaccia VTI o a pacchetti crittografati sull'interfaccia fisica.
I due tipi di VTI disponibili sono:
Statica (sVTI): un'interfaccia di tunnel virtuale statica ha un'origine e una destinazione tunnel fissa e viene in genere utilizzata in uno scenario di distribuzione da sito a sito. Di seguito è riportato l'esempio di una configurazione sVTI:
interface Tunnel2 ip address negotiated tunnel source Ethernet0/1 tunnel mode ipsec ipv4 tunnel destination 172.16.0.2 tunnel protection ipsec profile testflex
Dinamico (dVTI): è possibile utilizzare un'interfaccia tunnel virtuale dinamica per terminare i tunnel IPsec dinamici che non hanno una destinazione tunnel fissa. Una volta completata la negoziazione del tunnel, le interfacce di accesso virtuale verranno clonate da un modello virtuale e erediteranno tutte le funzionalità L3 in tale modello virtuale. Di seguito è riportato l'esempio di una configurazione dVTI:
interface Virtual-Template1 type tunnel ip unnumbered Ethernet0/1 tunnel mode ipsec ipv4 tunnel protection ipsec profile testflex
Per ulteriori informazioni su dVTI, consultare i seguenti documenti:
Configurazione di Cisco Easy VPN con IPSec Dynamic Virtual Tunnel Interface (DVTI)
Configurazione del supporto Multi-SA per le interfacce tunnel virtuali dinamiche con IKEv1
Affinché i client EzVPN e FlexVPN possano coesistere, è necessario innanzitutto eseguire la migrazione del server EzVPN dalla configurazione della mappa crittografica legacy a una configurazione dVTI. Nelle sezioni seguenti vengono illustrati in dettaglio i passaggi necessari.
Di seguito è riportata una configurazione tipica di router client EzVPN. In questa configurazione viene utilizzata la modalità Network Extension Plus (NEM+), che crea più coppie di SA per entrambe le interfacce LAN interne, nonché la configurazione della modalità con l'indirizzo IP assegnato al client.
crypto ipsec client ezvpn legacy-client connect manual group Group-One key cisco123 mode network-plus peer 192.168.1.10 username client1 password client1 xauth userid mode local ! interface Ethernet0/0 description EzVPN WAN interface ip address 192.168.2.101 255.255.255.0 crypto ipsec client ezvpn legacy-client ! interface Ethernet1/0 description EzVPN LAN inside interface ip address 172.16.1.1 255.255.255.0 crypto ipsec client ezvpn legacy-client inside
Sul server EzVPN, viene utilizzata una configurazione della mappa crittografica legacy come configurazione di base prima della migrazione.
aaa new-model ! aaa authentication login client-xauth local aaa authorization network ezvpn-author local ! username client1 password 0 client1 ! crypto isakmp policy 10 encr aes authentication pre-share group 2 ! crypto isakmp client configuration group Group-One key cisco123 pool Group-One-Pool acl split-tunnel-acl crypto isakmp profile Group-One-Profile match identity group Group-One client authentication list client-xauth isakmp authorization list ezvpn-author client configuration address respond ! crypto ipsec transform-set aes-sha esp-aes esp-sha-hmac ! crypto dynamic-map client-dynamic-map 1 set transform-set aes-sha reverse-route ! crypto map client-map 1 ipsec-isakmp dynamic client-dynamic-map ! interface Ethernet0/0 description EzVPN server WAN interface ip address 192.168.1.10 255.255.255.0 crypto map client-map ! ip local pool Group-One-Pool 10.1.1.100 10.1.1.200 ! ip access-list extended split-tunnel-acl remark EzVPN split tunnel ACL permit ip 172.16.0.0 0.0.0.255 any
Come descritto nelle sezioni precedenti, FlexVPN usa IKEv2 come protocollo del control plane e non è compatibile con le versioni precedenti di una soluzione EzVPN basata su IKEv1. Di conseguenza, l'idea generale di questa migrazione è quella di configurare il server EzVPN esistente in modo che consenta la coesistenza di EzVPN (IKEv1) e FlexVPN (IKEv2) legacy. Per raggiungere questo obiettivo, è possibile utilizzare questo approccio di migrazione in due passaggi:
Spostare la configurazione EzVPN legacy sull'headend da una configurazione basata su mappa crittografica a dVTI.
Aggiungere la configurazione FlexVPN, anch'essa basata su dVTI.
Modifiche alla configurazione del server
Un server EzVPN configurato con mappa crittografica sull'interfaccia fisica presenta diverse limitazioni in termini di supporto e flessibilità delle funzionalità. Se si dispone di EzVPN, Cisco consiglia di utilizzare dVTI. Come primo passo per eseguire la migrazione a una configurazione EzVPN e FlexVPN coesistente, è necessario modificarla in una configurazione dVTI. In questo modo, IKEv1 e IKEv2 saranno separati tra le diverse interfacce del modello virtuale per supportare entrambi i tipi di client.
Nota: per supportare la modalità di estensione della rete Plus di EzVPN sui client EzVPN, il router headend deve essere in grado di supportare la funzionalità multi SA su dVTI. In questo modo, è possibile proteggere più flussi IP dal tunnel, necessario all'headend per crittografare il traffico sulla rete interna del client EzVPN, nonché l'indirizzo IP assegnato al client tramite la configurazione in modalità IKEv1. Per ulteriori informazioni sul supporto di più SA su dVTI con IKEv1, fare riferimento al supporto di più SA per le interfacce tunnel virtuali dinamiche per IKEv1.
Per implementare la modifica della configurazione sul server, completare i seguenti passaggi:
Passaggio 1 - Rimuovere la mappa crittografica dall'interfaccia fisica in uscita che termina i tunnel del client EzVPN:
interface Ethernet0/0 ip address 192.168.1.10 255.255.255.0 no crypto map client-map
Passaggio 2 - Creare un'interfaccia di modello virtuale da cui le interfacce di accesso virtuale verranno duplicate una volta stabiliti i tunnel:
interface Virtual-Template1 type tunnel ip unnumbered Ethernet1/0 tunnel mode ipsec ipv4 tunnel protection ipsec profile legacy-profile
Passaggio 3 - Associare l'interfaccia del modello virtuale appena creata al profilo isakmp per il gruppo EzVPN configurato:
crypto isakmp profile Group-One-Profile match identity group Group-One client authentication list client-xauth isakmp authorization list ezvpn-author client configuration address initiate client configuration address respond virtual-template 1
Dopo aver apportato le modifiche alla configurazione di cui sopra, verificare che i client EzVPN esistenti continuino a funzionare. Tuttavia, ora i tunnel vengono terminati su un'interfaccia di accesso virtuale creata in modo dinamico. È possibile verificare questa condizione con il comando show crypto session, come mostrato nell'esempio:
PE-EzVPN-Server#show crypto session Crypto session current status Interface: Virtual-Access1 Username: client1 Profile: Group-One-Profile Group: Group-One Assigned address: 10.1.1.101 Session status: UP-ACTIVE Peer: 192.168.2.101 port 500 IKEv1 SA: local 192.168.1.10/500 remote 192.168.2.101/500 Active IPSEC FLOW: permit ip 172.16.0.0/255.255.255.0 host 10.1.1.101 Active SAs: 2, origin: crypto map IPSEC FLOW: permit ip 172.16.0.0/255.255.255.0 172.16.1.0/255.255.255.0 Active SAs: 2, origin: crypto map
In questo esempio viene utilizzato RSA-SIG (ovvero Certificate Authority) sia sul client che sul server FlexVPN. La configurazione in questa sezione presuppone che il server sia già stato autenticato e registrato correttamente con il server CA.
Passaggio 1 - Verificare la configurazione predefinita di IKEv2 Smart.
Con IKEv2 è ora possibile sfruttare la funzionalità Smart Default introdotta nella versione 15.2(1)T. Viene utilizzata per semplificare una configurazione FlexVPN. Di seguito sono riportate alcune configurazioni predefinite:
Criterio di autorizzazione IKEv2 predefinito:
VPN-Server#show crypto ikev2 authorization policy default IKEv2 Authorization Policy : default route set interface route accept any tag : 1 distance : 1
Proposta IKEv2 predefinita:
VPN-Server#show crypto ikev2 proposal default IKEv2 proposal: default Encryption : AES-CBC-256 AES-CBC-192 AES-CBC-128 Integrity : SHA512 SHA384 SHA256 SHA96 MD596 PRF : SHA512 SHA384 SHA256 SHA1 MD5 DH Group : DH_GROUP_1536_MODP/Group 5 DH_GROUP_1024_MODP/Group 2
Criterio IKEv2 predefinito:
VPN-Server#show crypto ikev2 policy default IKEv2 policy : default Match fvrf : any Match address local : any Proposal : default
Profilo IPSec predefinito:
VPN-Server#show crypto ipsec profile default IPSEC profile default Security association lifetime: 4608000 kilobytes/3600 seconds Responder-Only (Y/N): N PFS (Y/N): N Transform sets={ default: { esp-aes esp-sha-hmac } , }
Set di trasformazioni IPSec predefinito:
VPN-Server#show crypto ipsec transform default { esp-aes esp-sha-hmac } will negotiate = { Transport, },
Per ulteriori informazioni sulla funzione Smart Default di IKEv2, fare riferimento a IKEv2 Smart Defaults (solo utenti registrati).
Passaggio 2 - Modificare il criterio di autorizzazione IKEv2 predefinito e aggiungere un profilo IKEv2 predefinito per i client FlexVPN.
Il profilo IKEv2 creato in questa pagina corrisponderà a un ID peer basato sul nome di dominio cisco.com e le interfacce di accesso virtuale create per i client verranno estratte dal modello virtuale 2. I criteri di autorizzazione definiscono inoltre il pool di indirizzi IP utilizzato per l'assegnazione degli indirizzi IP peer e delle route da scambiare tramite la modalità di configurazione IKEv2:
crypto ikev2 authorization policy default pool flexvpn-pool def-domain cisco.com route set interface route set access-list 1 ! crypto ikev2 profile default match identity remote fqdn domain cisco.com identity local fqdn VPN-Server.cisco.com authentication remote pre-share authentication remote rsa-sig authentication local rsa-sig pki trustpoint flex-trustpoint aaa authorization group cert list default default virtual-template 2
Passaggio 3 - Creare l'interfaccia del modello virtuale utilizzata per i client FlexVPN:
interface Virtual-Template2 type tunnel ip unnumbered Ethernet1/0 tunnel protection ipsec profile default
crypto ikev2 authorization policy default route set interface route set access-list 1 ! crypto ikev2 profile default match identity remote fqdn domain cisco.com identity local fqdn Client2.cisco.com authentication remote rsa-sig authentication local rsa-sig pki trustpoint flex-trustpoint aaa authorization group cert list default default ! crypto ipsec profile default set ikev2-profile default ! interface Tunnel0 ip address negotiated tunnel source Ethernet0/0 tunnel destination 192.168.1.10 tunnel protection ipsec profile default
hostname VPN-Server ! ! aaa new-model ! aaa authentication login client-xauth local aaa authorization network default local aaa authorization network ezvpn-author local ! ! no ip domain lookup ip domain name cisco.com ip host ca-server 192.168.2.1 ! crypto pki trustpoint flex-trustpoint enrollment url http://ca-server:80 serial-number ip-address none fingerprint 08CBB1E948A6D9571965B5EE58FBB726 subject-name cn=vpn-server.cisco.com, OU=Flex, O=cisco revocation-check crl rsakeypair flex-key-pair 1024 ! ! crypto pki certificate chain flex-trustpoint certificate 07 certificate ca 01 username client1 password 0 client1 username cisco password 0 cisco ! crypto ikev2 authorization policy default pool flexvpn-pool def-domain cisco.com route set interface route set access-list 1 ! crypto ikev2 profile default match identity remote fqdn domain cisco.com identity local fqdn VPN-Server.cisco.com authentication remote pre-share authentication remote rsa-sig authentication local rsa-sig pki trustpoint flex-trustpoint aaa authorization group cert list default default virtual-template 2 ! crypto isakmp policy 10 encr aes authentication pre-share group 2 ! crypto isakmp client configuration group Group-One key cisco123 pool Group-One-Pool acl split-tunnel-acl save-password crypto isakmp profile Group-One-Profile match identity group Group-One client authentication list client-xauth isakmp authorization list ezvpn-author client configuration address initiate client configuration address respond virtual-template 1 ! crypto ipsec transform-set aes-sha esp-aes esp-sha-hmac ! crypto ipsec profile default set ikev2-profile default ! crypto ipsec profile legacy-profile set transform-set aes-sha ! crypto dynamic-map client-dynamic-map 1 set transform-set aes-sha reverse-route ! crypto map client-map 1 ipsec-isakmp dynamic client-dynamic-map ! interface Ethernet0/0 description WAN ip address 192.168.1.10 255.255.255.0 ! interface Ethernet1/0 description LAN ip address 172.16.0.1 255.255.255.0 ! ! interface Virtual-Template1 type tunnel ip unnumbered Ethernet1/0 tunnel mode ipsec ipv4 tunnel protection ipsec profile legacy-profile ! interface Virtual-Template2 type tunnel ip unnumbered Ethernet1/0 tunnel protection ipsec profile default ! ip local pool Group-One-Pool 10.1.1.100 10.1.1.200 ip local pool flexvpn-pool 10.1.1.201 10.1.1.250 ! ip route 0.0.0.0 0.0.0.0 192.168.1.1 ! ip access-list extended split-tunnel-acl remark EzVPN split tunnel ACL permit ip 172.16.0.0 0.0.0.255 any ! access-list 1 permit 172.16.0.0 0.0.0.255
hostname Client1 ! crypto ipsec client ezvpn legacy-client connect manual group Group-One key cisco123 mode network-extension peer 192.168.1.10 username client1 password client1 xauth userid mode local ! interface Ethernet0/0 description WAN ip address 192.168.2.101 255.255.255.0 crypto ipsec client ezvpn legacy-client ! interface Ethernet1/0 description LAN ip address 172.16.1.1 255.255.255.0 crypto ipsec client ezvpn legacy-client inside ! ip route 0.0.0.0 0.0.0.0 192.168.2.1
hostname Client2 ! aaa new-model ! ! aaa authentication login default local aaa authorization network default local ! ! no ip domain lookup ip domain name cisco.com ip host ca-server 192.168.2.1 ! crypto pki trustpoint flex-trustpoint redundancy enrollment url http://ca-server:80 serial-number ip-address none fingerprint 08CBB1E948A6D9571965B5EE58FBB726 subject-name cn=Client2.cisco.com, OU=Flex, O=cisco revocation-check crl rsakeypair flex-key-pair 1024 ! ! crypto pki certificate chain flex-trustpoint certificate 06 certificate ca 01 ! ! crypto ikev2 authorization policy default route set interface route set access-list 1 ! crypto ikev2 profile default match identity remote fqdn domain cisco.com identity local fqdn Client2.cisco.com authentication remote rsa-sig authentication local rsa-sig pki trustpoint flex-trustpoint aaa authorization group cert list default default ! crypto ipsec profile default set ikev2-profile default ! interface Tunnel0 ip address negotiated tunnel source Ethernet0/0 tunnel destination 192.168.1.10 tunnel protection ipsec profile default ! interface Ethernet0/0 description WAN ip address 192.168.2.102 255.255.255.0 ! interface Ethernet1/0 description LAN ip address 172.16.2.1 255.255.255.0 ! ip route 0.0.0.0 0.0.0.0 192.168.2.1 ! access-list 1 permit 172.16.2.0 0.0.0.255
Di seguito sono elencati alcuni comandi utilizzati per verificare le operazioni EzVPN/FlexVPN su un router:
show crypto session show crypto session detail show crypto isakmp sa show crypto ikev2 sa show crypto ipsec sa detail show crypto ipsec client ez (for legacy clients) show crypto socket show crypto map
Revisione | Data di pubblicazione | Commenti |
---|---|---|
1.0 |
25-Jan-2013 |
Versione iniziale |