[Problem] VPN: FB <-> strongSwan - funktioniert nur wenn strongSwan der Initiator ist

Keeper

Neuer User
Mitglied seit
29 Mai 2005
Beiträge
36
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

ich habe ein Problem bei der Verwendung einer LAN-LAN Kopplung zw. einer Fritzbox 7360 und einem strongSwan 5.2.0 Server.
So sieht das Netz aktuell aus:
Code:
172.31.1.5   ----   172.31.0.254    ======== Internet =========    10.90.1.1 - (10.90.1.0/24)
(strongSwan Srv)  (Lancom Router,                              (Fritzbox 7360 6.03,
                fest IP zum Internet)                        dyn. IP zum Internet)
Portfreigaben 500 / 4500 vom Lancom Router zum strongSwan Server sind eingetragen. Route im Lancom Router eingetragen, damit das 10.90.1.0er Netz entsprechend über den strongSwan Server läuft.

So, im Prinzip funktioniert eigentlich alles. Wenn der strongSwan Server die VPN Verbindung zur Fritzbox aufbaut signalisieren beide die Verbindung als aufgebaut und ich komme problemlos von beiden Netzen in das jeweilige andere. Soweit, so gut.
Zwei Probleme ergeben sich allerdings:
1. Wenn ich die Verbindung vom strongSwan Server beende, ist anschließend kein erneuter Verbindungsaufbau strongSwan -> Fritzbox möglich. Erst nachdem ich die Fritzbox neugestartet habe oder unter Fritzbox-Benutzern einen VPN User angelegt/gelöscht habe (neustart des VPN Daemon?), geht es wieder.
2. Wird die Verbindung von der Fritzbox aufgebaut, wird diese ebenfalls von beiden Seiten als aufgebaut angezeigt, allerdings ist keine Kommunikation zwischen den Netzen möglich.

So, und jetzt weiß ich nicht weiter...

Bei Problem 1 finde ich beim erneuten Verbindungsproblem folgende Einträge im avmike.log:
Code:
2014-07-26 23:14:34 avmike:<publicIPLancom>:500: new_neighbour_template failed
2014-07-26 23:14:38 avmike:<publicIPLancom>:500: new_neighbour_template failed
2014-07-26 23:14:45 avmike:<publicIPLancom>:500: new_neighbour_template failed
2014-07-26 23:14:58 avmike:<publicIPLancom>:500: new_neighbour_template failed
Das scheint AVM spezifisch zu sein und sagt mir so gar nichts. Da aber andere ja die VPN Konfig problemlos am laufen haben, weiß ich nicht, woran es bei mir scheitert.
In der Ereignisanzeige erscheint "VPN-Verbindung zu <publicIPLancom> wurde getrennt. Ursache: 3 IKE server" - was ja ebenfalls korrekt ist nach meiner Meinung.

Allgemeine Config:
ipsec.conf
Code:
conn 9001
        keyexchange=ikev1
        left=%defaultroute
        leftid=<publicIPLancom>
        leftsubnet=172.31.0.0/16
        #
        ike=aes256-sha1-modp1024
        esp=aes256-sha1-modp1024
        #
        right=<dynDNSFritzbox>
        rightid="@<dynDNSFritzbox>"
        rightsubnet=10.90.1.0/24
        rightallowany=yes
        #
        ikelifetime=1h
        keylife=1h
        #
        authby=secret
        auto=add

ipsec status
Code:
Security Associations (1 up, 0 connecting):
        9001[13]: ESTABLISHED 34 minutes ago, 172.31.1.5[<publicIPLancom>]...<publicIPFritzbox>[<dynDNSFritzbox>]
        9001{2}:  INSTALLED, TUNNEL, ESP in UDP SPIs: c25c1685_i a847f1c3_o
        9001{2}:   172.31.0.0/16 === 10.90.1.0/24

ip route list table 220
Code:
10.90.1.0/24 via 172.31.0.254 dev eth0  proto static  src 172.31.1.5

ip xfrm policy show
Code:
src 10.90.1.0/24 dst 172.31.0.0/16
        dir fwd priority 2915 ptype main
        tmpl src <publicIPFritzbox> dst 172.31.1.5
                proto esp reqid 2 mode tunnel
src 10.90.1.0/24 dst 172.31.0.0/16
        dir in priority 2915 ptype main
        tmpl src <publicIPFritzbox> dst 172.31.1.5
                proto esp reqid 2 mode tunnel
src 172.31.0.0/16 dst 10.90.1.0/24
        dir out priority 2915 ptype main
        tmpl src 172.31.1.5 dst <publicIPFritzbox>
                proto esp reqid 2 mode tunnel
src 0.0.0.0/0 dst 0.0.0.0/0
        socket in priority 0 ptype main
src 0.0.0.0/0 dst 0.0.0.0/0
        socket out priority 0 ptype main
src 0.0.0.0/0 dst 0.0.0.0/0
        socket in priority 0 ptype main
src 0.0.0.0/0 dst 0.0.0.0/0
        socket out priority 0 ptype main
src ::/0 dst ::/0
        socket in priority 0 ptype main
src ::/0 dst ::/0
        socket out priority 0 ptype main
src ::/0 dst ::/0
        socket in priority 0 ptype main
src ::/0 dst ::/0
        socket out priority 0 ptype mai

ip xfrm state show
Code:
src 172.31.1.5 dst <publicIPFritzbox>
        proto esp spi 0xc5f26cb4 reqid 2 mode tunnel
        replay-window 32 flag af-unspec
        auth-trunc hmac(sha1) 0x262.... 96
        enc cbc(aes) 0x2d9e7....
        encap type espinudp sport 4500 dport 4500 addr 0.0.0.0
src <publicIPFritzbox> dst 172.31.1.5
        proto esp spi 0xc239f583 reqid 2 mode tunnel
        replay-window 32 flag af-unspec
        auth-trunc hmac(sha1) 0xe.... 96
        enc cbc(aes) 0x38....
        encap type espinudp sport 4500 dport 4500 addr 0.0.0.0

fritz vpn.cfg
Code:
vpncfg {
        connections {
                enabled = yes;
                conn_type = conntype_lan;
                name = "<publicIPLancom>";
                always_renew = no;
                reject_not_encrypted = no;
                dont_filter_netbios = yes;
                localip = 0.0.0.0;
                local_virtualip = 0.0.0.0;
                remoteip = <publicIPLancom>;
                remote_virtualip = 0.0.0.0;
                localid {
                        fqdn = "dynDNSFritzbox>";
                }
                remoteid {
                        ipaddr = <publicIPLancom>;
                }
                mode = phase1_mode_idp;
                phase1ss = "all/all/all";
                keytype = connkeytype_pre_shared;
                key = "<key>";
                cert_do_server_auth = no;
                use_nat_t = yes;
                use_xauth = no;
                use_cfgmode = no;
                phase2localid {
                        ipnet {
                                ipaddr = 10.90.1.0;
                                mask = 255.255.255.0;
                        }
                }
                phase2remoteid {
                        ipnet {
                                ipaddr = 172.31.0.0;
                                mask = 255.255.0.0;
                        }
                }
                phase2ss = "esp-all-all/ah-none/comp-all/pfs";
                accesslist = "permit ip any 172.31.0.0 255.255.0.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 auch probiert, die VPN Config der Fritzbox über das Webinterface anzulegen (dann muss ich halt den Aggressive Mode nutzen), habe hier aber das gleiche Problem, Traffic fließt nur, wenn die Verbindung vom strongSwan aufgebaut wurde.
Den Thread http://www.ip-phone-forum.de/showthread.php?t=227473 habe ich mir auch durchgelesen (danke für die vielen interessanten Infos bzgl. IPSec!), konnte da aber auch keine Lösung finden.
Hat vielleicht irgendjemand eine Idee für mich?

Besten Dank schonmal!

Edit:
Habe jetzt einfach noch mal strongSwan in Version 4.6.2 verwendet (also noch mit dem alten Pluto Daemon), damit funktioniert Punkt 2, d.h. wenn die Fritzbox die Verbindung aufbaut, fließt ebenfalls Traffic. Damit scheint immerhin klar zu sein, dass das Problem an strongSwan liegt. Werde dort mal einen Bug diesbzgl. aufmachen... Das Problem, dass ich nach einer Beendigung der VPN Verbindung vom strongSwan Server aus keine erneute Verbindung aufbauen kann, bleibt allerdings weiter bestehen :(
 
Zuletzt bearbeitet:
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,914
Beiträge
2,304,870
Mitglieder
378,621
Neuestes Mitglied
Ansh