1
German - Deutsch / Probleme IPSec Route-Based Tunnel Einwegverbindung
« on: July 13, 2021, 04:14:41 pm »
Hallo Zusammen
Ich habe drei OPNSense im Einsatz. Standort A und B habe ich bereits durch einen Route-based IPSec Tunnel verbunden. Beide haben fixe IPs. Dies läuft einwandfrei.
Nun versuche ich den Standort C mit dynamischer IP ebenfalls durch einen Route-based Tunnel mit Standort B zu verbinden. Als Vorlage dazu habe ich folgende Anleitung verwendet: https://nwildner.com/posts/2019-09-24-how-to-site2site-opnsense/
Die Phase 2 habe ich allerdings durch folgende Einstellungen ersetzt.
Der Tunnel baut auf, DPD kommt durch.
Log Tunnelaufbau Standort B (Der Tunnel wird von C aufgebaut):
Mein Problem ist nun, dass der Tunnel eine Einbahnstrasse ist. Daten von C kommen bei B an. Aber bei B geht nichts raus.
Statusübersicht der Verbindung von Standort B:
Wenn ich nun von Standort B aus einen Ping sende erhalte ich folgendes:
Dies deutet aus meiner Sicht auf ein Problem mit dem ipsec3 Interface (Standort B) hin. Dieses sagt mir aber es läuft:
Zum Vergleich das Interface ipsec1000 ebenfalls von Standort B für die Verbindung zu A:
Wie bereits geschrieben deutet für mich alles auf ein Problem mit dem Interface am Standort B hin. Ping von C nach B ergibt 100% packet loss wie ich es kenne wenn ich ins leere Pinge. Aber der Byte eingehend Zähler bei B geht hoch wenn ich von C Pinge. Darum gehe ich davon aus das bei C alles in Ordnung ist.
Hat vielleicht jemand eine Idee wie ich das Problem beheben könnte?
Gruss Rolf
Ich habe drei OPNSense im Einsatz. Standort A und B habe ich bereits durch einen Route-based IPSec Tunnel verbunden. Beide haben fixe IPs. Dies läuft einwandfrei.
Nun versuche ich den Standort C mit dynamischer IP ebenfalls durch einen Route-based Tunnel mit Standort B zu verbinden. Als Vorlage dazu habe ich folgende Anleitung verwendet: https://nwildner.com/posts/2019-09-24-how-to-site2site-opnsense/
Die Phase 2 habe ich allerdings durch folgende Einstellungen ersetzt.
Code: [Select]
Standort B Phase 2 Config (Home)
Modus Route-based
Lokale Adresse 10.11.1.6
Entfernte Adresse 10.11.1.5
Protokoll ESP
Verschlüsselungsalgorithmen AES 256
Hashalgorithmen SHA1
PFS Schlüsselgruppe 14(2048bits)
Lebenszeit 3600
Standort C Phase 2 Config (Teuf9)
Modus Route-based
Lokale Adresse 10.11.1.5
Entfernte Adresse 10.11.1.6
Protokoll ESP
Verschlüsselungsalgorithmen AES 256
Hashalgorithmen SHA1
PFS Schlüsselgruppe 14(2048bits)
Lebenszeit 3600
Der Tunnel baut auf, DPD kommt durch.
Log Tunnelaufbau Standort B (Der Tunnel wird von C aufgebaut):
Code: [Select]
2021-07-13T14:46:40 charon[37739] 08[NET] <con4|4> sending packet: from x.x.x.216[4500] to x.x.x.81[2175] (128 bytes)
2021-07-13T14:46:40 charon[37739] 08[ENC] <con4|4> generating INFORMATIONAL response 3 [ N(NATD_S_IP) N(NATD_D_IP) ]
2021-07-13T14:46:40 charon[37739] 08[ENC] <con4|4> parsed INFORMATIONAL request 3 [ N(NATD_S_IP) N(NATD_D_IP) ]
2021-07-13T14:46:40 charon[37739] 08[NET] <con4|4> received packet: from x.x.x.81[2175] to x.x.x.216[4500] (128 bytes)
2021-07-13T14:46:10 charon[37739] 07[NET] <con4|4> sending packet: from x.x.x.216[4500] to x.x.x.81[2175] (128 bytes)
2021-07-13T14:46:10 charon[37739] 07[ENC] <con4|4> generating INFORMATIONAL response 2 [ N(NATD_S_IP) N(NATD_D_IP) ]
2021-07-13T14:46:10 charon[37739] 07[ENC] <con4|4> parsed INFORMATIONAL request 2 [ N(NATD_S_IP) N(NATD_D_IP) ]
2021-07-13T14:46:10 charon[37739] 07[NET] <con4|4> received packet: from x.x.x.81[2175] to x.x.x.216[4500] (128 bytes)
2021-07-13T14:45:40 charon[37739] 09[NET] <con4|4> sending packet: from x.x.x.216[4500] to x.x.x.81[2175] (756 bytes)
2021-07-13T14:45:40 charon[37739] 09[NET] <con4|4> sending packet: from x.x.x.216[4500] to x.x.x.81[2175] (1236 bytes)
2021-07-13T14:45:40 charon[37739] 09[ENC] <con4|4> generating IKE_AUTH response 1 [ EF(2/2) ]
2021-07-13T14:45:40 charon[37739] 09[ENC] <con4|4> generating IKE_AUTH response 1 [ EF(1/2) ]
2021-07-13T14:45:40 charon[37739] 09[ENC] <con4|4> splitting IKE message (1920 bytes) into 2 fragments
2021-07-13T14:45:40 charon[37739] 09[ENC] <con4|4> generating IKE_AUTH response 1 [ IDr CERT AUTH N(ESP_TFC_PAD_N) SA TSi TSr N(AUTH_LFT) N(MOBIKE_SUP) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) ]
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> CHILD_SA con4{5} established with SPIs c4bfd97d_i cfa097d4_o and TS 0.0.0.0/0 === 0.0.0.0/0
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> selected proposal: ESP:AES_CBC_256/HMAC_SHA1_96/NO_EXT_SEQ
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> sending end entity cert "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=ipsec@maxFirma.ch, CN=Strasse74_Client"
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> maximum IKE_SA lifetime 28450s
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> scheduling reauthentication in 27910s
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> IKE_SA con4[4] established between x.x.x.216[ipsec@maxFirma.ch]...x.x.x.81[teuf9@maxFirma.ch]
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> authentication of 'ipsec@maxFirma.ch' (myself) with RSA_EMSA_PKCS1_SHA2_256 successful
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> peer supports MOBIKE
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> received ESP_TFC_PADDING_NOT_SUPPORTED, not using ESPv3 TFC padding
2021-07-13T14:45:40 charon[37739] 09[IKE] <con4|4> authentication of 'teuf9@maxFirma.ch' with RSA_EMSA_PKCS1_SHA2_256 successful
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> reached self-signed root ca with a path length of 0
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> certificate status is not available
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> checking certificate status of "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=teuf9@maxFirma.ch, CN=ort2_Client"
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> using trusted ca certificate "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=info@maxFirma.ch, CN=wuzelgruzel.maxFirma.ch_Internal_CA"
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> using certificate "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=teuf9@maxFirma.ch, CN=ort2_Client"
2021-07-13T14:45:40 charon[37739] 09[CFG] <con4|4> selected peer config 'con4'
2021-07-13T14:45:40 charon[37739] 09[CFG] <4> looking for peer configs matching x.x.x.216[ipsec@maxFirma.ch]...x.x.x.81[teuf9@maxFirma.ch]
2021-07-13T14:45:40 charon[37739] 09[IKE] <4> received end entity cert "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=teuf9@maxFirma.ch, CN=ort2_Client"
2021-07-13T14:45:40 charon[37739] 09[IKE] <4> received cert request for "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=info@maxFirma.ch, CN=wuzelgruzel.maxFirma.ch_Internal_CA"
2021-07-13T14:45:40 charon[37739] 09[ENC] <4> parsed IKE_AUTH request 1 [ IDi CERT N(INIT_CONTACT) CERTREQ IDr AUTH N(ESP_TFC_PAD_N) SA TSi TSr N(MOBIKE_SUP) N(ADD_4_ADDR) N(ADD_4_ADDR) N(MULT_AUTH) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ]
2021-07-13T14:45:40 charon[37739] 09[ENC] <4> received fragment #2 of 2, reassembled fragmented IKE message (1920 bytes)
2021-07-13T14:45:40 charon[37739] 09[ENC] <4> parsed IKE_AUTH request 1 [ EF(2/2) ]
2021-07-13T14:45:40 charon[37739] 09[NET] <4> received packet: from x.x.x.81[2175] to x.x.x.216[4500] (756 bytes)
2021-07-13T14:45:40 charon[37739] 09[ENC] <4> received fragment #1 of 2, waiting for complete IKE message
2021-07-13T14:45:40 charon[37739] 09[ENC] <4> parsed IKE_AUTH request 1 [ EF(1/2) ]
2021-07-13T14:45:40 charon[37739] 09[NET] <4> received packet: from x.x.x.81[2175] to x.x.x.216[4500] (1236 bytes)
2021-07-13T14:45:39 charon[37739] 09[NET] <4> sending packet: from x.x.x.216[500] to x.x.x.81[2188] (537 bytes)
2021-07-13T14:45:39 charon[37739] 09[ENC] <4> generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(FRAG_SUP) N(HASH_ALG) N(CHDLESS_SUP) N(MULT_AUTH) ]
2021-07-13T14:45:39 charon[37739] 09[IKE] <4> sending cert request for "C=CH, ST=Zuerich, L=xxxx, O=Max Firma AG, E=info@maxFirma.ch, CN=ort.maxFirma.ch"
2021-07-13T14:45:39 charon[37739] 09[IKE] <4> sending cert request for "C=CH, ST=Zuerich, L=Zuerich, O=Max Firma AG, E=info@maxFirma.ch, CN=wuzelgruzel.maxFirma.ch_Internal_CA"
2021-07-13T14:45:39 charon[37739] 09[IKE] <4> sending cert request for "C=CH, ST=ZH, L=Horgen, O=Wuzelgruzel, E=info@maxFirma.ch, CN=CERT_Ober74_internal-ca"
2021-07-13T14:45:39 charon[37739] 09[IKE] <4> remote host is behind NAT
2021-07-13T14:45:39 charon[37739] 09[CFG] <4> selected proposal: IKE:AES_CBC_256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_2048
2021-07-13T14:45:39 charon[37739] 09[IKE] <4> x.x.x.81 is initiating an IKE_SA
2021-07-13T14:45:39 charon[37739] 09[ENC] <4> parsed IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]
2021-07-13T14:45:39 charon[37739] 09[NET] <4> received packet: from x.x.x.81[2188] to x.x.x.216[500] (464 bytes)
Mein Problem ist nun, dass der Tunnel eine Einbahnstrasse ist. Daten von C kommen bei B an. Aber bei B geht nichts raus.
Statusübersicht der Verbindung von Standort B:
Code: [Select]
Teuf9_To_Home (con4) IKEv2 ipsec@maxfirma.ch 194.230.44.216 teuf9@maxfirma.ch 0.0.0.0,0.0.0.0/0,::/0 public key public key
Ferner Host Lokale Subnetze SPI(s) Ferne Subnetze Status Statistiken
x.x.x.81 0.0.0.0/0 eingehend : c4bfd97d
ausgehend : cfa097d4 0.0.0.0/0 INSTALLED
Geroutet Zeit : 828
Byte eingehend : 2836
Byte ausgehend : 0
Wenn ich nun von Standort B aus einen Ping sende erhalte ich folgendes:
Code: [Select]
# /sbin/ping -S '10.11.1.6' -c '3' '10.11.1.5'
PING 10.11.1.5 (10.11.1.5) from 10.11.1.6: 56 data bytes
--- 10.11.1.5 ping statistics ---
3 packets transmitted, 0 packets received, 100.0% packet loss
ping: sendto: Network is down
ping: sendto: Network is down
ping: sendto: Network is down
Dies deutet aus meiner Sicht auf ein Problem mit dem ipsec3 Interface (Standort B) hin. Dieses sagt mir aber es läuft:
Code: [Select]
Teuf9_To_Home Schnittstelle (ipsec3, ipsec3)
Status up
MAC-Adresse 00:00:00:00:00:00 - XEROX CORPORATION
MTU 1400
IPv4-Adresse 10.11.1.6/30
IPv4 gateway 10.11.1.5
IPv6 link-local fe80::20a:cdff:fe36:b8a3/64
Eingehende/Ausgehende Pakete 0 / 544 (0 bytes / 32 KB)
Eingehende/Ausgehende Pakete (erlaubt) 0 / 544 (0 bytes / 32 KB)
Eingehende/Ausgehende Pakete (blockiert) 0 / 0 (0 bytes / 0 bytes)
Eingehende/ausgehende Fehler 0 / 540
Kollisionen 0
Zum Vergleich das Interface ipsec1000 ebenfalls von Standort B für die Verbindung zu A:
Code: [Select]
HometoFirma Schnittstelle (ipsec1000, ipsec1000)
Status up
MAC-Adresse 00:00:00:00:00:00 - XEROX CORPORATION
MTU 1400
IPv4-Adresse 10.11.1.2/30
IPv4 gateway 10.11.1.1
IPv6 link-local fe80::20a:cdff:fe36:b8a3/64
Eingehende/Ausgehende Pakete 11913 / 16644 (1.16 MB / 1.57 MB)
Eingehende/Ausgehende Pakete (erlaubt) 11913 / 16644 (1.16 MB / 1.57 MB)
Eingehende/Ausgehende Pakete (blockiert) 0 / 0 (0 bytes / 0 bytes)
Eingehende/ausgehende Fehler 0 / 0
Kollisionen 0
Diese Verbindung Funktioniert einwandfrei.Wie bereits geschrieben deutet für mich alles auf ein Problem mit dem Interface am Standort B hin. Ping von C nach B ergibt 100% packet loss wie ich es kenne wenn ich ins leere Pinge. Aber der Byte eingehend Zähler bei B geht hoch wenn ich von C Pinge. Darum gehe ich davon aus das bei C alles in Ordnung ist.
Hat vielleicht jemand eine Idee wie ich das Problem beheben könnte?
Gruss Rolf