IPsec Site-to-Site VPN FortiGate <-> FRITZ!Box

Hier kommt ein kurzer Guide wie man ein Site-to-Site VPN zwischen einer FortiGate Firewall und einer AVM FRITZ!Box aufbaut. Anhand von Screenshots zeige ich die Einrichtung der FortiGate, während ich für die FRITZ!Box ein Template der *.cfg Konfigurationsdatei bereitstelle.

Labor

Mein Labor sah wie folgt aus:

S2S VPN FortiGate - FritzBox Laboratory

Die FRITZ!Box ist eine 7390 mit FRITZ!OS 06.30, während die Fortinet Firewall eine FortiWiFi 90D mit Version 5.2.2 ist. Wie im Internet üblich ist die FortiGate mit einer statischen IP-Adresse versehen (obgleich 1 zu 1 geNATet), während sich die FRITZ!Box hinter einer dynamischen IP verbirgt. Mit einem dynamischen DNS Dienst ist immerhin ein FQDN für die FRITZ!Box verfügbar.

Sehr praktisch bei FortiOS ist ja, dass bei IKE auch dann der Main Mode verwendet werden kann, wenn die Gegenstelle lediglich über eine dynamische IP (mit einem DynDNS Namen) verfügt. Sprich: Es ist nicht der Aggressive Mode nötig, um ein VPN zu bauen, und vorallem kann der Tunnelaufbau auch von der FortiGate selbst initiiert werden. (Exakt vergleichbar mit der Juniper SSG, die das genau so kann, siehe hier.)

FortiGate

Folgende Schritte sind seitens der FortiGate nötig. In den Beschriftungen unterhalb der Screenshots stehen weitere Details:

FRITZ!Box

Für die FRITZ!Box muss folgendes Template angepasst werden. Gelb markiert sind all die Zeilen, die zwingend angepasst werden müssen. Die Proposals für Phase 1 und 2 können natürlich auch anders gewählt werden, solange das Pendant bei der FortiGate stimmt (siehe hier für mehr Details bezüglich der Proposals der FRITZ!Box).

Hinweis: Dieses Template unterscheidet sich in einer Kleinigkeit von quasi allen anderen Templates, die hier auf meinem Blog sind: Es ist sowohl die localid als auch die remoteid vom Typ “fqdn”. In vielen anderen Beispielen habe ich hier bei der remoteid den Typ “ipaddr” gehabt. Dieser lässt sich auf der FortiGate leider nicht einstellen, da dort unter Verwendung einer IP-Adresse trotzdem ein String versendet wird. Daher ist hier bei der FRITZ!Box zwingend der fqdn nötig.

 

Es läuft …

wenn es grün leuchtet. 😉

Wer mehr Infos zur VPN-Verbindung möchte, kann auf der FortiGate zum Beispiel mit den folgenden Befehlen Details herausfinden:

 

8 thoughts on “IPsec Site-to-Site VPN FortiGate <-> FRITZ!Box

  1. wäre es möglich die Zeilen der Fortigate Konfiguration zusätzlich zu publisieren?
    show vpn ipsec ……

    1. Das wäre auf jeden Fall eine gute Idee gewesen. 😉 Leider habe ich diesen Laboraufbau aktuell nicht mehr am laufen, so dass ich die CLI Befehle nur irgendwie zusammenbasteln könnte, was mir aber zu wage wäre. Daher kann ich sie dir leider gerade nicht liefern.
      (Aber es sollte ja auch nicht so das Problem sein, die Schose 1x durch die GUI zu konfigurieren und sie dann selber rauszuziehen…)
      Lieben Gruß, Johannes

      1. Hallo Johannes,
        ich habe die Verbindung Fritz-Box FortiGate mal konfiguriert und getestet. Hat funktioniert mit FortiOS 5.2.10 🙂
        Ich habe versucht meine Konfiguration an dein Bespiel anzupassen und hoffe, nichts übersehen zu haben.
        Bitte die Kommentare beachten und die in ** eingeschlossenen Informationen anpassen, die ** dabei entfernen 😉
        Grüsse,Ulrich

        config vpn ipsec phase1-interface
        edit “fritzbox”
        set type ddns
        set interface “wan1” # oder das genutzte Interface
        set keylife 3600
        set proposal aes256-sha1
        set localid “blubb”
        set comments “VPN Test zur FritzBox ”
        set dhgrp 14
        set remotegw-ddns “**public_DNS-Name_der_FritzBox” #darf ein dyndns-Name sein
        set psksecret RX-2RUz2UKpFiPXi6B6DJss5TWbW-DzvTMwc
        next
        end

        config vpn ipsec phase2-interface
        edit “fritzbox”
        set phase1name “fritzbox”
        set proposal aes256-sha1
        set dhgrp 14
        set keylifeseconds 3600
        set src-subnet **192.168.161.0 255.255.255.0**
        set dst-subnet **192.168.29.0 255.255.255.0**
        next
        end

    2. Hey

      Wie sieht die Konfig aus für die Fritz.box wenn die Fortigate auch nur über Dyndns erreichbar ist ?

      vielen Dank für die Tolle Anleitung !

  2. Wenn man in der Fritzbox die remoteid auf “ipaddr = ” aendert dann funktioniert das Setup auch als ‘Dialup’ auf der Fortigate, man braucht
    also kein Dyndns fuer die Fritzbox …

    Ein Problem hab ich allerdings mit dem Setup:

    Der Tunnel ist gruen und alles laeuft, ich seh auch Traffic durch den Tunnel durchgehen, aber irgendwie kommt vom Traffic von der Fortigate in Richtung dem Subnet hinter der Fritzbox nichts an, auch wenn es definitiv die Fortigate verlaesst …

    1. Das gleiche Problem habe ich auch. Auch wenn es schon eine Weile her ist, hast du hinter der FritzBox zufällig den Standardbereich 192.178.168.0/24? Ich meine irgendwo mal gelesen zu haben, dass die FBs das grundsätzlich bei VPNs nicht unterstützen. Bevor ich aber die alle Adressen hinter der FB ändere, wäre es gut zu wissen, ob es tatsächlich daran liegt.

      1. Hi Schoo !

        Ja, ich hab das ‘halb’ geloest 🙂 …
        Also das Subnet hinter der Fritzbox ist nicht die default Range …
        Zwei Sachen die im Weg waren:

        Die Fritzbox haelt ein /24 Subnet einer /16 Range die hinter der Fortigate sitzt.
        Nun, normalerweise wenn ich die Routing Table und Ethernet connectivity mit statischen Routen benutze kann ich die /16 Range woanders hin routen auch wenn das lokale /24 ein Teil davon ist. Mit Ipsec funktioniert das nicht, ich geh davon aus dass die Ipsec Route eine hoehere oder gleichwertige Metrik hat wie das lokale Netz.
        Da die letzten Versionen der FB keine Telnet session mehr haben kann ich hier nur raten. Auf anderen Linux Kisten hab ich das so am laufen ohne Probleme …

        Das Problem hab ich geloest indem ich die remote Subnets in kleinere /24 subnets aufgeteilt und damit das lokale subnet uebersprungen habe.

        Danach hatte ich ein Problem das war noch weniger greifbar:
        Benutzer hatten mir berichtet das einige Intranet tools und websites nicht mehr funktionierten, andere aber schon noch und das obwohl die alle im selben subnet sitzen. An einem Punkt sah dass so aus das alle IIS sites ok waren und alles Linux Apache nicht 🙁 …

        Ich hab traces gemacht von den verschluesselten und unverschluesselten Paketen ohne wirklich irgendwas auffaelliges zu sehen ausser das meine Internet Provider alle wirklich schlecht sind (jede Menge Jitter und Retransmits).

        Ich bin dann spaeter mit nem anderen Setup darauf gekommen die Tunnel alle als tcp
        Verbindungen zu konfigurieren und ohne dass das jetzt merklich den Durchsatz verringert haette.

        Da ich die Tunnel bei den Fritzboxen nicht auf tcp umstellen konnte (die option ist da, aber funktioniert hat es nicht) und von AVM’s Seite da auch kein Interesse war hab ich alle 20+ Fritzboxen rausgeschmissen und mit Mikrotik Routern ersetzt und alles funktioniert super !

        Schade dass da nicht mehr kommt von AVM 🙁 …

Leave a Reply

Your email address will not be published. Required fields are marked *