GRE Tunnel Verkehr mit IPSec verschlüsseln

In meinem vorherigen Artikel habe ich grundlegend beschrieben, wie man einen GRE Tunnel konfiguriert und aufbaut.
Um den Datenverkehr über diesen Tunnel zu verschlüsseln, wird das Protokoll IPSec (Internet Protocol Security) verwendet. Die Sicherheitsprotokoll-Suite IPSec verschlüsselt die Daten im Tunnel, um eine gesicherte Kommunikation in potenziell unsicheren Netzwerken (Internet) zu ermöglichen.

Als Vorlage dient die Tunnelkonfiguration aus dem vorherigen Artikel.

Auf Router 1 und Router 3 werden folgende Befehle eingefügt:

crypto isakmp policy 10
authentication pre-share
crypto isakmp key [GEHEIMER_SCHLÜSSEL] address [IP DER AUSGEHENDEN SCHNITTSTELLE]

Die IP Adresse der ausgehenden Schnittstelle ist die IP Adresse des anderen Routers.
In diesem Fall wird bei Router 172.16.3.2 und bei Router 3 172.16.2.1 eingetragen.

crypto ipsec transform-set [TRANS_NAME] esp-3des esp-sha-hmac
mode transport
crypto ipsec profile [PROFIL]
set transform-set [TRANS_NAME]

Der Name des Profils ist frei wählbar, ebenso wie der Tranformset Name (sie müssen nur übereinstimmen)

Dann das Profil auf dem Tunnel Interface aktivieren:

interface Tunnel0
tunnel mode ipsec ipv4
tunnel protection ipsec profile [PROFIL]

Um die IPSec Verschlüsselung zu prüfen, sind folgende Befehle hilfreich:

show crypto isakmp sa
dst                       src                 state conn-id            slot status
172.16.3.2          172.16.2.1     QM_IDLE 1 0           ACTIVE

ping 172.16.1.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 52/80/104 ms

sh crypto ipsec sa
interface: Tunnel0
Crypto map tag: Tunnel0-head-0, local addr 172.16.3.2

protected vrf: (none)
local ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)
remote ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)
current_peer 172.16.2.1 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 15, #pkts encrypt: 15, #pkts digest: 15
#pkts decaps: 15, #pkts decrypt: 15, #pkts verify: 15
#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.: 172.16.3.2, remote crypto endpt.: 172.16.2.1
path mtu 1500, ip mtu 1500
current outbound spi: 0xB0FC5DF2(2969329138)

inbound esp sas:
spi: 0x7087D6CF(1887950543)
transform: esp-3des esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2001, flow_id: SW:1, crypto map: Tunnel0-head-0
sa timing: remaining key lifetime (k/sec): (4404983/3538)
IV size: 8 bytes
replay detection support: Y
Status: ACTIVE

inbound ah sas:

inbound pcp sas:

outbound esp sas:
spi: 0xB0FC5DF2(2969329138)
transform: esp-3des esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2002, flow_id: SW:2, crypto map: Tunnel0-head-0
sa timing: remaining key lifetime (k/sec): (4404983/3529)
IV size: 8 bytes
replay detection support: Y
Status: ACTIVE

outbound ah sas:

outbound pcp sas:

Hinweis: Ich habe hier nur die grundlegenden Konfigurationen für einen Tunnel und dessen Verschlüsselung beschrieben. Bei Cisco gibt es noch sehr viel mehr Einstellungen diesbezüglich. Auch die Einstellungen der Firewall und ACL dürfen nicht vernachlässigt werde. Dazu werde ich in weiteren Artikeln noch Stellung zu nehmen.

3 Kommentare

  • Pichert

    Ja richtig der Traffic ist verschluesselt. Aber dennoch ist das mit

    tunnel mode ipsec ipv4

    KEIN GRE Tunnel mehr. Wenn Du einen show int auf den Tunnel machst siehst du es ja

    Tunnel protocol/transport IPSEC/IP (Tunnel Mode IPSEC und kein GRE9
    Tunnel protection via IPSec (profile “MyProfile”) IPSEc Verschluesselung

    Nur die Verschluesselung ist IPSec.

    Bei einem GRE Tunnel mit IPSec wuerde das so aussehen.
    Tunnel protocol/transport GRE/IP
    Tunnel protection via IPSec (profile “MyProfile”) IPSEc Verschluesselung

    Die Verschluesslung hat mit der Tunnel Art nix zu tun. Ich kann ja auch einen GRE Tunnel machen ohne Verschluesselung.

    Gruss

  • Pichert

    Hi,

    wenn ich mich nicht taeusche ist das hier mit der Config aber kein GRE Tunnel mit IPSec Verschluesselung.

    interface Tunnel0
    tunnel mode ipsec ipv4
    tunnel protection ipsec profile [PROFIL]

    Mit der Config benutzt du das IP SEC Tunnel Protokoll und IPSec Protection.

    Das sieht dann im Tunnel Interface so aus

    Tunnel protocol/transport IPSEC/IP
    Tunnel TTL 255
    Fast tunneling enabled
    Tunnel transmit bandwidth 8000 (kbps)
    Tunnel receive bandwidth 8000 (kbps)
    Tunnel protection via IPSec (profile “MyProfile”)

    Um den GRE Tunnel mit IPSec zu verschluesseln reicht tunnel protection ipsec profile [PROFIL]

    Tunnel protocol/transport GRE/IP
    Key disabled, sequencing disabled
    Checksumming of packets disabled
    Tunnel TTL 255
    Fast tunneling enabled
    Tunnel transmit bandwidth 8000 (kbps)
    Tunnel receive bandwidth 8000 (kbps)
    Tunnel protection via IPSec (profile “MyProfile”)

    Gruss

    • Michael Kruse

      Hi, ich habe mir das aus den Cisco Dokumentationen zusammengesucht. Bei meinem Test hat er den Tunnel Traffic verschlüsselt. (Dieser und der vorherige Artikel). Gruß Michael

Schreibe einen Kommentar

You have to agree to the comment policy.

This Blog will give regular Commentators DoFollow Status. Implemented from IT Blögg