**Ubuntu verwendet standardmäßig den DNS-Over-UDP-Port (53) selber. Dies kann sehr hinderlich sein, wenn man seinen eigenen DNS-Server betreiben, oder ihn an einen Container weitergeben möchte. Ich zeige euch, wie ihr den Port auf Ubuntu freigeben und selber nutzen könnt.** ## Vorwort Ich empfehle zunächst nur erfahrenen Benutzern dazu eine solche Änderung vorzunehmen. ## Analyse Zunächst analysieren wir, von welchem Dienst der Port 53 genutzt wird. Das kann mit diesem Kommando ausgelesen werden: ``` sudo lsof -i :53 ``` Die Ausgabe sieht in etwa so aus: ``` root@ubnt:/home/root# lsof -i :53 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME systemd-r 634 systemd-resolve 13u IPv4 19902 0t0 UDP localhost:domain systemd-r 634 systemd-resolve 14u IPv4 19903 0t0 TCP localhost:domain (LISTEN) root@ubnt-core-a:/home/root# ``` Sollte hier keine Ausgabe erfolgen, so ist vermutlich der Port 53 nicht in Verwendung! Wir können anhand der Ausgabe erkennen, dass der Port 53 vom Systemdienst ```systemd-resolved``` verwendet wird. Anpassung der Konfiguration zum Freigeben Nach dem wir wissen, das der Systemdienst den DNS-Port belegt, können wir die Konfiguration anpassen, um den Port für unsere Zwecke frei zu bekommen. Dazu bearbeiten wir die Datei ```/etc/systemd/resolved.conf``` idealerweise mit der Software nano: ```sudo nano /etc/systemd/resolved.conf``` Die Datei sieht wie folgt aus: ``` # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it under the # terms of the GNU Lesser General Public License as published by the Free # Software Foundation; either version 2.1 of the License, or (at your option) # any later version. # # Entries in this file show the compile time defaults. Local configuration # should be created by either modifying this file, or by creating "drop-ins" in # the resolved.conf.d/ subdirectory. The latter is generally recommended. # Defaults can be restored by simply deleting this file and all drop-ins. # # Use 'systemd-analyze cat-config systemd/resolved.conf' to display the full config. # # See resolved.conf(5) for details. [Resolve] # Some examples of DNS servers which may be used for DNS= and FallbackDNS=: # Cloudflare: 1.1.1.1#cloudflare-dns.com 1.0.0.1#cloudflare-dns.com 2606:4700:4700::1111#cloudflare-dns.com 2606:4700:4700::1001#cloudflare-dns.com # Google: 8.8.8.8#dns.google 8.8.4.4#dns.google 2001:4860:4860::8888#dns.google 2001:4860:4860::8844#dns.google # Quad9: 9.9.9.9#dns.quad9.net 149.112.112.112#dns.quad9.net 2620:fe::fe#dns.quad9.net 2620:fe::9#dns.quad9.net #DNS= #FallbackDNS= #Domains= #DNSSEC=no #DNSOverTLS=no #MulticastDNS=no #LLMNR=no #Cache=no-negative #CacheFromLocalhost=no #DNSStubListener=yes #DNSStubListenerExtra= #ReadEtcHosts=yes #ResolveUnicastSingleLabel=no ``` Wir entfernen die Raute (#) vor der Zeile (DNS=) und geben einen Sinnvollen DNS-Server ein z.B. ```1.1.1.1``` oder ```8.8.8.8``` oder im Heimnetzwerk die Adresse ihres Routers. Wir entfernen die Raute (#) vor der Zeile (DNSStubListener=) und geben als Wert ```no``` an. Wir speichern die Datei so ab. ```Strg + x``` -> ```Y``` -> ```Enter```. Damit ist das Gröbste geschafft. Nun folgt noch ein weiterer Schritt, bevor Sie das System neu starten müssen. Lassen Sie uns einen Symbol-Link erstellen, der von ```/run/systemd/resolve/resolv.conf``` auf ```/etc/resolv.conf``` verweist. Führen Sie dazu dieses Kommando aus: ``` sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf ``` Die Parameter für diesen Befehl sind: * -s: Erstellt einen Symbol-Link und keinen Hard-Link * -f: Entfernt das Ziel, wenn es existiert (```/etc/resolv.conf```) Abschluss Nun fehlt Ihnen nur noch ein Neustart des Systems. Danach ist der DNS-Port (53) frei zur Verwendung durch Drittsoftware. Ich hoffe euch hat dieser Artikel weitergeholfen und ich freue mich euch im nächsten Artikel wieder zu lesen