Linux IP-Routing

  • Ersteller Ersteller TS1990
  • Erstellt am Erstellt am
T

TS1990

Gast
Hi,

ich möchte ein kleines Projekt endlich umsetzen. Ich bin nur derzeit etwas überfragt, wie ich das lösen kann.

Der aktuelle IST-Stand:

Server A im Rechenzentrum, Firewallmäßig nahezu komplett abgeschottet. Dort läuft ein Webserver und ein OpenVPN-Server.
Server B lokal bei mir Zuhause. Dort läuft derzeit ein OpenVPN-Client der die Verbindung zum Server A aufbaut.

Jetzt möchte ich, dass ich nicht auf jedem Client aus dem Netzwerk von Server B einen VPN aktivieren muss.

Mein Plan:
Den Server B als "Relay-Server" zu nutzen. Also, dass der Server die Anfragen für die Ports 3306,443,80 und 8096 annimmt und über den VPN-Tunnel zu Server A routet.

Könnt ihr mir dabei helfen das zu realisieren?

Lieben Gruß,
TS1990
 
Wie würdest du das ganze denn umsetzen? Mir wäre halt nur wichtig, dass jedes Gerät ohne den VPN auskommt, und ich egal über welches Gerät (Handy, PC, etc.) drauf Zugreifen kann.
 
Wenn B von A nur eine einzige IP aus einem privaten Bereich bekommt, musst Du auf B entweder für jeden Service einen eigenen Proxy einrichten und den auf den Clients konfigurieren (brrr) oder NAT auf B konfigurieren und B dann als NAT-Router für die weiteren Clients auf Deiner Seite einsetzen. Ist schon etwas frickelig zu konfigurieren, zumal B sich dann natürlich nicht mit dem normalen Internet-Router, den Du wohl auch benutzen wirst, in die Quere kommen darf.
 
Könnte der TE nicht auf seinem Home-Router eine Route erstellen, die ungefähr wie folgt aussieht:

Destination: <OpenVPN_IP> Rechner A
Netmask: 255.255.255.255
Gateway: <LAN_IP> Rechner B
Interface: <LAN_IP> Home-Router

Nun ist nur noch die Frage offen was über den OpenVPN-Tunnel geroutet wird. Werden die jeweiligen lokalen (eindeutigen) Netze geroutet, muss der TE auf Server B nur noch IP-Forwarding aktivieren und dann sollte es das gewesen sein.

Werden die Netze nicht geroutet muss Server B ein Source-NAT durchführen. Sind die beiden lokalen IP-Bereiche gleich kann sowieso nicht geroutet werden.

Viele Grüsse
 
TS1990 schrieb:
Jetzt möchte ich, dass ich nicht auf jedem Client aus dem Netzwerk von Server B einen VPN aktivieren muss.
Wieso eigentlich? Ich mein, wenn du Server A nur über VPN erreichbar machst - was ja durchaus sinnvoll sein kann - und dann aber x Ports ohne VPN zugänglich machst, widerspricht sich das nicht irgendwie?
 
Drewkev schrieb:
Wieso eigentlich? Ich mein, wenn du Server A nur über VPN erreichbar machst - was ja durchaus sinnvoll sein kann - und dann aber x Ports ohne VPN zugänglich machst, widerspricht sich das nicht irgendwie?

Sinn und Zweck dahinter ist, dass Grundlegend von Außen der VPN benötigt wird. Aber für die Geräte die drauf Zugreifen müssen, was mit unter auch Geräte sein können, die kein VPN können über den Server die Verbindung aufgebaut wird.

So kann von Außen keiner auf den Server/die Ports zugreifen, von intern aber schon.
 
Zuletzt bearbeitet von einem Moderator:
TS1990 schrieb:
Aber für die Geräte die drauf Zugreifen müssen, [...]
Was für Clients sollen das sein? Rein aus Interesse. Das ist auch keine Idee? Oder ändern sich etwa die Geräte regelmäßig?

Wie wäre es gleich mit einem Site-to-Site?
 
  • Gefällt mir
Reaktionen: Lawnmower
Dafür setzt man dann ein Site2Site VPN ein würde ich vorschlagen.
 
  • Gefällt mir
Reaktionen: Lawnmower, honky-tonk und Pummeluff
Wenn man in der client.ovpn die Option "iroute 192.168.1.0 255.255.255.0" setzt (genaue Syntax bitte selbst nachschauen, ich liege gerade im Krankenhaus und hab nur Handy), dann wird im OpenVPN-Server automatisch eine Route in dieses Subnetz über eben diesen Client gesetzt.

Anschließend muss im Betriebssystems des Servers daheim, der als Gateway fungieren soll, zunächst einmal IP-Forwarding aktiviert werden. Damit wird überhaupt erst die Routing-Funktion eingeschaltet. Jetzt nur noch die Firewall des Servers so einstellen, dass in der FORWARD chain in der FILTER table (iptables @ linux) Verbindungen ins VPN-Subnetz forwarded werden. Hier muss entweder default accept stehen oder default drop, aber dann mit einer accept-Regel für das jeweilige Subnetz.
Die Windows-Firewall ist diesbezüglich soweit ich weiß standardmäßig bereits offen.

Nun können Geräte im Heimnetzwerk die VPN-IP über den Heimserver erreichen. Dazu brauchen sie entweder selbst noch eine Route ins VPN via homeServer oder aber im Internetrouter muss eine entsprechende Route angelegt werden.
 
Zurück
Oben