Routing-Ausnahme?

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Routing-Ausnahme?

Beitrag von Natureshadow » 11.06.2012 22:28:28

Hi,

mein Notebook baut einen VPN-Tunnel über Tinc zu einem Server auf, über den ich ins Internet routen kann.

Das System ist umfangreich gefirewallt. Eigentlich möchte ich, dass ausschließlich der VPN-Traffic über das echte Netzwerkinterface geht und aller Internet-Traffic durch den Tunnel.

So, die Firewallkonfig dafür ist trivial und die Standardroute durch den Tunnel setzen kann ich natürlich auch, eine statische Route für den VPN-Endpunkt ist auch trivial.

Das Problem ist, dass das Notebook tatsächlich unterwegs genutzt wird und sich sowohl das Interface, über das ich ins Internet komme, als auch die Gateway-IP, um den VPN-Endpunkt zu erreichen, laufend ändern.

Wie kann ich das gewünschte System trotzdem erreichen?

(Lösung per Skript ist klar - aber geht da auch was dynamisches?)

-nik

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Routing-Ausnahme?

Beitrag von Cae » 11.06.2012 23:12:01

Mal ein bisschen gesponnen: Kann man den default-Router nicht auf dem lokalen Gateway belassen und mit iptables eine Regel stricken, die alles bis auf $vpnport zu $tunnelpartner mit ESTABLISHED,RELATED (auch NEW?) auf das tun-Device forwarded und dort im POSTROUTING NATtet? Okay, sind zwei Regeln. Dann wäre halt der Standardgateway dynamisch, aber dafür gibt's ja DHCP. Ich kann mich erinnern, bei so einem Problem mal allerdings ergebnislos herumgespielt zu haben.

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: Routing-Ausnahme?

Beitrag von Natureshadow » 11.06.2012 23:22:51

Guter Plan!

-nik

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: Routing-Ausnahme?

Beitrag von Natureshadow » 12.06.2012 00:44:07

So, hier mal, was ich gemacht habe (Debianshorewall kann es mal wieder alles ...)

88.198.107.26 ist die IP meines VPN-Endpunkts
172.29.10.1 ist die interne VPN-IP des Gateways

/etc/shorewall/providers:

Code: Alles auswählen

#
# Shorewall version 4 - Providers File
#
# For information about entries in this file, type "man shorewall-providers"
#
# For additional information, see http://shorewall.net/MultiISP.html
#
############################################################################################
#NAME   NUMBER  MARK    DUPLICATE       INTERFACE       GATEWAY         OPTIONS         COPY
Tinc    1       1       main            tap0            172.29.10.1     track           none
/etc/shorewall/tcrules:

Code: Alles auswählen

#
# Shorewall version 4 - Tcrules File
#
# For information about entries in this file, type "man shorewall-tcrules"
#
# See http://shorewall.net/traffic_shaping.htm for additional information.
# For usage in selecting among multiple ISPs, see
# http://shorewall.net/MultiISP.html
#
# See http://shorewall.net/PacketMarking.html for a detailed description of
# the Netfilter/Shorewall packet marking mechanism.
##########################################################################################################################################
#ACTION SOURCE          DEST            PROTO   DEST    SOURCE  USER    TEST    LENGTH  TOS   CONNBYTES         HELPER    PROBABILITY DSCP
#                                               PORT(S) PORT(S)
1       -               88.198.107.26   tcp     1:654,656:65535
1       -               88.198.107.26   udp     1:654,656:65535
1       -               88.198.107.26   icmp
/etc/shorewall/rtrules:

Code: Alles auswählen

#
# Shorewall version 4 - route rules File
#
# For information about entries in this file, type "man shorewall-rtrules"
#
# For additional information, see http://www.shorewall.net/MultiISP.html
####################################################################################
#SOURCE                 DEST                    PROVIDER        PRIORITY        MASK
-                       88.198.107.26           main            11000
lo                      -                       Tinc            11001
Bleiben noch ein paar Problemchen:
  • Der doofe NetworkManager überschreibt den VPN-Nameserver in resolv.conf
  • Das Routing von Traffic zum VPN-Endpunkt für Ports außer 655 /also die tcrules) greifen noch nicht so richtig
  • Wie komme ich jetzt an Hosts, die im lokalen Netz sind, über das ich route, und die ich vom Notebook aus erreichen muss? Also wenn ich an wlan0 jetzt 192.168.0.0/24 habe, dann fällt das ja jetzt in die Routingregel für Tinc. Und da ich ja roame, kann ich da auch nicht wirklich was konfigurieren ... ich könnte jetzt einfach das Routing für alle privaten Adressbereiche auf main legen, aber wenn ich dann mal öffentliche Adressen habe ...
Aber super Plan, Cae ;)!

-nik

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: Routing-Ausnahme?

Beitrag von Cae » 12.06.2012 01:20:21

Natureshadow hat geschrieben:
  • Der doofe NetworkManager überschreibt den VPN-Nameserver in resolv.conf
/etc/resolvconf/resolvconf.d/base? Ich hab' den Mechanismus da nicht verstanden, auch nicht, wozu das gut sein soll, aber die Nameserver in der base überleben das Rumgefrickel vom neumodischen resolv-irgendwas.

Das lokale Netz müsste man sich eigentlich statisch wieder auf das echte Interface routen und das Forwarding kaputt machen. Nur ist ein statischer Eintrag bei wechselden Netzen nicht so dolle. 10.0.0.0/8 und so weiter? Auch blöde, irgendwie, inbesondere weil der Tunnel auch drin liegt.
Natureshadow hat geschrieben:Aber super Plan, Cae ;)!
Danke! ;)

Gruß Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.

—Bruce Schneier

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: Routing-Ausnahme?

Beitrag von Natureshadow » 12.06.2012 01:23:39

Cae hat geschrieben: Das lokale Netz müsste man sich eigentlich statisch wieder auf das echte Interface routen und das Forwarding kaputt machen. Nur ist ein statischer Eintrag bei wechselden Netzen nicht so dolle. 10.0.0.0/8 und so weiter? Auch blöde, irgendwie, inbesondere weil der Tunnel auch drin liegt.
Nö, das mit dem Tunnel ist egal. Ich habe jetzt einfach 10.0.0.0/8, 172.16.0.0/12 und 192.168.0.0/16 auf die main-Tabelle gelegt - die Route in das Tunnelnetz steht da ja drin, das klappt prima. Generell ist sowieso jeder Traffic auf den Interfaces gedroppt.

/etc/shorewall/rtrules:

Code: Alles auswählen

#
# Shorewall version 4 - route rules File
#
# For information about entries in this file, type "man shorewall-rtrules"
#
# For additional information, see http://www.shorewall.net/MultiISP.html
####################################################################################
#SOURCE                 DEST                    PROVIDER        PRIORITY        MASK
-                       88.198.107.26           main            11000
-                       10.0.0.0/8              main            11001
-                       172.16.0.0/12           main            11001
-                       192.168.0.0/16          main            11001
-                       0.0.0.0/0               Tinc            11002

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: Routing-Ausnahme?

Beitrag von Natureshadow » 12.06.2012 11:53:07

So, ich hatte noch das Problem, dass bei konfigurierter Firewall der VPN-Tunnel nicht neu aufgebaut werden konnte. Das, äh, lag an einem Zahlendreher im Port :oops: ...

Jetzt ist noch das Problem, dass ich irgendwie die externe Adresse des VPN-Servers nicht mehr erreichen kann, weder durch den Tunnel noch außen rum (natürlich, nachdem ich den Traffic in der Firewall erlaubt habe).

Wie kommt das?

Benutzeravatar
pangu
Beiträge: 1400
Registriert: 15.11.2011 20:50:52
Lizenz eigener Beiträge: GNU General Public License
Wohnort: /proc/1

Re: Routing-Ausnahme?

Beitrag von pangu » 12.06.2012 12:04:38

Hi nik,

vielleicht hast du auf dem remote host sowas aehnliches fail2ban am Laufen oder sonstige Tools, die dich nun -aus welchen Gründen auch immer- blocken? ich hatte mal einen ähnlichen Fall, und hatte mich zu Tode gesucht bis ich drauf kam dass ich auf der fail2ban Liste sas. Hatte nämlich ewig rumprobiert und anhand der vielen Test-connects wurde ich verbannt *lol* nur so als Idee, vielleicht ist ja bei dir so was aehnliches passiert dass dich eine von deinen vielen "firewalls" blockt.

Ansonsten gibts beim Pendand openvpn den Eintrag push "redirect-gateway def1" in der config mit der man solche Sachen regeln kann. Ich kenne deine OpenVPN-Lösung nicht, aber vllt. gibts da ähnliches.

Grüße,
Pangu
Man gibt Geld aus, das man nicht hat, um damit Dinge zu kaufen, die man nicht braucht, um damit Leute zu beeindrucken, die man nicht mag.

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: Routing-Ausnahme?

Beitrag von Natureshadow » 12.06.2012 15:08:46

Nene ...

Antworten