1
German - Deutsch / Instabiler AWS IPsec-Tunnel
« on: July 26, 2021, 12:00:03 pm »
Instabiler AWS IPsec-Tunnel
Hallo zusammen,
zum Hintergrund: In AWS läuft eine VM, auf der eine Applikation läuft, die aus dem Büro-Netzwerk erreichbar sein muss. Im Büro steht zudem ein PC, der sich regelmäßig mit der AWS-VM synchronisiert.
Im Büro haben wir zwei Internetanschlüsse, eine Kabel-Verbindung mit fester IP und einen DSL-Zugang mit fester IP. In der OPNsense sind beide Gateways eingeträgen und ein Failover konfiguriert. Primär wird die Kabel-Verbindung verwendet.
Das Büro-Netzwerk ist per VLAN segmentiert; nicht alle VLANs müssen auf den AWS-Dienst zugreifen (genau genommen nur zwei).
Die WAN-Interfaces ther Firewall sind als Exposed-Host in der Fritzbox eingetragen.
In AWS gibt es neben der VM auch eine eigene VGW und CGW. Ich habe nach dem Erstellen der VPN-Konfiguration die Konfigurationsdatei für "pfsense" heruntergeladen und die Firewall entsprechend konfiguriert (wie https://forum.opnsense.org/index.php?topic=5678.msg23212#msg23212). Die zwei Netzwerke sind entsprechend in Phase 2 konfiguriert
Die Network-ACL in AWS ist so konfiguriert, dass über den IPsec-Tunnel nur bestimmte Netzwerke zugreifen dürfen (die zwei benötigten Büro-Netzwerke), sowie von außen (Internet) nur ICMP möglich ist und ein bestimmter Port (siehe Grafik).
Firewall-Regeln sind wie folgt gesetzt (erlaubt):
- WAN: (eingehend) IPv4 ESP (Source: Any, Port: Any, Destination: Any, Port: Any, Gateway: Any)
(eingehend) IPv4 UDP (Source: Any, Port: Any, Destination: Any, Port: 500 (ISAKAMP), Gateway: Any)
(eingehend) IPv4 UDP (Source: Any, Port: Any, Destination: Any, Port: 4500 (IPsec NAT-T), Gateway: Any)
- IPsec: (eingehend) IPv4* (Any)
- 20er Netz: (ausgehend) IPv4* (Source: 20er Netz, Port: Any, Destination: 10.1.0.127 [AWS-Host], Port: Any, Gateway: Any)
- 30er Netz: (ausgehend) IPv4* (Source: 30er Netz, Port: Any, Destination: 10.1.0.127 [AWS-Host], Port: Any, Gateway: Any)
Zur Firewall: OPNsense 21.1.8_1-amd64, FreeBSD 12.1-RELEASE-p19-HBSD, OpenSSL 1.1.1k 25 Mar 2021
Zum Problem: Der Tunnel wird aufgebaut und initialisiert, allerdings bricht die Verbindung nach kurzer Zeit ab, und zwar unabhängig davon, ob Traffic vorhanden ist oder nicht. Aber durch Traffic lässt sich der Fehler schneller provozieren.
Bevor der Tunnel zusammenbricht, ist die Kommunikation wie angedacht möglich, also RDP-Verbindung auf den AWS-Host sowie Dateitransfers. Lade ich nun über die RDP-Verbindung eine Datei hoch oder herunter, bricht der Tunnel wohl zusammen.
Auf der Firewall-Seite wird er allerdings weiterhin als "Aktiv" angezeigt. In AWS ist der Tunnel ebenfalls "Up".
Das ganze klappt erst wieder, wenn ich die Phase 2 neu initialisiere - aber auch nur so lange, bis Traffic kommt oder nach einer Zeit die Verbindung von allein zusammenbricht.
Ich bin aktuell ziemlich ratlos und dankbar für Tipps und Hilfestellungen.
Hallo zusammen,
zum Hintergrund: In AWS läuft eine VM, auf der eine Applikation läuft, die aus dem Büro-Netzwerk erreichbar sein muss. Im Büro steht zudem ein PC, der sich regelmäßig mit der AWS-VM synchronisiert.
Im Büro haben wir zwei Internetanschlüsse, eine Kabel-Verbindung mit fester IP und einen DSL-Zugang mit fester IP. In der OPNsense sind beide Gateways eingeträgen und ein Failover konfiguriert. Primär wird die Kabel-Verbindung verwendet.
Das Büro-Netzwerk ist per VLAN segmentiert; nicht alle VLANs müssen auf den AWS-Dienst zugreifen (genau genommen nur zwei).
Die WAN-Interfaces ther Firewall sind als Exposed-Host in der Fritzbox eingetragen.
In AWS gibt es neben der VM auch eine eigene VGW und CGW. Ich habe nach dem Erstellen der VPN-Konfiguration die Konfigurationsdatei für "pfsense" heruntergeladen und die Firewall entsprechend konfiguriert (wie https://forum.opnsense.org/index.php?topic=5678.msg23212#msg23212). Die zwei Netzwerke sind entsprechend in Phase 2 konfiguriert
Die Network-ACL in AWS ist so konfiguriert, dass über den IPsec-Tunnel nur bestimmte Netzwerke zugreifen dürfen (die zwei benötigten Büro-Netzwerke), sowie von außen (Internet) nur ICMP möglich ist und ein bestimmter Port (siehe Grafik).
Firewall-Regeln sind wie folgt gesetzt (erlaubt):
- WAN: (eingehend) IPv4 ESP (Source: Any, Port: Any, Destination: Any, Port: Any, Gateway: Any)
(eingehend) IPv4 UDP (Source: Any, Port: Any, Destination: Any, Port: 500 (ISAKAMP), Gateway: Any)
(eingehend) IPv4 UDP (Source: Any, Port: Any, Destination: Any, Port: 4500 (IPsec NAT-T), Gateway: Any)
- IPsec: (eingehend) IPv4* (Any)
- 20er Netz: (ausgehend) IPv4* (Source: 20er Netz, Port: Any, Destination: 10.1.0.127 [AWS-Host], Port: Any, Gateway: Any)
- 30er Netz: (ausgehend) IPv4* (Source: 30er Netz, Port: Any, Destination: 10.1.0.127 [AWS-Host], Port: Any, Gateway: Any)
Zur Firewall: OPNsense 21.1.8_1-amd64, FreeBSD 12.1-RELEASE-p19-HBSD, OpenSSL 1.1.1k 25 Mar 2021
Zum Problem: Der Tunnel wird aufgebaut und initialisiert, allerdings bricht die Verbindung nach kurzer Zeit ab, und zwar unabhängig davon, ob Traffic vorhanden ist oder nicht. Aber durch Traffic lässt sich der Fehler schneller provozieren.
Bevor der Tunnel zusammenbricht, ist die Kommunikation wie angedacht möglich, also RDP-Verbindung auf den AWS-Host sowie Dateitransfers. Lade ich nun über die RDP-Verbindung eine Datei hoch oder herunter, bricht der Tunnel wohl zusammen.
Auf der Firewall-Seite wird er allerdings weiterhin als "Aktiv" angezeigt. In AWS ist der Tunnel ebenfalls "Up".
Das ganze klappt erst wieder, wenn ich die Phase 2 neu initialisiere - aber auch nur so lange, bis Traffic kommt oder nach einer Zeit die Verbindung von allein zusammenbricht.
Ich bin aktuell ziemlich ratlos und dankbar für Tipps und Hilfestellungen.