Mehrere FRITZ!Boxen via Strongswan auf VPS miteinander verbinden.

hörstchen

Neuer User
Mitglied seit
1 Apr 2022
Beiträge
2
Punkte für Reaktionen
0
Punkte
1
Moin miteinander,
ich versuche gerade zwei Fritzboxen über ein auf meinem VPS installierten Strongswan miteinander zu verbinden. Später sollen ggf. noch weitere "Standorte" dazukommen:

Hierbei habe ich folgendes Setup:
Bildschirmfoto 2022-04-01 um 16.35.33.png

Meine `etc/ipsec.conf` sieht folgendermaßen aus:
Code:
conn fritzboxF
        aggressive=yes
        left=vpn.VPS.tld
        leftsubnet=192.168.178.0/24 # IP Bereich von fritzboxC
        #
        ike=aes256-sha-modp1024
        esp=aes256-sha1-modp1024
        #
        right=frtzboxF.myfritz.net
        [email protected]
        rightsubnet=192.168.20.0/24
        #
        ikelifetime=4h
        keylife=1h
        #
        authby=secret
        auto=add

conn fritzboxC
        aggressive=yes
        left=vpn.VPS.tld
        leftsubnet=192.168.20.0/24 # IP Bereich von fritzboxF
        #
        ike=aes256-sha-modp1024
        esp=aes256-sha1-modp1024
        #
        right=frtzboxC.myfritz.net
        [email protected]
        rightsubnet=192.168.178.0/24
        #
        ikelifetime=4h
        keylife=1h
        #
        authby=secret
        auto=add
    rightallowany=yes
    lefthostaccess=yes

Die beiden Fritzboxen verbinden sich auch jeweils brav und erfolgreich(?) mit dem VPS, zumindest behauptet das jeweils das Webinterface der Fritzboxen :).

ein ` ipsec status` gibt mir folgende Rückgabe:
Code:
ipsec status
Security Associations (2 up, 0 connecting):
   fritzboxF[3]: ESTABLISHED 10 minutes ago, 194.59.206.183[vpn.VPS.tld]...xx.yy.zz.ff[fritzboxF.myfritz.net]
   fritzboxF{2}:  INSTALLED, TUNNEL, reqid 2, ESP SPIs: c3de4252_i 735cd6f6_o
   fritzboxF{2}:   192.168.178.0/24 === 192.168.20.0/24
   fritzboxC[2]: ESTABLISHED 10 minutes ago, 194.59.206.183[vpn.VPS.tld]...xx.yy.zz.cc[fritzboxC.myfritz.net]
   fritzboxC{1}:  INSTALLED, TUNNEL, reqid 1, ESP SPIs: cd788072_i bc9b2731_o
   fritzboxC{1}:   192.168.20.0/24 === 192.168.178.0/24

Meine Config, die ich in die FritzboxF eingespielt habe, sieht wie folgt aus:
Code:
vpncfg {
  connections {
    enabled = yes;
    editable = yes;
    conn_type = conntype_lan;
    name = "fritzboxF => VPS";
    boxuser_id = 0;
    always_renew = yes;
    reject_not_encrypted = no;
    dont_filter_netbios = yes;
    localip = 0.0.0.0;
    local_virtualip = 0.0.0.0;
    remoteip = ip.vom.vps.abc;
    remote_virtualip = 0.0.0.0;
    remotehostname = "vpn.VPS.tld";
    keepalive_ip = 0.0.0.0;
    localid {
      fqdn = "frtzboxF.myfritz.net";
    }
    remoteid {
      fqdn = "ip.vom.vps.abc";
    }
    mode = phase1_mode_aggressive;
    phase1ss = "all/all/all";
    keytype = connkeytype_pre_shared;
    key = "tastaturkatze";
    cert_do_server_auth = no;
    use_nat_t = yes;
    use_xauth = no;
    use_cfgmode = no;
    phase2localid {
      ipnet {
        ipaddr = 192.168.178.0;
        mask = 255.255.255.0;
      }
    }
    phase2remoteid {
      ipnet {
        ipaddr = 192.168.20.0;
        mask = 255.255.255.0;
      }
    }
    phase2ss = "esp-all-all/ah-none/comp-all/pfs";
    accesslist = "permit ip any 192.168.20.0 255.255.255.0";
  }
  ike_forward_rules = "udp 0.0.0.0:500 0.0.0.0:500", 
  "udp 0.0.0.0:4500 0.0.0.0:4500";
}

Ich habe den Eindruck, dass ich irgendwo es verplane, dass die beiden Verbindungen auf dem VPS miteinander kommunizieren können.

Habt ihr eine Idee, was ich falsch mache?

Über Tipps und Hinweise wäre ich mehr als dankbar!

LG,
Horst

-- Zusammenführung Doppelpost gemäß Boardregeln by stoney

Hier noch einmal die Ausgabe von `ip xfrm state`.

Code:
~ ip xfrm state
src ip.vom.vps dst ip.vom.fritzbox.f
    proto esp spi 0x735cd6f6 reqid 2 mode tunnel
    replay-window 0 flag af-unspec
    auth-trunc hmac(sha1) 0x0821426e324d5c9f5035c5e9c2cd939def22b664 96
    enc cbc(aes) 0xfc85e6c8d9415ffee6b4f6f7edf8c8f6443e129d24804e7d385638f21b54f89d
    anti-replay context: seq 0x0, oseq 0x0, bitmap 0x00000000
src ip.vom.fritzbox.f dst ip.vom.vps
    proto esp spi 0xc3de4252 reqid 2 mode tunnel
    replay-window 32 flag af-unspec
    auth-trunc hmac(sha1) 0x06b13e1ed17c2560fcf205d5498012e3c8873d45 96
    enc cbc(aes) 0xfae6cf6070d3938a8e0e4a407abd1cb2aa2887bab27c3e1dc2f9730a9b3abff9
    anti-replay context: seq 0x4b1, oseq 0x0, bitmap 0xffffffff
src ip.vom.vps dst ip.vom.fritzbox.c
    proto esp spi 0xbc9b2731 reqid 1 mode tunnel
    replay-window 0 flag af-unspec
    auth-trunc hmac(sha1) 0x34e31d64c90ff43c672a83ad584c18b5ea071572 96
    enc cbc(aes) 0x9f8206dfcf2287aeff1eb52464bf279b11cfc4a6cd0ed38aaf03008f9bd567f0
    anti-replay context: seq 0x0, oseq 0x0, bitmap 0x00000000
src ip.vom.fritzbox.c dst ip.vom.vps
    proto esp spi 0xcd788072 reqid 1 mode tunnel
    replay-window 32 flag af-unspec
    auth-trunc hmac(sha1) 0x195ef72168c9c290a8d7b5fecd852e14eea74f8e 96
    enc cbc(aes) 0xb41ed7b58b02a21ca9c02abef04a88c51e9d0891d06b8483692a3fe1a78cae77
    anti-replay context: seq 0x1, oseq 0x0, bitmap 0x00000001

Und die Ausgabe von `ip xfrm policy`
Code:
ip xfrm policy
src 192.168.178.0/24 dst 192.168.20.0/24 
    dir out priority 375423 
    tmpl src ip.vom.vps dst ip.vom.fritzbox.f
        proto esp spi 0x735cd6f6 reqid 2 mode tunnel
src 192.168.20.0/24 dst 192.168.178.0/24 
    dir fwd priority 375423 
    tmpl src ip.vom.fritzbox.f dst ip.vom.vps
        proto esp reqid 2 mode tunnel
src 192.168.20.0/24 dst 192.168.178.0/24 
    dir in priority 375423 
    tmpl src ip.vom.fritzbox.f dst ip.vom.vps
        proto esp reqid 2 mode tunnel
src 192.168.20.0/24 dst 192.168.178.0/24 
    dir out priority 375423 
    tmpl src ip.vom.vps dst ip.vom.frtizbox.c
        proto esp spi 0xbc9b2731 reqid 1 mode tunnel
src 192.168.178.0/24 dst 192.168.20.0/24 
    dir fwd priority 375423 
    tmpl src ip.vom.frtizbox.c dst ip.vom.vps
        proto esp reqid 1 mode tunnel
src 192.168.178.0/24 dst 192.168.20.0/24 
    dir in priority 375423 
    tmpl src ip.vom.frtizbox.c dst ip.vom.vps
        proto esp reqid 1 mode tunnel
src 0.0.0.0/0 dst 0.0.0.0/0 
    socket in priority 0 
src 0.0.0.0/0 dst 0.0.0.0/0 
    socket out priority 0 
src 0.0.0.0/0 dst 0.0.0.0/0 
    socket in priority 0 
src 0.0.0.0/0 dst 0.0.0.0/0 
    socket out priority 0 
src ::/0 dst ::/0 
    socket in priority 0 
src ::/0 dst ::/0 
    socket out priority 0 
src ::/0 dst ::/0 
    socket in priority 0 
src ::/0 dst ::/0 
    socket out priority 0
 
Zuletzt bearbeitet von einem Moderator:
Ich kenne leider Strongswan und seine Konfiguration nicht, aber im Moment sieht das so aus, als sei Strongswan für die Frtizboxen quasi "unsichtbar". In der Konfiguration tauchen direkt die jeweiligen Subnetze der anderen Box auf, als ob sie direkt miteinander reden würden, quasi als ob der VPS auf Schicht 2 weiterleitet. Es mag sein, dass man das so mit Strongswan machen kann.

Erwartet hätte ich allerdings was anderes, vor allem, wenn es später darum geht, noch weitere Boxen ins Netz zu bringen. Ich hätte erwartet, dass es auf dem VPS eine Art Transportnetz gibt (10.1.1.0/24), mit dem sich die beiden VPN Instanzen der Boxen verbinden. Einziger Host in diesem Transportnetz ist dann z.B. die 10.1.1.1 (der VPS). Das Erreichen des jeweiligen Gegenübers erreicht man dann über eine statische Route in den Fritzboxen, also z.B. 192.168.20.0/24 wird erreicht via 10.1.1.1. Auf dem VPS muss natürlich IP-Forwarding an sein. In diesem Sinne könnte man dann auch eine dritte oder vierte Box integrieren, für die man dann jeweils nur eine statische Route hinzufügen müsste. Und die permit Liste müsste angepasst werden.
 
Hast Du ggf. eine Idee, wonach ich googlen müsste, um genau so ein netz aufsetzen zu können?
 
Ich würde nach einer Anleitung suchen, in der man eine Fritzbox mit einem StrongSwan verbindet. Da hat man dann ja die Konfiguration, dass eine Fritzbox (right) den VPS (left) als Kommunikationspartner hat.
Die jeweils weiteren Fritzboxen würde ich dann als weitere "conn" Einträge hinzufügen, aber alle mit dem VPS als "left" Kommunikationspartner, nicht mit einer anderen Fritzbox. Eventuell muss man "left" auch nicht für jede Verbindung einrichten, sondern kann einfach nur mehrere "right" Netze machen.

Ab jetzt müsste man schauen. Zunächst muss auf jeden Fall ip-forwarding auf dem VPS an sein. Dann müssen die StrongSwan policies passen, da weiß ich aber nicht, wie man die aufsetzt.
 
  • Like
Reaktionen: hörstchen
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.