vServer als Router?

  • Hallo,


    ich stehe vor folgendem Problem:
    Ein Kunde würde mir einen VPN Zugang (PPTP) zur Verfügung stellen um ein Projekt durchzuführen. Allerdings will der den Zugang nur für eine feste IP freischalten und ich habe aktuelle nur eine dynamische (DSL).


    Nun habe ich mir gedacht, dass ich meinen vServer (mit fester IP) verwenden könnte um mich in das VPN einzuwählen und dann über den vServer in das VPN routen.


    Allerdings bin ich mir nicht sicher ob ein vServer als Router verwendet werden kann, da iptables ja nicht funktioniert.


    Könnt ihr mir dazu vielleicht eine Auskunft/Hilfestellung geben?


    Danke!


    mfg
    Thomas W

  • Zitat von Werzi2001;9676

    ob ein vServer als Router verwendet werden kann, da iptables ja nicht funktioniert.


    Da hier auf VServer-Linux gesetzt wird, wird Routing aus einem VPN nicht unterstützt, da hierfür IPTables genutzt werden müssen. IPTables steht hier aber nicht zu Verfügung, wir Du bereits richtig festgestellt hast. Eine andere Möglichkeit gibt es leider nicht, deinen VServer als Gateway zu nutzen.


    Du kannst Dich zwar mittels VPN zu deinem Server verbinden, aber diesen nicht als Gateway nutzen.

    Ich biete gratis Remotehands (SSH) für alle Netcup Kunden - von Kunde zu Kunde!
    Dazu einfach eine an mich .

  • Mit TCP könnte dies funktionieren, und dann über SSH ein Port forwarding einrichten.


    1. SSH starten und auf vServer verbinden, mit Port forwarding.
    2. VPN starten, verbindet sich auf den localen Port
    3. Über das Forwarding geht das zum Zielsystem


    Mit UDP wird es nicht funktionieren.


    Bebbo

  • fLoo:
    Genau sowas in die Richtung habe ich bereits befürchtet.


    bebbo:
    Dann müsste ich aber jeden Port weiterleiten den ich brauche und könnte vor Allem auch nur auf jeweils einen Rechner im fremdem Netz zugreifen oder?


    mfg
    Thomas W

  • Zitat

    Dann müsste ich aber jeden Port weiterleiten den ich brauche und könnte vor Allem auch nur auf jeweils einen Rechner im fremdem Netz zugreifen oder?


    Es kann aber nur einer dieses VPN nutzen, aber es sollte alles sichtbar sein.
    Und Du brauchst vermutlich noch etwas, was UDP über TCP tunnelt:


    Code
    TCP 1723 --> SSH tunnel --> TCP 1723
    UDP 47 --> UDP over TCP xy --> SSH tunnel --> TCP xy --> UDP 47


    Sowas wie http://nixbit.com/cat/system/networking/cubehub-tunnel/ könnte da funktionieren.


    Getestet habe ich sowas noch nicht... aber es könnte funktionieren.


    Bebbo

  • Hi nochmal,


    würde es irgendetwas an der Sache ändern wenn es sich um OpenVPN handeln würde?


    Wegen den SSH-Tunnels:
    Wie würde das nochmal genau funktionieren? Für jede Anwendung bräuchte ich dann extra einen oder? Also z.B.


    <vServer>:<DB-Port> Tunnel auf <Rechner im VPN>:<DB-Port>
    <vServer>:80 Tunnel auf <Webserver im VPN>:80
    usw. usf.
    (Das sind immer verschiedene Rechner... kann also nicht einfach alle Ports auf einen Server weiterleiten)


    mfg
    Thomas W


    Edit:
    Oder könnte ich vielleicht direkt OpenVPN über SSH tunneln... bei PPTP habe ich gelesen, dass das nicht geht... wie siehts bei OpenVPN aus?

  • Hallo Thomas,


    bei PPTP muss man GRE-Pakete tunneln, das wird vermutlich weder von ssh noch von netcup unterstützt.


    Bei openvpn muss man meist udp tunneln können. Das dürfte mit bebbos Methode möglich sein. Eine etwas schönere Methode, sofern sie funktioniert, dürfte die Option -D vom ssh client ermöglichen. Dann kannst du beim openvpn client nämlich einfach den mittels ssh erstellten socks proxy angeben.


    Man kann den openvpn server aber auch so konfigurieren, dass er tcp als Transport-Layer benutzt, sprich dann muss tcp getunnelt werden. Das ist natürlich dann mit -L möglich. Das wäre sicherlich am einfachsten.

  • Kann er den pptp-Zugang auch für eine Domain anstatt einer ip freigeben? Dann würde sich ein dyndns-Dienst anbieten. (Ein modernes VPN mit Zertifikaten wäre natürlich schöner.)


    Ansonsten wirst du mit den v-Servern hier wenig Chancen haben, aber es gibt ja auch Anbieter mit einer anderen Virtualisierungstechnik und kurzen Vertragslaufzeiten...

  • Ich denke mal die einfachste Lösung dafür ist irgendwo bei nem anderen Anbieter nen 2€ vServer mit iptables zu mieten.


    Oder halt ggf. Das ganze auf nen Hostname festlegen und dyndns verwenden?



    Grüße

  • Zitat von Lucan;13341

    Ich denke mal die einfachste Lösung dafür ist irgendwo bei nem anderen Anbieter nen 2€ vServer mit iptables zu mieten.


    Es dürfte schwierig sein, einen Anbieter zu finden, bei dem das funktioniert. Eine Lösung würde beispielsweise die eher seltener vorhandenen Module MASQUERADE und DNAT benötigen und außerdem muss das Forwarding erlaubt sein.


    Zitat von Lucan;13341


    Oder halt ggf. Das ganze auf nen Hostname festlegen und dyndns verwenden?


    Stimmt, das könnte funktionieren, hängt aber natürlich davon ab, ob der Hostname bei jedem Verbindungsversuch erneut aufgelöst wird.

  • Zitat

    Es dürfte schwierig sein, einen Anbieter zu finden, bei dem das funktioniert


    Nö, mein netcup-vServer ist der erste von 4 vServern, bei dem das nicht funktioniert.
    Mein Backup/Failover-Server steht aus Redundanzgründen woanders und kostet 1,99€ im Monat. Und dort funzen nicht nur iptables, auch tun/tap-Support und solcher Kram ist mit drin.
    Naja, ich brauche es nicht unbedingt. Dafür kriege ich bei Netcup ordentlich Performance...

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de

  • Zitat von Artimis;13344

    Nö, mein netcup-vServer ist der erste von 4 vServern, bei dem das nicht funktioniert.
    Mein Backup/Failover-Server steht aus Redundanzgründen woanders und kostet 1,99€ im Monat. Und dort funzen nicht nur iptables, auch tun/tap-Support und solcher Kram ist mit drin.


    Deinem "Nö" nach müsstest du das bei allen drei anderen vServern das spezielle Setup getestet haben, von dem hier geredet wird. Und bei dem Setup geht es nicht einfach nur darum, dass iptables benutzt werden kann, sondern um ganz spezielle Module davon.

  • Ja, habe ich bei zweien in der Tat. Der Witz war, dass ich von der Schule aus nur Port 80 und 22 zur Verfügung hatte, wohl aber einen eigenen PC dort. Also flugs nen Tunnel erstellt, VPN getunnelt, vServer als Router, fertig.

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de

  • Zitat von Artimis;13346

    Also flugs nen Tunnel erstellt, VPN getunnelt, vServer als Router, fertig.


    Damit das zu dem hier beschriebenen Fall passt, müsstest du also den Tunnel, durch den du die VPN-Verbindung auf einen anderen Server umleitest, über iptables realisieren. Der Tunnel müsste insbesondere die Quell-Adresse ändern, damit der VPN-Server die feste Adresse deines anderen vServers sieht und nicht die dynamische des Clients. Wie machst du das?

  • Welchen anderen vServer?


    Ich hatte: 2 PCs, 1vServer.
    Der eine PC hat über das reguläre Gateway einen SSH-Tunnel zum vServer geöffnet und VPN getunnelt.
    Der andere PC hat eine VPN-Verbindung zum ersten PC erstellt, der ja zum vServer tunnelte, also eigentlich eine VPN-Verbindung zum vServer. Beim anderen PC habe ich als Standard-Gateway für den WAN-Bereich den vServer im VPN eingetragen.
    Klappte ganz gut, nur weiß ich leider nicht mehr, wie, zumal das einiges an Zeit und Nerven gekostet hat.

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de

  • Ich meinte eigentlich eine Lösung, bei der man iptables direkt verwendet, denn VPN über VPN, dürfte ziemlich eklig werden, obwohl es theoretisch natürlich möglich ist bzw. funktionieren sollte. Allerdings musst du dann, sofern ich mich nicht irre, je VPN-Client, den man durschleusen möchte, eine eigene öffentliche IP haben, auf die man die lokale VPN-IP mittels SNAT und DNAT mappen muss, damit der Rückkanal funktioniert, denn MASQUERADE gibt es bei openvz & virtuozzo nicht.

  • Naja, ne, nicht VPN über VPN, sondern nur ein VPN über einen Tunnel. Wobei der Tunnel auch nur wegen der Protbeschränkung nötig war. War auch recht ekelig, aber es funktionierte...

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de