OpenVPN und DNS über die VPN-Verbindung auf einem V-Server

  • Liebe Leser,

    habe seit ein paar Monaten zwei Root-Server angemietet, klappt prima, aber jetzt bin ich auf ein Problem gestoßen, wo ich nicht weiter weiß, vielleicht hat sich schon mal jemand mit dieser Sache beschäftigt, es geht um die Absicherung per VPN.

    Ich habe da herumprobiert.

    Der Server ist ein Debian Wheezy.

    Zunächst den OpenVPN AS installiert, läuft prima, aber nur 2 Lizenzen gleichzeitig, das war mir zu wenig, weil ich mehr als 2 Verbindungen möchte.

    Dann den openvpn installiert und konfiguriert. udp und tun, Client ist ein Windows-10 PC mit openvpn. Verbindung zum Server klappt prima, muss sagen, der v-server macht sein Ding schnell und gut. Ich bekomme die lokale IP vom Server 172.16.0.4.

    Nun habe ich die Sache aber so verstanden, dass beim Surfen weiterhin der vom System zuhause vorgegebenen DNS-Server zur Auflösung der Adressen verwendet werden (was mir der Befehl nslookup in der DOS-Box belegt, er lässt die in der Fritz-Box eingetragenen Server nachschauen) und mir wäre es lieber, wenn ich während der VPN-Verbindung auch den DNS-Server auf dem V-Server (also der selbe wie auch das openvpn zur Verfügung stellt) nutzen könnte. Als DNS-Server habe ich also den unbound installiert und zum Laufen gebracht. Wenn ich nun testweise vorübergehend in der Fritz-Box die IP meinen V-Servers eintrage, läufts. In der unbound-conf kann ich ja über access-Control einstellen, welche IP Zugriff haben soll. Was ich vermeiden möchte, dass mein DNS auf Anfragen von allen Servern regiert.
    Dann habe ich herausgefunden, dass man beim Aufbau einer VPN-Verbindung mittels PUSH DHCP DNS x.x.x.x einen DNS-Server mitgeben kann. Trage ich da die IP meines V-Servers ein, dann läufts. Und wenn ich in der unbound-conf meine von der Telekom zugewiesene IP als Voraussetzung zum Access eintrage, dann gehts auch noch. Daraus folgere ich, dass die Pakete mit den DNS-Anfragen von meinem PC aus an den V-Server gehen, nicht aber über die sichere getunnelte Verbindung, sonst würde man doch eine interne IP als Access eintragen müssen und nicht die externe, oder liege ich da falsch?

    Ich würde aber gerne auch die DNS Anfragen über den VPN-Tunnel schicken und sicherstellen, dass der DNS-Server (unbound) nur darauf reagiert. Da sich meine von der Telekom zugewiesene IP dauernd ändert, müsste das ja am unbound immer wieder angepasst werden.

    Den openvpn mit ethernet-bridging zu konfigurieren, komme ich nicht weiter, weil ich ja kein lokales Netz habe. Aber könnte das helfen?


    Hat jemand eine Idee oder kann vielleicht einen Link auf eine Anleitung posten?


    Vielen Dank und viele Grüße

    Johann

  • Dann habe ich herausgefunden, dass man beim Aufbau einer VPN-Verbindung mittels PUSH DHCP DNS x.x.x.x einen DNS-Server mitgeben kann. Trage ich da die IP meines V-Servers ein, dann läufts. Und wenn ich in der unbound-conf meine von der Telekom zugewiesene IP als Voraussetzung zum Access eintrage, dann gehts auch noch. Daraus folgere ich, dass die Pakete mit den DNS-Anfragen von meinem PC aus an den V-Server gehen, nicht aber über die sichere getunnelte Verbindung, sonst würde man doch eine interne IP als Access eintragen müssen und nicht die externe, oder liege ich da falsch?

    Richtig, für den interen Zugriff auf deinen DNS-Server musst du auch über die interne IP auf ihn zugreifen!

    Die externe IP wird ja "von außen" auf den Server geroutet, es sei denn du hast manuell eine Route zu der IP erstellt, welche über dein TAP-Interface führt.

    Ich würde aber gerne auch die DNS Anfragen über den VPN-Tunnel schicken und sicherstellen, dass der DNS-Server (unbound) nur darauf reagiert. Da sich meine von der Telekom zugewiesene IP dauernd ändert, müsste das ja am unbound immer wieder angepasst werden.

    Hilft nicht einfach eine Verringerung der Metrik deines TAP-Interfaces bzw. der default Route? Dann würde einfach dein gesamter Traffic über den VPN laufen! Die Metrik bei Netzwerkadaptern unter Windows kannst du in den erweiterten Einstellungen zur IP-Konfiguration auch manuell setzen, z. B. für dein TAP-Interface auf den Wert 0. So hab ichs zumindest bei meinem gemacht, damit der gesamte Traffic - falls mit VPN verbunden - auch über eben diesen Tunnel läuft.


    EDIT: Vielleicht sage ich noch dazu: Ich nutze den Softether VPN mit eigenem internem Subnetz für das VPN (192.168.11.0/24). IP-Adressvergabe über DNSMASQ für IPv4 und IPv6. Dient bei mir vor allem als IPv6-Gateway, da mein DSL-Anschluss nur IPv4 bietet. Als DNS-Server reiche ich die Public DNS von Google durch (IPv4 & IPv6). Falls nicht mit VPN verbunden nutzt mein Rechner den Heimrouter als DNS Resolver.


    Gruß Oli

  • Guten morgen,

    wenn du den DNS über die FritzBox aufruft, aber den Tunnel über Windows baust, kann das nix werden:

    Windows fragt bei der FritzBox nach, die ja aber nur den öffentlichen Weg zu deinem VPS kennt.


    Die DNS-Server-IP muss die IP des V-Servers auf dem TUN/TAP-Interface sein, damit es durch den Tunnel geroutet wird.


    Und natürlich nur auf dem Gerät, was den Tunnel aufbaut!


    Die FB hat ja keine Route in deinen Windows - PC - Tunnel , und kann die DNS-Pakete so nicht per VPN schicken.


    Viele Grüße

    margau

  • Hallo!

    Vielen Dank für Eure Beiträge, vor allem der von margau hat mich bestätigt, nochmal den Server neu aufzusetzen. Und tatsächlich, wenn man im openvpn-Server-Config den Befehl push "dhcp-option DNS 10.8.0.1" aufführt und unbound auf dem 10.8.0.1 hört, dann klappt das auch.


    Vielen Dank und schöne Grüße

    Johann