IKEv2: Zentralen ASA-Hub mit mehreren IOS Spokes verbinden

Symptom

Es wird ein bezahlbares VPN-Konzept gesucht, bei dem sich auch Standorte mit dynamischen IPs problemlos einbeziehen lassen.

Problem

Für dieses Szenario würden sich FlexVPN oder DMVPN ideal einsetzen lassen, allerdings sind die Kosten für einen IOS Router mit ordentlich Performance zu hoch. Für mehr als 225 Tunnel und über 85Mbit Durchsatz wäre noch die HSEC Lizenz fällig. Auch das Management der Firewall-Regeln ist mit IOS nicht zu bewältigen, wenn mal mehr wie 200 Regeln umzusetzen sind. VPNs mit dynamischen IPs setzen entweder auf Zertifikate oder PSKs. Der Nachteil von einem PSK ist, dass er für alle Sessions gleich sein muss: DefaultL2LGroup. Zertifikate wiederum sind sehr aufwändig zu verwalten und sehr komplex. Um das Ganze einfach zu lösen verwenden wir IKEv2 mit PSKs und dem Gruppennamen über die isakmp-ID. Somit kann für jede Gruppe ein eigener PSK gewählt werden.

Vorschlag

Eine ASA5515-X ist relativ günstig, kommt mit 255 Tunneln zurecht und schafft im einzelnen Stream auch knapp 1Gbit VPN Durchsatz. Zusätzlich bietet sie sehr gute HA-Funktionalität und auch einen stateful IPSEC Failover. Auf der Clientseite verwenden wir IOS Router der 880er Serie, diese kommen mit allen benötigten Features daher.

Ursache und Lösung

Auf der ASA konfigurieren wir folgendes (nur crypto): Subnetze definieren:

access-list outside_cryptomap extended permit ip object OUR-NET object CLIENT-NET

Proposal festlegen:

crypto ipsec ikev2 ipsec-proposal AES256-SHA1-256
 protocol esp encryption aes-256
 protocol esp integrity sha-256 sha-1

Tunnelgroup:

tunnel-group dynamicvpn1 type ipsec-l2l
tunnel-group dynamicvpn1 ipsec-attributes
 ikev2 remote-authentication pre-shared-key *****
 ikev2 local-authentication pre-shared-key *****

Crypto map:

crypto dynamic-map dynamicvpn1 1 match address outside_cryptomap
crypto dynamic-map dynamicvpn1 1 set pfs group5
crypto dynamic-map dynamicvpn1 1 set ikev2 ipsec-proposal AES256-SHA1-256 AES256 AES192 AES
crypto dynamic-map dynamicvpn1 1 set reverse-route
crypto map outside_map 1 ipsec-isakmp dynamic dynamicvpn1

Crypto map aktivieren:

crypto map outside_map interface outside
crypto ikev2 enable outside

Auf der Clientseite (wieder nur crypto)
Proposals:

crypto ikev2 proposal proposal1
 encryption aes-cbc-256 aes-cbc-192 aes-cbc-128
 integrity sha256 sha1
 group 14 5
crypto ikev2 policy policy1
 proposal proposal1

Key:

crypto ikev2 keyring kyr1
 peer peer1
 address ASA-IP
 pre-shared-key local ******
 pre-shared-key remote ******

Profile:

crypto ikev2 profile profile1
 match identity remote address ASA-IP 255.255.255.255
 identity local key-id dynamicvpn1
 authentication local pre-share
 authentication remote pre-share
 keyring local kyr1

Transform set (Phase2 Proposal):

crypto ipsec transform-set trans esp-aes esp-sha-hmac
 mode tunnel

Crypto map:

crypto map cmap 1 ipsec-isakmp
set peer ASA-IP
set transform-set trans
set ikev2-profile profile1
match address vpnlist

ACL:

ip access-list extended vpnlist
 permit ip OUT-NET 0.0.0.255 REMOTE-NET 0.0.0.255

Auf das Interface binden:

interface Gi0
 crypto map cmap

Jetzt kann man die Verbindung testen …

ping remote-ip source Vlan1


Referenzen

http://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/112075-dynamic-ipsec-asa-router-ccp.html
http://priority-zero.blogspot.de/2013/10/cisco-asa-to-juniper-ssg-ikev2-ipsec.html
http://www.cisco.com/c/en/us/support/docs/ip/internet-key-exchange-ike/115934-technote-ikev2-00.html
http://www.cisco.com/en/US/docs/ios-xml/ios/sec_conn_ikevpn/configuration/15-1mt/Configuring_Internet_Key_Exchange_Version_2.html
https://myitmicroblog.svbtle.com/ikev2-vpn-s2s-ios-and-asa

Kontakt

Wenn Sie Fragen oder Anmerkungen zu diesem Artikel haben, melden Sie sich bitte bei uns: TechCorner@max-it.de.

Tags

IKEv2, Hub, Spoke, VPN, IPSEC, ASA, Cisco, IOS, dynamische IP