Tech

OpenVPN unter Ubuntu 18.04, den DNS Server richtig setzten

Kürzlich stand ich vor dem Problem, dass unter Ubuntu 18.04, nach dem Aufbau einer OpenVPN Verbindung der DNS Server nicht korrekt gesetzt wurde. Die identische Konfiguration funktioniert jedoch unter Windows und iOS. In diesem Artikel teile ich mit euch, wie ich das Problem habe lösen können.

Eigentlich sollte es ausreichen, das Paket openvpn-systemd-resolved mittels APT zu installieren. Das Paket stellt ein Skript zur verfügung, welches zwischen OpenVPN und systemd-resolve via DBus kommuniziert. 

Zuerst installiert ihr das Paket …

sudo apt install openvpn-systemd-resolved

… und im Anschluss fügt ihr in eurer .OVPN Konfigurationsdatei die folgenden Zeilen ein. Auf- und Abbau der Verbindung wird dann das Skripts aufgerufen, welches sich um das setzen des DNS Servers kümmert :

script-security 2
up /etc/openvpn/update-systemd-resolved
down /etc/openvpn/update-systemd-resolved

Bei mir hat das leider noch nicht gereicht.

Auf GitHub bin ich über das Repository von "jonathanio" gestolpert in welchem er ein Hilfsskript zur Verfügung stellt welches den DNS Server nach Aufbau der Verbindung setzen soll.

Anstatt das Original update-systemd-resolved Skript (in /etc/openvpn) zu überschreiben, habe ich es als eigenes Skript in einem anderen Ordner abgelegt

sudo mkdir -p /etc/openvpn/scripts
sudo wget https://raw.githubusercontent.com/jonathanio/update-systemd-resolved/master/update-systemd-resolved -P /etc/openvpn/scripts/
sudo chmod 755 /etc/openvpn/scripts/update-systemd-resolved

Anschließend muss noch die .OVPN angepasst werden damit anstelle des Originals das Skript verwendet wird:

script-security 2
up /etc/openvpn/scripts/update-systemd-resolved
down /etc/openvpn/scripts/update-systemd-resolved

Jetzt sollte beim Auf- und Abbau der DNS Server richtig gesetzt werden.

Thomas Götten
2 COMMENTS
  • Christian Franke
    Antworten

    Ich bin etwas verwundert ueber diese Empfehlung/Erfahrung. Tatsaechlich enthaelt das Ubuntu Package genau das Skript von jonathanio.

    Wenn ich einen Diff zwischen dem Skript im aktuellem master-Branch des Repositories und dem Skript aus dem Package mache, sehe ich als einzige Aenderung, dass ein Rechtschreibfehler in einer Log-Ausgabe behoben wurde, nichts was einen semantischen Unterschied verursachen sollte.

    Wie sieht das denn bei dir aus?

    1. Thomas Götten
      Antworten

      Hi Christian,

      vermutlich wurde mein Problem zweischenzeitlich gelöst. Seit meinem Beitrag sind ja auch schon ein paar Monate vergangen 😉

      Ubuntu nutze ich aktuell nicht mehr, ich bin auf Arch Linux umgestiegen. Mit Manjaro habe ich ganz gute Erfahrungen gemacht. Nur die Nvidia Grafikkarte bei meinem XPS 15 will noch nicht so wie ich will 😉

      Gruß
      Thomas

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.