Inhalt

Einleitung

Voraussetzungen

Anforderungen

Verwendete Komponenten

Hintergrundinformationen

Konfigurieren

Netzwerkdiagramm

Konfigurationen

Vorbereiten der Zertifikatsinfrastruktur

Konfiguration von Krypto-IKEv2 und IPSec

Tunnelkonfiguration

Überprüfung

Fehlerbehebung

Einleitung

In diesem Dokument werden Informationen zur Konfiguration von Dynamic Multipoint VPN (DMVPN) Phase 3 mit Zertifikatsauthentifizierung unter Verwendung von IKEv2 beschrieben.

Voraussetzungen

Anforderungen

Cisco empfiehlt, sich mit den folgenden Themen vertraut zu machen:

- Grundkenntnisse von DMVPN

- Grundkenntnisse des EIGRP.

- Grundkenntnisse der Public Key Infrastructure (PKI).

Verwendete Komponenten

Die Informationen in diesem Dokument basieren auf der folgenden Softwareversion:

- Cisco C8000v (VXE) mit Cisco IOS® Version 17.3.8a

Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.

Hintergrundinformationen

Dynamic Multipoint VPN (DMVPN) Phase 3 führt die direkte Verbindung zwischen Spoke und Spoke ein, sodass VPN-Netzwerke effizienter arbeiten können, indem der Hub für die meisten Datenverkehrspfade umgangen wird. Dieses Design minimiert Latenz und optimiert die Ressourcenauslastung. Mithilfe des Next Hop Resolution Protocol (NHRP) können sich Stationen dynamisch identifizieren und direkte Tunnel erstellen. Dadurch werden große und komplexe Netzwerktopologien unterstützt.

Internet Key Exchange Version 2 (IKEv2) stellt den zugrunde liegenden Mechanismus zum Einrichten sicherer Tunnel in dieser Umgebung bereit. Im Vergleich zu früheren Protokollen bietet IKEv2 erweiterte Sicherheitsmaßnahmen, schnellere Neueingaben und verbesserte Unterstützung für Mobilität und mehrere Verbindungen. Durch die Integration mit DMVPN Phase 3 werden Tunneleinrichtung und Schlüsselmanagement sicher und effektiv durchgeführt.

Zur weiteren Verbesserung der Netzwerksicherheit unterstützt IKEv2 die digitale Zertifikatsauthentifizierung. Dieser Ansatz ermöglicht es Geräten, anhand von Zertifikaten Identitäten untereinander zu überprüfen. Dies vereinfacht die Verwaltung und reduziert die Risiken, die mit gemeinsam genutzten Geheimnissen verbunden sind. Zertifikatsbasierte Vertrauensstellung ist besonders in umfangreichen Bereitstellungen hilfreich, in denen die Verwaltung einzelner Schlüssel eine Herausforderung darstellt.

Insgesamt bilden DMVPN Phase 3, IKEv2 und die Zertifikatsauthentifizierung ein robustes VPN-Framework. Diese Lösung erfüllt die Anforderungen moderner Unternehmen, indem sie eine flexible Konnektivität, einen starken Schutz von Daten und optimierte Betriebsabläufe gewährleistet.

Konfigurieren

In diesem Abschnitt finden Sie schrittweise Anleitungen für die Konfiguration von DMVPN Phase 3 mit IKEv2 mithilfe der zertifikatbasierten Authentifizierung. Führen Sie diese Schritte aus, um sichere und skalierbare VPN-Verbindungen zwischen Hub-and-Spoke-Routern zu ermöglichen.

Netzwerkdiagramm

Konfigurationen

Vorbereiten der Zertifikatsinfrastruktur

Stellen Sie sicher, dass alle Geräte (Hubs und Spokes) über die erforderlichen digitalen Zertifikate verfügen. Diese Zertifikate müssen von einer vertrauenswürdigen Zertifizierungsstelle ausgestellt und auf jedem Gerät ordnungsgemäß registriert werden, um eine sichere IKEv2-Zertifikatauthentifizierung zu ermöglichen.

Gehen Sie wie folgt vor, um ein Zertifikat auf Hub-and-Spoke-Routern zu registrieren:

1. Konfigurieren Sie einen Vertrauenspunkt mit den erforderlichen Informationen mithilfe des Befehls crypto pki trustpoint <Vertrauenspunktname>.

Hub(config)#crypto pki trustpoint myCertificate

Hub(ca-trustpoint)# enrollment terminal

Hub(ca-trustpoint)# ip-address 10.10.1.2

Hub(ca-trustpoint)# subject-name cn=Hub, o=cisco

Hub(ca-trustpoint)# revocation-check none

2. Authentifizieren Sie den Vertrauenspunkt mit dem Befehl crypto pki authentication <Vertrauenspunktname>.

Hub(config)#crypto pki authenticate myCertificate

Enter the base 64 encoded CA certificate.

End with a blank line or the word "quit" on a line by itself

Hinweis: Nach der Ausgabe des Befehls crypto pki Authenticate müssen Sie das Zertifikat von der Zertifizierungsstelle (Certificate Authority, CA) einfügen, das zum Signieren der Gerätezertifikate verwendet wird. Dieser Schritt ist wichtig, um die Vertrauenswürdigkeit zwischen dem Gerät und der Zertifizierungsstelle herzustellen, bevor mit der Zertifikatregistrierung auf Hub- und Spoke-Routern fortgefahren wird.

3. Generieren Sie den privaten Schlüssel und die Zertifikatsanforderung (Certificate Signing Request, CSR) mithilfe des Befehls crypto pki enroll <Trustpoint Name>.

Hub(config)#crypto pki enroll myCertificate

% Start certificate enrollment ..

% The subject name in the certificate will include: cn=Hub, o=cisco

% The subject name in the certificate will include: Hub

% Include the router serial number in the subject name? [yes/no]: n

% The IP address in the certificate is 10.10.1.2

Display Certificate Request to terminal? [yes/no]: yes

Certificate Request follows:

MIICsDCCAZgCAQAwSjEOMAwGA1UEChMFY2lzY28xDDAKBgNVBAMTA0hVQjEqMBAG

CSqGSIb3DQEJAhYDSFVCMBYGCSqGSIb3DQEJCBMJMTAuMTAuMS4yMIIBIjANBgkq

hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo/M40+ivsqJhpF0PRUxdCGSUVgLQUhzQ

cwnuMtSbfdn5fMKIj7wO6Qa7Gvx2rjrdoyxH9JgXjTEMzMv6HP9/EuN2o+qKzR/+

CNzMUDJobb0lBNbe0WKL4IAQjbvNTOyA5iuUzHZCgMrCFG3oU7v+a2tMiSZihvdu

+m2JSDNXn5cXyewQbQsEaELAO0yosi2t6BQyzM3FRU23dCwnFVwY1VAADC7CrNh3

o44SifYW5HtWq1tU1cLTY4sjNf6XJQxjmHPudbUp164RDfUSo37Zjvjt7S80OoLU

+XUBrE3aRDlwJ+Ug2DO31ZWzfc+rBZ1BsKWlYFBlLk3mL9RA1nf3eQIDAQABoCEw

HwYJKoZIhvcNAQkOMRIwEDAOBgNVHQ8BAf8EBAMCBaAwDQYJKoZIhvcNAQEFBQAD

ggEBAEKUQURWZ+YeCx9T7kuzIaDwJ53vMqq6rITDJcNF9FJ4IgJ7PsxFOcWXm7MM

03Oi1yq1K/4X7Mb5Iz6CjtdyXVqakgcEPY7W9NoO3Xo8Nxb4pFfe19E02Xuj8fxm

GTqi7UAw8ZslzJ2jrS7bXasVMb5jjr39cqQkrXfNIAwF1Sw6IA3oKfTelq8/iCJu

TEjF0D8Si2PWziuxJVS4Adjg5GxbJpd/tDKrKUuvqD2z4HD3M40oGVvoBWQ0tjhB

4gx1q2D209K0nMCvVZrOfp/PFd6+cYc57E73ZPVSGQpHIiiWCYtuRKdKArN6vRcP

iiugceU2F3Ll4CI7wXMYqCxQOGU=

---End - This line not part of the certificate request---

Redisplay enrollment request? [yes/no]:

Anmerkung: Der bei diesem Vorgang verwendete private Schlüssel ist der vom Router generierte private Standardschlüssel. Die Verwendung benutzerdefinierter privater Schlüssel wird jedoch bei Bedarf ebenfalls unterstützt.

4. Nachdem Sie die CSR erstellt haben, senden Sie sie zur Signatur an die Zertifizierungsstelle (Certificate Authority, CA).

5. Sobald das Zertifikat signiert ist, verwenden Sie den Befehl crypto pki import <Trustpoint Name> certificate, um das signierte Zertifikat zu importieren, das dem erstellten Trustpoint zugeordnet ist.

Hub(config)#crypto pki import myCertificate certificate

% You must authenticate the Certificate Authority before

you can import the router's certificate.

6. Fügen Sie das von der Zertifizierungsstelle signierte Zertifikat im PEM-Format ein.

Konfiguration von Krypto-IKEv2 und IPSec

Die Konfiguration für Krypto IKEv2 und IPSec kann auf den Stationen und im Hub identisch sein. Denn Elemente wie die Vorschläge und die verwendeten Chiffren müssen immer auf allen Geräten übereinstimmen, damit der Tunnel erfolgreich eingerichtet werden kann. Diese Konsistenz gewährleistet Interoperabilität und sichere Kommunikation innerhalb der DMVPN Phase 3-Umgebung.

1. Konfigurieren Sie einen IKEv2-Vorschlag.

crypto ikev2 proposal ikev2

encryption aes-cbc-256

integrity sha256

group 14

2. Konfigurieren Sie ein IKEv2-Profil.

crypto ikev2 profile ikev2Profile

match identity remote address 0.0.0.0

identity local address 10.10.1.2

authentication remote rsa-sig

authentication local rsa-sig

pki trustpoint myCertificate

Anmerkung: Hier wird die PKI-Zertifikatauthentifizierung definiert, und der Vertrauenspunkt wird für die Authentifizierung verwendet.

3. Konfigurieren Sie ein IPSec-Profil und einen Transformationssatz.

crypto ipsec transform-set ipsec esp-aes 256 esp-sha256-hmac

mode tunnel

crypto ipsec profile ipsec

set transform-set ipsec

set ikev2-profile ikev2Profile

Tunnelkonfiguration

In diesem Abschnitt wird die Konfiguration von Tunneln sowohl für den Hub als auch für die Spokes behandelt. Der Schwerpunkt liegt dabei auf Phase 3 der DMVPN-Einrichtung.

1. Konfiguration des Hub-Tunnels

interface Tunnel10

ip address 172.16.1.1 255.255.255.0

no ip redirects

no ip split-horizon eigrp 10

ip nhrp authentication cisco123

ip nhrp network-id 10

ip nhrp redirect

tunnel source GigabitEthernet1

tunnel mode gre multipoint

tunnel protection ipsec profile ipsec

end

2. Konfiguration des Spoke1-Tunnels

interface Tunnel10

ip address 172.16.1.10 255.255.255.0

no ip redirects

ip nhrp authentication cisco123

ip nhrp map 172.16.1.1 10.10.1.2

ip nhrp map multicast 10.10.1.2

ip nhrp network-id 10

ip nhrp nhs 172.16.1.1

tunnel source GigabitEthernet2

tunnel mode gre multipoint

tunnel protection ipsec profile ipsec

end

3. Konfiguration des Spoke2-Tunnels

interface Tunnel10

ip address 172.16.1.11 255.255.255.0

no ip redirects

ip nhrp authentication cisco123

ip nhrp map 172.16.1.1 10.10.1.2

ip nhrp map multicast 10.10.1.2

ip nhrp network-id 10

ip nhrp nhs 172.16.1.1

tunnel source GigabitEthernet3

tunnel mode gre multipoint

tunnel protection ipsec profile ipsec

end

Überprüfung

Verwenden Sie die folgenden Befehle, um sicherzustellen, dass das DMVPN Phase 3-Netzwerk ordnungsgemäß funktioniert:

- show dmvpn interface <Tunnelname>

- show crypto ikev2 sa

- show crypto ipsec sa peer <Peer-IP>

Mit dem Befehl show dmvpn interface <Tunnelname> können Sie die aktiven Sitzungen zwischen dem Hub und den Stationen anzeigen. Aus der Perspektive von Spoke1 kann der Ausgang diese bestehenden Verbindungen widerspiegeln.

SPOKE1#show dmvpn interface tunnel10

Legend: Attrb --> S - Static, D - Dynamic, I - Incomplete

N - NATed, L - Local, X - No Socket

T1 - Route Installed, T2 - Nexthop-override, B - BGP

C - CTS Capable, I2 - Temporary

# Ent --> Number of NHRP entries with same NBMA peer

NHS Status: E --> Expecting Replies, R --> Responding, W --> Waiting

UpDn Time --> Up or Down Time for a Tunnel

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

Interface: Tunnel10, IPv4 NHRP Details

Type:Spoke, NHRP Peers:2,

# Ent Peer NBMA Addr Peer Tunnel Add State UpDn Tm Attrb

----- --------------- --------------- ----- -------- -----

1  10.10.1.2           172.16.1.1    UP      1w6d     S

1  10.10.3.2          172.16.1.11    UP  00:00:04     D

Der Befehl show crypto ikev2 sa zeigt die IKEv2-Tunnel an, die zwischen den Stationen und dem Hub gebildet wurden, und bestätigt erfolgreiche Verhandlungen in Phase 1.

SPOKE1#show crypto ikev2 sa

IPv4 Crypto IKEv2 SA

Tunnel-id Local            Remote             fvrf/ivrf      Status

1       10.10.2.2/500      10.10.3.2/500      none/none      READY

Encr: AES-CBC, keysize: 256, PRF: SHA512, Hash: SHA512, DH Grp:19, Auth sign: RSA, Auth verify: RSA

Life/Active Time: 86400/184 sec

Tunnel-id Local            Remote             fvrf/ivrf      Status

2      10.10.2.2/500       10.10.1.2/500      none/none      READY

Encr: AES-CBC, keysize: 256, PRF: SHA512, Hash: SHA512, DH Grp:19, Auth sign: RSA, Auth verify: RSA

Life/Active Time: 86400/37495 sec

IPv6 Crypto IKEv2 SA

Mit dem Befehl show crypto ipsec sa peer <peer IP> können Sie die zwischen den Stationen und dem Hub eingerichteten IPSec-Tunnel überprüfen und so einen sicheren Datentransport innerhalb des DMVPN-Netzwerks sicherstellen.

SPOKE1#show crypto ipsec sa peer 10.10.3.2

interface: Tunnel10

Crypto map tag: Tunnel10-head-0, local addr 10.10.2.2

protected vrf: (none)

local ident (addr/mask/prot/port): (10.10.2.2/255.255.255.255/47/0)

remote ident (addr/mask/prot/port): (10.10.3.2/255.255.255.255/47/0)

current_peer 10.10.3.2 port 500

PERMIT, flags={origin_is_acl,}

#pkts encaps: 4, #pkts encrypt: 4, #pkts digest: 4

#pkts decaps: 5, #pkts decrypt: 5, #pkts verify: 5

#pkts compressed: 0, #pkts decompressed: 0

#pkts not compressed: 0, #pkts compr. failed: 0

#pkts not decompressed: 0, #pkts decompress failed: 0

#send errors 0, #recv errors 0

local crypto endpt.: 10.10.2.2, remote crypto endpt.: 10.10.3.2

plaintext mtu 1438, path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet2

current outbound spi: 0xF341E02E(4081180718)

PFS (Y/N): N, DH group: none

inbound esp sas:

spi: 0x8ED55E26(2396347942)

transform: esp-256-aes esp-sha256-hmac ,

in use settings ={Tunnel, }

conn id: 2701, flow_id: CSR:701, sibling_flags FFFFFFFF80000048, crypto map: Tunnel10-head-0

sa timing: remaining key lifetime (k/sec): (4607999/3188)

IV size: 16 bytes

replay detection support: Y

Status: ACTIVE(ACTIVE)

inbound ah sas:

inbound pcp sas:

outbound esp sas:

spi: 0xF341E02E(4081180718)

transform: esp-256-aes esp-sha256-hmac ,

in use settings ={Tunnel, }

conn id: 2702, flow_id: CSR:702, sibling_flags FFFFFFFF80000048, crypto map: Tunnel10-head-0

sa timing: remaining key lifetime (k/sec): (4607999/3188)

IV size: 16 bytes

replay detection support: Y

Status: ACTIVE(ACTIVE)

outbound ah sas:

outbound pcp sas:

Fehlerbehebung

Zur Fehlerbehebung können Sie die folgenden Befehle verwenden:

- debug dmvpn condition peer [nbma/tunnelIP]: Ermöglicht bedingtes Debugging für DMVPN-Sitzungen, die für eine NBMA- oder Tunnel-IP-Adresse spezifisch sind, von einem Peer, sodass Probleme im Zusammenhang mit diesem Peer isoliert werden können.

- debug dmvpn all ermöglicht umfassendes Debugging für alle Aspekte von DMVPN, einschließlich NHRP, Krypto-IKE, IPsec, Tunnelschutz und Krypto-Sockets. Es wird empfohlen, diesen Befehl mit einem bedingten Filter zu verwenden, um zu vermeiden, dass der Router mit übermäßig großen Debugging-Informationen überlastet wird.

- show dmvpn: Zeigt den aktuellen DMVPN-Status an, einschließlich Tunnelschnittstellen, NHRP-Zuordnungen und Peer-Informationen.

- show crypto ikev2 sa, Zeigt den Status von IKEv2-Sicherheitszuordnungen, nützlich zur Verifizierung von Phase-1-VPN-Verhandlungen.

- show crypto ipsec sa, Zeigt IPsec-Sicherheitszuordnungen an und zeigt den Tunnelstatus und die Datenverkehrsstatistik für Phase 2 an.