Firewall Regel für OpenVPN Bridge/TAP über IPv6 Verbindung

dosman

Neuer User
Mitglied seit
10 Dez 2006
Beiträge
3
Punkte für Reaktionen
0
Punkte
0
Hallo,

ich hoffe, es gibt eine einfach Antwort für folgende Frage, zu der ich aber leider nichts im Forum gefunden habe:

Welche Firewall-Regel benötige ich, um auf einer FritzBox 7390 OpenVLN Client Anfragen per IPv6 an den OpenVPN Server auf der Box weiterzuleiten?


Das Problem etwas ausführlicher:
1. Bisher: Verbindung über IPv4
Um eine OpenVPN Bridge auf einer sonst unveränderten Box mit Originalfirmware zum laufen zu bekommen, muß man ja eine entsprechende Firewallregel einfügen, damit Anfragen von außen überhaupt an das openvpn Binary weitergeleitet werden. (Wobei ich hier annehme, dass es bzgl. Client/Server Kommunikation egal ist, ob man dann TUN oder TAP nutzt.)
Code:
internet_forwardrules = "tcp 0.0.0.0:443 0.0.0.0:443 0", 
                                "tcp 0.0.0.0:1194 0.0.0.0:1194 0 # VPN TCP";

2. Ziel: Verbindung über IPv6
Nachdem bein Anbieter (Inexio/Quix) nur noch echte IPv6 Adressen vergibt, versuche ich, die Client/Server Verbindung einfach per IPv6 abzuwickeln. (Im VPN nutze ich erstmal weiter IPv4, wobei ich wiederum annehme, dass das bei Bridging sowieso egal ist.)

3. Was funktioniert: IPv6 innerhalb Heimnetz, Portfreigabe für normalen Rechner
3.1 Durch Wechsel von "proto tcp" auf "proto tcp6" funktioniert der Verbindungsaufbau prinipiell. Das habe ich getestet, in dem ich aus meinem Heimnetz an die externe, vom ISP zugewiesene IPv6 Adresse eine Verbindung aufbaue.

3.2 Auch der MyFritz Fernzugang funktioniert vom Heimnetz eines Freundes aus. Daraus schließe ich, dass ich zumindest eine "echte" IPv6 Adresse habe, an die alle Anfragen weitergeleitet werden.

4. Was nicht funktioniert: IPv& forwarding auf die Box von außen
Was nun nicht fuktioniert ist der Verbindungsaufbau des VPN Clients aus dem Heimnetz des besagten Freundes (der übrigens beim selben ISP ist).

5. Firewall Experimente
Ich nehmen nun zumindest an, dass auch hier natürlich eine Firewall-Regel fehlt. Wenn ich eine zu einem meiner Rechner über das Webinterface eintrage, bekomme ich einen Eintrag wie den hier (port und xxxx ersetzen natürlich die echten Daten):
Code:
landevices {
        landevices_version = 2;
        landevices {
                ip = 0.0.0.0;
                name = "Test";
                mac = 00:00:00:00:00:00;
                medium = medium_unknown;
                auto_etherwake = no;
                ifaceid = ::xxxx:xxxx:xxxx:xxxx;
                type = neightype_unknown;
                staticlease = no;
                ipv6firewall {
                        enabled = yes;
                        exposed_host = no;
                        ping6_allowed = yes;
                        rules = "TCP port-port";
                }

Das ist schonmal eine ganz andere Stelle als die, an der die IPv4 Firewall-Regen stehen, was mir erstmal nicht einleuchtet.

Ich habe dann per Hand folgendes versucht:
Code:
ifaceid=::;
oder die xxxx durch die Interface ID des lan interfaces zu ersetzen (die habe ich per ifconfig auf per telnet rausgefunden.
Code:
ifaceid = ::xxxx:xxxx:xxxx:xxxx;

Beides funktioniert leider aber auch nicht.

(Übrigens haben die lan:0 und lan:1 Schnittstellen beide nur IPv4 Adressen, falls das relevant ist; nur lan hat eine IPv6).

6. Zusammengefaßt
Ich finde viele Berichte, wie man IPv6 innerhalb eines gerouteten VPN spricht, ich möchte eigentlich alles lassen wie es ist, nur für die Verbindung eben IPv6 Adressen nehmen.

Ich hoffe natürlich, dass das für die, bei denen das bereits läuft eine einfache Frage ist. :)

Vielen Dank schonmal für alle, die den langen Text lesen, aber ich wollte lieber mehr Infos liefern als zu wenig.
 
Zuletzt bearbeitet:
Habe mich heute mal ein wenig mit dem Thema beschäftigt.

Zum Eintrag "internet_forwardrules": Hiermit erstellst Du explizit eine Firewall-Regel für IPv4 (0.0.0.0) - bei IPv6 ändert die nichts. Mit ifaceid, bzw. direkte IPv6-Freigabe im Web-Interface habe ich auch probiert, allerdings wie Du ohne Erfolg.

Zum Schluss habe ich dann mal geprüft, wie die Freigaben aussehen, wenn man Port 443 per Internet freigibt. Hierüber habe ich dann die entscheidende Stelle in der ar7.cfg gefunden:
Es gibt einen Bereich der mit "ipv6 {" anfängt. Darunter gibt es den Bereich "firewall", der bei mir so aussah:
Code:
        firewall {
                enabled = yes;
                exposed_host = no;
                ping6_allowed = no;
        }
Ich habe hier jetzt noch folgende Zeile eingefügt:
Code:
                rules = "TCP 1194";
und die Box neu gestartet. Zu Testzwecken kann es auch hilfreich sein, ping6_allowed auf "Yes" zu stellen

Zusätzlich musste ich in der Freetz OpenVPN Config noch die Einstellung "IPv6 benutzen" aktivieren. Weitere Ports können mit Komma getrennt angehängt werden (z.B. "TCP 1194", "UDP 500", "UDP 4500" wenn man auch noch den Fritz-VPN-Zugang freigeben möchte)
 
Habe mich heute mal ein wenig mit dem Thema beschäftigt.
Zum Schluss habe ich dann mal geprüft, wie die Freigaben aussehen, wenn man Port 443 per Internet freigibt. Hierüber habe ich dann die entscheidende Stelle in der ar7.cfg gefunden:
Es gibt einen Bereich der mit "ipv6 {" anfängt. Darunter gibt es den Bereich "firewall", der bei mir so aussah:
Code:
        firewall {
                enabled = yes;
                exposed_host = no;
                ping6_allowed = no;
        }
Ich habe hier jetzt noch folgende Zeile eingefügt:
Code:
                rules = "TCP 1194";
und die Box neu gestartet. Zu Testzwecken kann es auch hilfreich sein, ping6_allowed auf "Yes" zu stellen

Vielen Dank, grade weil das hier schon ein "altes" Thema ist, freue ich mich besonders über die Hilfe.

Das Experiment mit der Freigabe von Port 443 per GUI hatte ich auch versucht - dann aber wohl die Regel an der falschen Stelle eingetragen (s.o.). Dort scheint sie übrigens wohl auch nach einiger Zeit zu verschwinden.

Ich poste, sobald ich diese Änderung bei mir getestet habe. Denn leider stelle ich nun wieder ein anderes Grundproblem fest: fast alle Freunde, von denen aus ich die Firewall Einstellungen testen könnte, haben alte Anschlüsse und bekommen überhaupt "nur" IPv4. Kann also wieder ein paar Tage dauern.

Da ich übrigens kein Freetz, sondern eine unmodifizierte Box verwende: um OpenVPN über IPv6 (und eben nicht umgekehrt) zu nutzen, muss in die native Config übrigens folgendes
Code:
server tcp6 # statt tcp für ipv4
bzw.
Code:
client tcp6 # statt tcp für ipv4

Total trivial, wenn man es weiß, aber man suche mal auf der offiziellen Man Page danach (sonst findet man auch nur Fragen, wie man IPv6 über OpenVPN zum Laufen bekommt):
https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage


Liggy, nochmal vielen Dank!
 
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.