Linux VPN: IPsec, OpenVPN und Wireguard
- Kursnotizen: http://notes.defaultroutes.de
- Linuxhotel Lab-Server (Bewertung, Linuxhotel Portal Passwort ändern etc): http://lab.linuxhotel.de
1 Tag 1
1.1 Einführung
1.2 Virtuelle Maschinen testen
- DNS-Namen: vpnNNN.dane.onl
- Zugang: via Web-UI (Webbrowser) oder SSH (Port 22)
- Name:
user
- Passwort:
ipsec-rocks
Name | VM1 (Frankfurt) | VM2 (Amsterdam) |
---|---|---|
Luca | vpn001 | vpn101 |
Daniel | vpn002 | vpn102 |
Jens | vpn003 | vpn103 |
Andreas | vpn004 | vpn104 |
Jonas | vpn005 | vpn105 |
Jan | vpn006 | vpn106 |
Achref | vpn007 | vpn107 |
Hendrik | vpn008 | vpn108 |
Gerrit | vpn009 | vpn109 |
Nick | vpn010 | vpn110 |
Backup | vpn011 | vpn111 |
Carsten | vpn012 | vpn112 |
1.2.1 Aufgabe
- Erstelle eine Shell-Verbindung zu beiden VMs (Web oder SSH)
- Prüfe die Netzwerkkonfiguration mit
ip address show
- Prüfe die Routing-Konfiguration mit
ip route show
- Teste die Netzerkverbindung zwischen beidem VMs mittels
ping
1.3 Grundlagen Kryptographie
1.4 IKE and IPSec
1.4.1 IPSec & IKE Begriffe
- ISAKMP = Internet Security Association and Key Management Protocol
- IKE oder IKEv1 = Internet Key Exchange Version 1 (eine Implementation von ISAKMP)
- IKEv2 = Internet Key Exchange Version 2 (eine moderne Implementation von ISAKMP)
- AH = Authentication Header = ein Modus von IPsec, sichert Integrität und Authentisierung der Daten
- ESP = Encapsulating Security Payload = ein Modus von IPsec, sichert Integrität, Authentisierung und Vertraulichkeit der Daten
- Transport Mode = IPSec Modus, bei welchem der IP-Header gesichert, aber nicht geändert wird. Funktioniert nicht mit NAT
- Tunnel Mode = IPsec Modus, bei welchem das IP-Paket in ein neues IP-Paket eingepackt wird. Funktioniert mit NAT, benötigt mehr Bandbreite und kann Problemen mit MTU und Fragmentierung führen
- Security Association (SA) = Paket aus Verschlüsselungs-Algorithmen und -Parametern für eine Richtung einer IPsec Verbindung
- Security Policy Database (SPD) = Datenbank innerhalb der IPsec Implementierung, welche die Regeln für die Anwendung von IPsec auf IP-Pakete definiert (welche Verbindungen sollen durch IPsec abgesichert werden)
- Securty Association Database (SADB oder SAD) = Datenbank innerhalb der IPsec Implementierung mit Informationen zu den Verschlüsselungs-Algorithmen und -Parametern für jede Verbindung)
1.4.2 IPsec & IKE Geschichte
- Arbeit an IPsec startete in 1992, zusammen mit der Arbeit an IPv6
- IPv6-Implementierungen sollen auch eine IPsec Implementierung beinhalten
- IPsec für IPv4 wurde nachträglich entwickelt, als klar wurde das die IPv6 Umstellung längere Zeit benötigen wird
- Erste Implementationen für BSD-Unix wurden vom "Naval Research Labatory" (NRL) erstellt
- Dies war vor NAT (1994) und "privaten" IP-Adressen (RFC 1918, 1996)!
- Dies war einer der Gründe warum die Einrichtung der frühen Versionen von IPsec unter IPv4 recht komplex und schwierig waren
- Probleme mit IPsec und NAT hat zu einem schlechten Ruf von IPsec geführt
- IPsec mit IKEv1 wurde 1998 zum Internet Standard (RFC)
- Das Problem bei IPsec war der Schlüssenaustausch (IKEv1)
- IKEv1 war nicht mit Beachtung von NAT in Netzwerken entwickelt
worden und kommunizierte IP-Adressen
- Diese IP-Adressen wurden auf dem Weg durch NAT geändert und passten nicht mehr zu den IKE-Daten = Pakete wurden verworfen
- IKEv1 war nicht mit Beachtung von NAT in Netzwerken entwickelt
worden und kommunizierte IP-Adressen
- Nach der Veröffentlichung von IPsec mit IKEv1 wurde in der IETF an
einer Verbesserung von IPsec gearbeitet
- Einfache Konfiguration
- Bessere Fehlersuche
- Kompatibel mit IPv4 NAT-Netzwerken
- IKEv2 für IPsec wurde 2005 als Internet-Standard veröffentlicht, IKEv1 wurde als veraltet markiert
- Mit RFC9395 (April 2023) wurde IKEv1 als deprecated markiert,
soll nicht mehr implementiert und benutzt werden
- In LibreSwan wurde IKEv1 in den neueren Versionen entfernt
1.4.3 IPSec & IKE Verbindungsaufbau
- Ein IPsec Verbindungsaufbau geschied in Schritten. In IKEv1 wurden
diese Schritte Phase 1 (IKEv2 = Parent SA) und Phase 2 (IKEv2 =
Child SA) genannt. Unter IKEv2 gibt es diese Phasen so nicht mehr
(in den Standard-Dokumenten, RFC), die Begriffe werden jedoch
weiterhin von Netzwerkadministratoren auch für IKEv2 IPsec
verwendet (auch wenn das nicht mehr korrekt ist).
- Aushandeln der Kontrollverbindung (Phase 1 bei IKEv1): die IPsec
Kommunikationspartner verständigen sich auf einen verschlüsselten
Kanal (Algorithmen und Parameter). Ergebnisse ist die SA
(Security Association) oder auch Parent-SA.
- Über diese (verschlüsselte und authentisierte) Kontrollverbindung werden nun die Algorithmen und Parameter für die Datenverbindung ausgehandelt (Phase 2 bei IKEv1). Dies ist die Child-SA.
- Die Daten werden der Verbindung werden mittels der Konfiguration der Child-SA verschlüsselt und abgesichert
- Die Parameter der Child-SA können sich von den Parametern der Parent-SA unterscheiden(!)
- Die Parameter von Parent-SA und Child-SA können sich für jede Kommunikationsrichtung unterscheiden(!)
- Aushandeln der Kontrollverbindung (Phase 1 bei IKEv1): die IPsec
Kommunikationspartner verständigen sich auf einen verschlüsselten
Kanal (Algorithmen und Parameter). Ergebnisse ist die SA
(Security Association) oder auch Parent-SA.
- Die IKE-Kommunikation benutzt die Ports 500 (default, ohne NAT)
und 4500 (wenn NAT zwischen den IPsec-Kommunikationspartnern
entdeckt wurde)
- Die IKE-Kommunikation benutzt UDP als Transport-Protokoll
- RFC 9329 (TCP Encapsulation of Internet Key Exchange and IPsec Pakets) erlaubt das "tunneln" von IKE und IPsec-Paketen über TCP. Dies ist notwendig bei Firewall-Middelboxen welche jegliche UDP-Kommunikation bklockieren (z.B. in Hotels oder öffentlichen WLAN-Netzwerken)
1.4.4 Authentication Header (AH)
- IPsec kennt zwei Arten der Absicherung von IP-Paketen: Authentication Header (AH) und Encapsulating Security Payload (ESP)
- Bei AH wird ein weiterer Header (IP-Protokoll 51) in das IP-Paket zwischen dem IP-Header und den Daten (Payload) bzw. dem Header des Transport-Protokols (UDP oder TCP) des IP-Paketes eingefügt
- Dieser Header enthält kryptografische Prüfsummen (Hashes) über Teile des IP-Headers und den Daten
- AH bietet Integrität und Autentifizierung, jedoch keine Vertraulichkeit (Verschlüsselung)
- AH kann sowohl im Transport- als auch im Tunnel-Modus von IPsec eingesetzt werden
- AH wird für Punkt-zu-Punkt Verbindungen zwischen zwei Rechnern mit öffentlichen IP-Adressen (meist IPv6) benutzt
- Vorteile des AH
- AH erzeugt weniger Overhead verglichen mit ESP (weniger CPU-Last, kleinere Pakete)
- Einfachere Fehlersuche bei Netzwerkfehlern, wenn die Daten nicht vertraulich sein müssen, da die Daten im Klartext sichtbar sind
- Nachteile des AH
- AH funktioniert nicht mit NAT, da die Quell- und Zieladresse des Pakets durch den AH geschützt sind
- Keine Vertraulichkeit möglich
- Alternativen zu AH
- ESP kann mit einem "null" Verschlüsselungsalgorithmus benutzt werden, damit ist ESP funktionell vergleichbar mit AH (Schutz der Integrität und Authentisierung der Daten)
1.4.5 Encapsulating Security Payload (ESP)
- ESP ist eine Alternative zu AH und ist der heute meist genutzte Modus von IPsec
- Bei ESP werden die zu sichernde Daten (Payload) vollständig und unverändert in ein neues ESP-Transport-Protokoll mit einem ESP-Header eingeschlossen (IP-Protokoll 50 = ESP)
- ESP kann sowohl im Transport-Mode als auch im Tunnel-Mode eingesetzt werden
- ESP wir oft für VPNs zwischen zwei Netzwerken benutzt, bei denen jeglicher Verkehr zwischen den Netzwerken durch IPsec abgesichert sein soll
- In einigen Fällen kann ESP Vorteile beim Durchsatz von IP-Paketen bringen, wenn ESP durch Hardware-Funktionen unterstützt wird (IPsec offloading). Dies setzt Netzwerkhardware mit spezieller IPsec Offloading-Funktion vorraus
1.4.6 Transport Mode
- Sowohl AH als auch ESP können wahlweise im Transport-Modus als auch im Tunnel-Modus eingesetzt werden
- Beim Transport-Modus werden in das bestehende IP-Paket AH- oder
ESP-Header eingefügt. Der IP-Header bleibt original bestehen, bei
AH wird der IP-Header geschützt, bei ESP werden nur die Daten
geschützt
- Der Transport-Modus wird häufig benutzt um die Kommunikation zwischen zwei einzelne Rechner abzusichern. Bauen diese zwei Rechner eine ungesicherte Tunnelverbindung zwischen zwei Netzwerken (z.B. GRE- oder IPIP-Tunnel), so kann diese bestehende Verbindung durch IPsec-Transport-Mode abgesichert werden
1.4.7 Tunnel Mode
- Beim Tunnel-Modus wird das original IP-Paket in ein neues
(IPsec-gesichertes) IP-Paket eingebettet. Die IPsec Sicherheit (AH
oder ESP) sichert dabei das gesamte original IP-Paket.
- Auf der Empfängerseite wird das Paket wieder ausgepackt und unverändert an den Netzwerk-Stack des Empfängers übergeben
- Tunnel-Mode eignet sich gut um mehrere Netzwerke mittels IPsec-Gateway-Router miteinerander zu verbinden
1.4.8 Opportunistische Verschlüsselung mittels IPsec
- Einer der Designziele von IPsec war die vollständige Verschlüsselung von IP-Netzwerken im Internet
- Traditionelle IPsec Verbindungen werden manuell erstellt und konfiguriert
- Bei opportunistic encryption (OE-IPsec) wird die IPsec-Verbindung zwischen zwei Kommunikationspartnern automatisch ausgehandelt
- Beim ersten IP-Paket wird getestet, ob die Gegenstelle IPsec unterstützt
- Authentisierung geschied mittels (DNSSEC gesichertem) DNS (Prüfung von vorwärts – A- und AAAA-Records – und rückwärts (PTR-Records) DNS-Auflösung
- Im IPSECKEY-Record können pro Host IPsec-Parameter im DNS abgelegt
werden (RFC 4025)
- Der IPSECKEY-Record beinhaltet den Gateway-Typ (IPv4 oder IPv6), die Gateway-Adresse, den Schlüsselalgorithmus des öffentlichen Schlüssel des Hosts und den öffentlichen Schlüssel
- IPSECKEY-Record sollten per DNSSEC abgesichert sein, Empfänger von IPSECKEY-Records sollten diese per DNSSEC prüfen
1.4.9 IPsec unter Linux
- Linux IPSec Implementierungen
- FreeS/WAN (1996 - 2003): originale IPsec Implementation, IKEv1, IPsec als Patch fur den Linux-Kernel
- OpenSwan (2003 - 2011): Freundlicher Fork von FreeS/WAN, IKEv2, IPsec im Linux-Kernel, Beendet wegen Namensdisput
- StrongSwan (2003 - jetzt): Fork von FreeS/WAN, IKEv1 und IKEv2, Unterstützt von SecuNet
- LibreSWAN (2011 - jetzt): Fork von OpenSWAN, gleiches Entwickler-Team, neuer Name wegen Namensdisput, unterstützt von Red Hat
- DPDK - Network-Stack in Userspace: Unterstützt von Intel und der Linux Foundation
- LibreSwan und StrongSwan sind Teil von Red Hat EL (Alma Linux, Rocky Linux etc)
- IKE-Daemon und Linux-Kernel
- IKEv2 wird unter Linux als User-Space-Prozess implementiert. Dies
ist der
pluto
Dienst (LibreSwan) oderpluto
undcharon
(StrongSwan)- Dies ist die IPsec Kontrollverbindung (control channel, control plane)
- Die Parameter der ausgehandelten SA werden von diesen Diensten in
die
SAD
undSPD
des Linux-Kernel geschrieben
- Die Verschlüsselung und Authentisierung der IP-Pakete der Netzerkverbindung mittels IPsec geschied ausschliesslich im Linux-Kernel ohne Interaktion mit den User-Space-Programmen
- IKEv2 wird unter Linux als User-Space-Prozess implementiert. Dies
ist der
1.4.10 LibreSwan installieren
dnf install libreswan
1.4.11 Hands-on: IPSec mit PSK
- Datei
/etc/ipsec.d/psk-tunnel.conf
erstellen (emacs, vim, nano)
conn host-host keyexchange=ikev2 authby=secret left=<ip-vm-1> right=<ip-vm-2> auto=add
- IPSec Konfiguration neu laden
ipsec restart
- Status des Dienstes prüfen
systemctl status ipsec
- Logdateien des IPsec Dienstes (LibreSwan) anschauen
journalctl -u ipsec
- Logdateien im "follow"-Modus beobachten
journalctl -fu ipsec
- Benannte IPsec Verbindung starten
ipsec up host-host
- IPsec Status anzeigen
ipsec status
- Linux-Kernel IPsec Policy Datenbank anzeigen
ip xfrm pol
- Linux-Kernel IPsec Verbindungen anzeigen /ACHTUNG: dieser Befehl zeigt die IPsec Schlüssel im Klartext. Mittels der Daten dieses Befehls kann eine IPsec Kommunikation entschlüsselt werden! (mehr dazu später)
ip xfrm state
1.4.12 Probleme lösen
- Firewall? Finde auf der Webseite https://libreswan.org die Information, wie bei Red Hat Systemen IPsec in der Firewall erlaubt wird
1.4.13 Lösung:
Datei /etc/ipsec.d/psk-tunnel.secrets
:
<ip-vm1> <ip-vm2> : PSK "mein-geheimer-schluessel"
1.4.14 Hands-on: IPSec mit RSA-Schlüssel
- RSA-Schlüssel erstellen, CKAID notieren
# ipsec newhostkey --nssdir /var/lib/ipsec/nss Generated RSA key pair with CKAID 3bdd3ee727c90bac3218dcaf0cdf680a0a405664 was stored in the NSS database The public key can be displayed using: ipsec showhostkey --left --ckaid 3bdd3ee727c90bac3218dcaf0cdf680a0a405664
- NSS-Schlüssel anzeigen
ipsec showhostkey --list
- RSA-Schlüssel ausgeben
# ipsec showhostkey --left --ckaid 3bdd3ee727c90bac3218dcaf0cdf680a0a405664 # rsakey AwEAAc73d leftrsasigkey=0sAwEAAc73dvkhQKUgEKG1W2bg8BrSgTXDWG47ST71j58NOs7s1gRBydtRLCrdEkO8GeTTjCSPmq6nW+CWCPP10zxDbsj/rHfYbuGwkBLdjEvseO96W2C0w2TKe0KhAuJCVrioGUGZ3Fdvib3gjrlryAFjSMipLV5ykZDR9ZFi4EBMIH4N2bfuAIgnNe84iIfqFt5RnY486uTy78LU2qlSxBVHaMmlSRb50WJuCB39J7auKNdQepmmbJZusmffYtsAoQul2ysF3sxW7nX9I3Gmmz5+PSrLefPvj9q0yv3n9DLCZPserQK+Fnxo/R7MbMYSVIOgAFyZYd/9jCSy2+oSJkoseW5u+22KKnCYRkSbw5BD/WAqa4+KK3CNcfPSkfFAEtbD762fi+FW8BRMqHrhZln+gTIOr/IZYCOiR2w+8Qk26ZhTJAn5nT8lTBsES9vUbvKqj5CUIOGj4emx2j6RAZAZm74zYfIcK0puweNt5wMhxGbez3yJbJRxoU6nqko/aB5Cz5bnOfAE2pd9J5L5XhOH7PS/oNFFHILIt6FltxaAyHDFyEjlb63ZhxR7wgkFrDjfYCnMGss=
- RSA-Schlüssel Authentisierung (ipsec Konfiguration):
[...] authby=rsasig
- Aufgabe:
- Deaktiviere die PSK-Tunnel-Konfiguration (Datei von
psk-tunnel.conf
inpsk-tunnel.disabled
umbenennen) - Erstelle eine IPsec Konfiguration mit
RSA-Schlüssel-Authentisierung in der Datei
/etc/ipsec.d/rsakey-tunnel.conf
- Erstelle neue Schlüssel auf beiden Seiten der Verbindung (VM1 und VM2)
- Trage die Schlüssel in die Konfigurationsdatei ein
- Teste die Konfiguration, überprüfe mit
tcpdump
, das die Kommunikation (z.B. ICMP-Echo aka "ping") verschlüsselt gesendet werden
- Deaktiviere die PSK-Tunnel-Konfiguration (Datei von
1.4.15 Hands-on: Transport Mode
- Teste die IPsec Konfiguration im Tunnel-Mode mit ICMP. Notiere die Grßsse der ESP-Pakete
- Konfiguriere die aktuelle IPsec-Konfiguration für den Transport-Mode (Standard ist Tunnel-Mode)
[...] type=transport
- Vergleiche die Grössen der Pakete bei einem ICMP-Echo Reqest/Reply ("ping") zwischen Tunnel- (Default) und Transport-Mode.
1.4.16 Hands-on: IPSec mit Zertifikat
- Root-CA erzeugen
certutil -S -k rsa -n "MyLocalCA" -s "CN=Lokale CA" -v 12 -t "CT,C,C" -x -d sql:/var/lib/ipsec/nss
- Maschinen-Zertifikat erzeugen
certutil -S -k rsa -c "MyLocalCA" -n "vm1" -s "CN=vm1 Common Name" -v 12 -t "P,," -d sql:/var/lib/ipsec/nss
- Zertifikate in der NSS-Datenbank anzeigen
certutil -L -d sql:/var/lib/ipsec/nss
- Einzelnes Zertifikat anzeigen
certutil -L -n vm1 -d sql:/var/lib/ipsec/nss | less
- Bei Fehlern kann ein Zertifikat aus der Datenbank gelöscht werden
certutil -D -n <nickname> -d sql:/var/lib/ipsec/nss
- Das Root-Zertifikat einer CA aus der Datenbank exportieren
certutil -L -n "MyLocalCA" -d sql:/var/lib/ipsec/nss -a > mylocal.crt
- Das Root-Zertifikat (öffentlicher Schlüsse) aus einer Datei in die NSS-Datenbank importieren
certutil -A -i mylocalca.crt -n "MyLocalCA" -t "CT,," -d sql:/var/lib/ipsec/nss
- Ein Benutzer/Maschinen-Zertifikat exportieren (nur öffentlicher Schlüssel)
certutil -L -n "vm1" -d sql:/var/lib/ipsec/nss -a > vm1.crt
- Ein Benutzer/Maschinen-Zertifikat importieren (nur öffentlicher Schlüssel)
certutil -A -i vm1.crt -n "vm1" -t "P,," -d sql:/var/lib/ipsec/nss
- Ein Benutzer/Maschinen-Zertifikat exportieren (öffentlicher UND privater Schlüssel)
pk12util -o vm2.p12 -n vm2 -d sql:/var/lib/ipsec/nss
- P12 (binär) in PEM (Text) umwandeln
openssl pkcs12 -in vm2.p12 -out vm2.pem -clcerts -nodes -legacy
- PEM (Text) und P12 (binär) umwandeln
openssl pkcs12 -export -in vm2.pem -out vm2.p12
- Ein Benutzer/Maschinen-Zertifikat importieren (öffentlicher und privater Schlüssel)
ipsec import vm2.p12
- Nickname eines Zertifikats in der NSS-Datenbank umbenennen
certutil -n "vm2 Common Name" --rename --new-n "vm2" -d sql:/var/lib/ipsec/nss
- Die Vertrauens-Attribute eines Zertifikats anpassen
certutil -M -n vm2 -t "P,," -d sql:/var/lib/ipsec/nss
- Aufgabe:
- Erstelle eine CA auf VM1
- Erstelle und signiere Zertifikate für "vm1" und "vm2" auf VM1
- Exportiere das Zertifikat (öffentlicher Schlüssel plus Signatur von CA) von "vm2" in eine PEM-Datei
- Exportiere das Root-CA-Zertifikat (öffentlicher Schlüssel) in eine PEM-Datei, übertrage dieses auf VM2 und importiere es dort
- Übertrage das Zertifikat (öffentlicher Schlüssel und Signatur der CA) und den privaten Schlüssel von "vm2" auf VM2 (die PEM-Dateien sind ASCII-Dateien und können über die Zwischenablage übertragen werden)
- Übertrage das Zertifikat "vm1" (öffentlicher Schlüssel plus Signatur der CA) auf VM2
- Benötigt werden:
- VM1: Privater Schlüssel und Zertifikat von VM1, Zertifikat vom VM2, Zertifikat vom CA
- VM2: Privater Schlüssel und Zertifikat von VM2, Zertifikat vom VM1, Zertifikat vom CA
- Beispiel-Konfiguration
conn cert-cert keyexchange=ikev2 authby=rsa-sha2 left=<ip-vm-1> leftid=%fromcert leftrsasigkey=%cert leftcert=vm1 leftsendcert=always right=<ip-vm-2> rightid=%fromcert rightrsasigkey=%cert rightcert=vm2 rightsendcert=always auto=add
- Ausgabe Zert-DB auf VM1:
certutil -L -d sql:/var/lib/ipsec/nss Certificate Nickname Trust Attributes SSL,S/MIME,JAR/XPI MyLocalCA CTu,Cu,Cu vm1 Pu,u,u vm2 Pu,u,u
- Ausgabe Zert-DB auf VM2:
certutil -L -d sql:/var/lib/ipsec/nss Certificate Nickname Trust Attributes SSL,S/MIME,JAR/XPI MyLocalCA CT,, vm2 Pu,u,u vm1 P,,
1.4.17 Hands-on: Route-based VPN using VTI
- LibreSwan unterstützt IPsec mit Virtual Tunnel Interface (VTI)
- VTI erzeugt eine virtuelle Netzwerkschnittstelle im Linux-System
- Alle Netzwerkpakete, welche über diese Schnittstelle geroutet werden, sind per IPsec abgesichert
- Die Sicherheit des VPN-Tunnel hängt am Routing und der Firewall-Konfiguration – Pakete welche nicht über das VTI geroutet werden, werden nicht IPsec gesichert
- IPsec mit VTI vereinfacht die Konfiguration und Fehlersuche im IPsec
- Am VTI-Interface sind die unverschlüsselten Daten zu sehen
- Am physischen Netzwerkinterface sind die verschlüsselten IPsec-Pakete zu sehen
- Beispiel einer Konfiguration mit Zertifikaten und VTI-Schnittstelle
conn vti-vti keyexchange=ikev2 authby=rsa-sha2 type=tunnel left=vm1 leftsubnet=0.0.0.0/0 leftid=%fromcert leftrsasigkey=%cert leftcert=vm1 leftsendcert=always right=vm2 rightsubnet=0.0.0.0/0 rightid=%fromcert rightrsasigkey=%cert rightcert=vm2 rightsendcert=always mark=5/0xffffffff vti-interface=vti01 vti-routing=no auto=add
- Aufgabe: IPsec mit VTI
- Erstelle eine neue IPsec Konfiguration mit VTI
- Starte den IPsec Tunnel
- Konfiguriere je eine IP-Adresse aus den privaten Adressräumen
(RFC 1918) auf die VTI-Schnittstelle (z.B.
ip address add 10.0.0.1/8 dev vti01
) - Teste die Verbindung über die privaten IP-Adressen mittels
ping
- Lasse dir die Pakete auf den VTI-Schnittstellen und den physischen
Schnittstellen mittels
tcpdump
anzeigen
2 Tag 2
3 Ressourcen
- Buch: Christof Paar, Jan Pelzl – Understanding Cryptography ISBN: 3642446493
- Buch: Klaus Schmeh – Kryptografie ISBN: 3864900158
- Buch: Niels Ferguson, Bruce Schneier, Tadayoshi Kohno – Cryptography Engineering ISBN: 0470474246
- Buch: Malcolm Harkins – Managing Risk and Information Security ISBN: 1430251131
- Buch: Ross Anderson – Security Engineering (PDF: http://www.cl.cam.ac.uk/~rja14/book.html)
- Buch: Thinking Security: Stopping Next Year's Hackers ISBN-10: 0134277546/ISBN-13: 978-0134277547
- Buch: Gerhard Lienemann: TCP/IP - Grundlagen und Praxis - Protokolle, Routing, Dienste, Sicherheit. 3. Auflage (Gute Übersicht der Basis-TCP/IP-Protokolle, Kapitel zu IT-Sicherheit leider veraltet, nur Diskussion von IKEv1 im IPsec Kapitel) https://www.bookzilla.de/shop/article/50164751/gerhard_lienemann_tcp_ip_grundlagen_und_praxis.html
- Buch: Kevin Fall, W. Stevens: TCP/IP Illustrated - The Protocols, Volume 1. 2nd edition. https://www.bookzilla.de/shop/article/14768831/kevin_fall_w_stevens_tcp_ip_illustrated.html
- Buch: Fehlersuche bei IPsec VPN mit IKEv2 - Mathias Weidner (05.12.2020) https://leanpub.com/fehlersuchebeiikev2ipsecvpn
- Video: Opportunistic Encryption Using IPsec by Paul Wouters, Libreswan IPsec VPN Project https://www.youtube.com/watch?v=Me_rl6N1m7c
- Buch: NIST Special Publication 800-77 Revision 1: Guide to IPsec VPNs https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-77r1.pdf
- Buch/Webseite: BSI TR-02102 Kryptographische Verfahren: Empfehlungen und Schlüssellängen (Jan 2025) https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/Technische-Richtlinien/TR-nach-Thema-sortiert/tr02102/tr02102_node.html
3.0.1 Internet Standards
- RFC 7296: Internet Key Exchange Protocol Version 2 (IKEv2)
- RFC 7427: Signature Authentication in the Internet Key Exchange Version 2 (IKEv2)
- RFC 7670: Generic Raw Public-Key Support for IKEv2
- RFC 8247: Algorithm Implementation Requirements and Usage Guidance for the Internet Key Exchange Protocol Version 2 (IKEv2)
- RFC 8784: Mixing Preshared Keys in the Internet Key Exchange Protocol Version 2 (IKEv2) for Post-quantum Security
- RFC 9370: Multiple Key Exchanges in the Internet Key Exchange Protocol Version 2 (IKEv2)
- RFC 9395: Deprecation of the Internet Key Exchange Version 1 (IKEv1) Protocol and Obsoleted Algorithms