Frage zu Adguard DNS Server Einstellungen
Hallo,
ich habe hinter der Fritzbox eine PI mit Adguard laufen. Der Adguard ist der DNS Server. Dort habe ich div. Upstream-DNS-Server eingestellt:
tls:dns3.digitalcourage.de
tls:one.one.one.one
tls:1dot1dot1dot1.cloudflare-dns.com
Ich dachte, durch "tls:...." wird DNS over TLS verwendet. Wenn ich aber in das Anfragenprotokoll des Adguard schaue, steht da nur "normales DNS". DNSSEC ist auch aktiviert, davon taucht auch nirgendwo was auf.
Ist das so korrekt?
Danke
ich habe hinter der Fritzbox eine PI mit Adguard laufen. Der Adguard ist der DNS Server. Dort habe ich div. Upstream-DNS-Server eingestellt:
tls:dns3.digitalcourage.de
tls:one.one.one.one
tls:1dot1dot1dot1.cloudflare-dns.com
Ich dachte, durch "tls:...." wird DNS over TLS verwendet. Wenn ich aber in das Anfragenprotokoll des Adguard schaue, steht da nur "normales DNS". DNSSEC ist auch aktiviert, davon taucht auch nirgendwo was auf.
Ist das so korrekt?
Danke
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 63699124439
Url: https://administrator.de/contentid/63699124439
Ausgedruckt am: 19.11.2024 um 11:11 Uhr
34 Kommentare
Neuester Kommentar
Einfach mal ein apt install tcpdump machen auf dem Pi und checken mit tcpdump -i eth0 port 853 ob dort DoT Traffic an die Upstram DNS Server geht. 😉
Das schafft dann Gewissheit.
https://blog.daniel.wydler.eu/2021/02/21/adguard-home-im-netzwerk-implem ...
Das schafft dann Gewissheit.
https://blog.daniel.wydler.eu/2021/02/21/adguard-home-im-netzwerk-implem ...
Moin,
Gruß,
Dani
tls:dns3.digitalcourage.de
tls:one.one.one.one
tls:1dot1dot1dot1.cloudflare-dns.com
meiner Meinung nach fehlen die beiden Slashes nach dem Protokoll (z.B. tls://). Siehe auch hier.tls:one.one.one.one
tls:1dot1dot1dot1.cloudflare-dns.com
Ist das so korrekt?
Was sagt den der "Test upstreams"?Gruß,
Dani
Moin,
Wenn die Voraussetzungen stimmen, kannst du das SSL-Zertifikat mit Hilfe von certbot (in Form eines Containers) abrufen. Ich würde hierbei auf ACME via dns-01 Challenge setzen. Somit muss nämlich nicht der Port 80 aus dem Internet erreichbar sein. Dies wäre nämlich erforderlich wenn du ACME via http-01 Challenge nutzen möchtest.
Gruß,
Dani
Mein Fehler, an das Zertifikat hab ich gar nicht mehr gedacht, dachte das würde im Container automatisch eingerichtet.
Nein, wird es nicht.Wie bekomme ich Zertifikate in den Docker Container bzw. bringe Docker dazu welcher zu erstellen und auch im Updatefall wieder mit einzubinden? In der Lösung auf dem vserver war ja eine Domain im Spiel.
du brauchst im LAN ebenfalls eine Domain, auf die dein AdGuard reagiert. Dabei ist zu beachten, dass es sich um eine Domain mit einer öffentliche TLD handelt. Sprich kein .local, .loc, .i, etc. Anderenfalls kannst du dafür nämlich kein Zertifikat bei den öffentlichen CAs abrufen.Wenn die Voraussetzungen stimmen, kannst du das SSL-Zertifikat mit Hilfe von certbot (in Form eines Containers) abrufen. Ich würde hierbei auf ACME via dns-01 Challenge setzen. Somit muss nämlich nicht der Port 80 aus dem Internet erreichbar sein. Dies wäre nämlich erforderlich wenn du ACME via http-01 Challenge nutzen möchtest.
Gruß,
Dani
Moin,
Gruß,
Dani
Wäre das dann z.B. das hier:
wenn du das alle 90 Tage manuell tun möchtest, kann das funktionieren. Alternativ und klassisch in Verbindung mit ACME. Somit fällt die manuelle Tätigkeit weg. Setzt natürlich voraus, dass dein DNS Hoster in der Liste der unterstützten Anbieter von ACME auftaucht.Muss ich beim Domainanbieter was in DNS Einstellungen ändern?
In der Regel nicht. Wir wissen aber auch nicht, was du für Einstellungen getätigt hast.Die Domain sollte von Außen nicht aufgelöst werden können.
Erst einmal nicht. Wichtig ist, dass auf den FQDN Dein AdGuard angesprochen werden kann.Gruß,
Dani
Dafür gibt es cronjob 😉
Frohe Ostern allen!
Zertifikate brauchst du für den Adguard nur wenn du daheim per SSL auf die Weboberfläche zugreifen willst ansonsten sind die für DNSoTLS nicht nötig.
Brauchst du auch für andere Maschinen Certs kannst du folgendes machen.
Bei https://desec.io (non-profit organization based in Berlin) einen kostenlosen Account erstellen. Bei Netcup für die entsprechende Domain dann die Nameserver auf die bei https://desec.io zeigen lassen und dort deine Records hinterlegen. Abschließend noch einen API-Key generieren lassen. Dann kannst du daheim Let's Encrypt mit DNS-Challenge-Verifizierung nutzen denn die API von desec.io ist in den gängigen Implementierungen wie Certbot oder acme.sh schon enthalten.
Somit hast du dann auch die Möglichkeit Wildcard-Zertifikate via Let's Encrypt erstellen zu können, was mit der http Challenge dagegen nicht möglich ist. Eingehende Ports müssen dafür nicht geöffnet werden da die Validierung ja durch einen DNS-Record-Abfrage bei desec.io durchgeführt wird.
Gruß pp.
Brauchst du auch für andere Maschinen Certs kannst du folgendes machen.
Bei https://desec.io (non-profit organization based in Berlin) einen kostenlosen Account erstellen. Bei Netcup für die entsprechende Domain dann die Nameserver auf die bei https://desec.io zeigen lassen und dort deine Records hinterlegen. Abschließend noch einen API-Key generieren lassen. Dann kannst du daheim Let's Encrypt mit DNS-Challenge-Verifizierung nutzen denn die API von desec.io ist in den gängigen Implementierungen wie Certbot oder acme.sh schon enthalten.
Somit hast du dann auch die Möglichkeit Wildcard-Zertifikate via Let's Encrypt erstellen zu können, was mit der http Challenge dagegen nicht möglich ist. Eingehende Ports müssen dafür nicht geöffnet werden da die Validierung ja durch einen DNS-Record-Abfrage bei desec.io durchgeführt wird.
Gruß pp.
@michi1983
@puderpader
@itstrue
Gruß,
Dani
Gruß,
Dani
Dafür gibt es cronjob 😉
Bitte vollständig zitieren und den Link anschauen. dort wird DNS-01 verwendet und manuell den notwendigen TXT Eintrag gesetzt. Drauf habe ich meine Antwort bezogen.@puderpader
Zertifikate brauchst du für den Adguard nur wenn du daheim per SSL auf die Weboberfläche zugreifen willst ansonsten sind die für DNSoTLS nicht nötig.
Es werden Zertifikate benötigt, wenn AdGuard für deine Clients DoH und DoT anbieten soll. Darauf habe ich bezogen. Für Upstream ist das nicht relevant. Hier ist nur wichtig, dass die Zertifikate der CAs, welche die Zertifikate ausgestellt haben, hinterlegt sind. Was bei meinem aktuellen Linux meistens der Fall ist.@itstrue
1. Adguard zeigt im Anfrageprotokoll normales DNS an, ich möchte natürlich DNS oder TLS nutzen
Geht es dir um die Verbindung zwischen Client <-> Dein Adguard oder AdGuard -> Upstream Server?Gruß,
Dani
Gruß,
Dani
Quote from @Dani:
@michi1983
@michi1983
Dafür gibt es cronjob 😉
Bitte vollständig zitieren und den Link anschauen. dort wird DNS-01 verwendet und manuell den notwendigen TXT Eintrag gesetzt. Drauf habe ich meine Antwort bezogen.Bin mir nicht sicher ob wir aneinander vorbei reden. Den txt Eintrag setzt du nur einmalig, danach kannst du cronjob alle x Tage das Cert erneuern lassen. Wo genau ist an meiner Antwort jetzt was „falsch“?
Zitat von @michi1983:
Bin mir nicht sicher ob wir aneinander vorbei reden. Den txt Eintrag setzt du nur einmalig, danach kannst du cronjob alle x Tage das Cert erneuern lassen. Wo genau ist an meiner Antwort jetzt was „falsch“?
Nein, die hinterlegte Challenge im TXT Record ist für jede Anforderung eines Zertifikates anders, ein einmaliges Setzen funktioniert also nicht.Bin mir nicht sicher ob wir aneinander vorbei reden. Den txt Eintrag setzt du nur einmalig, danach kannst du cronjob alle x Tage das Cert erneuern lassen. Wo genau ist an meiner Antwort jetzt was „falsch“?
Quote from @puderpader:
Zitat von @michi1983:
Bin mir nicht sicher ob wir aneinander vorbei reden. Den txt Eintrag setzt du nur einmalig, danach kannst du cronjob alle x Tage das Cert erneuern lassen. Wo genau ist an meiner Antwort jetzt was „falsch“?
Nein, di3 Challenge im TXT Record ist für jede Anforderung eines Zertifikates anders, ein einmaliges Setzen funktioniert also nicht.Bin mir nicht sicher ob wir aneinander vorbei reden. Den txt Eintrag setzt du nur einmalig, danach kannst du cronjob alle x Tage das Cert erneuern lassen. Wo genau ist an meiner Antwort jetzt was „falsch“?
Okay dann nehme ich meine Aussage zurück, wusste ich tatsächlich nicht.
Ist das eine Feststellung, eine Frage?
Es ist eine Feststellung und bestätigt den Kommentar vom Kollegen @puderpader das keine Zertifikate für die Upstream DNS Server erforderlich sind.Würdest du bei dir einen tcpdump machen auf TCP 853 Pakete würdest du es selber bestätigt bekommen!
Lokal lässt man den Adguard ja in der Regel immer klassisch mit DNS UDP/TCP 53 laufen.
Works as designed without any certificate! 👍
root@adguard:/home/pi# tcpdump -i eth0 port 853
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
12:53:24.560351 IP 192.168.1.252.45686 > dns3.digitalcourage.de.domain-s: Flags [S], seq 1228397514, win 64240, options [mss 1460,sackOK,TS val 323945953 ecr 0,nop,wscale 6], length 0
12:53:24.580266 IP dns3.digitalcourage.de.domain-s > 192.168.1.252.45686: Flags [S.], seq 4232776691, ack 1228397515, win 65160, options [mss 1448,sackOK,TS val 401423916 ecr 323945953,nop,wscale 7], length 0
12:53:24.580447 IP 192.168.1.252.45686 > dns3.digitalcourage.de.domain-s: Flags [.], ack 1, win 1004, options [nop,nop,TS val 323945973 ecr 401423916], length 0
12:53:24.608806 IP 192.168.1.252.45686 > dns3.digitalcourage.de.domain-s: Flags [P.], seq 1:556, ack 1, win 1004, options [nop,nop,TS val 323946002 ecr 401423916], length 555
12:53:24.628418 IP dns3.digitalcourage.de.domain-s > 192.168.1.252.45686: Flags [.], ack 556, win 505, options [nop,nop,TS val 401423965 ecr 323946002], length 0
12:53:24.629260 IP dns3.digitalcourage.de.domain-s > 192.168.1.252.45686: Flags [P.], seq 1:242, ack 556, win 505, options [nop,nop,TS val 401423965 ecr 323946002], length 241
Zitat von @itstrue:
Daher war die Idee ein Wildcard Zertifikat zu erstellen und das sowohl für den Adguard als auch für den NPM zu nehmen. Wenn ich Deine Ausführungen richtig verstanden habe, sollte das aber mit Deinem Vorschlag gehen, richtig?
Klar.Daher war die Idee ein Wildcard Zertifikat zu erstellen und das sowohl für den Adguard als auch für den NPM zu nehmen. Wenn ich Deine Ausführungen richtig verstanden habe, sollte das aber mit Deinem Vorschlag gehen, richtig?
Moin,
Gruß,
Dani
Ja genau, so schauts bei mir auch aus. Dennoch die Frage: Warum zeigt dann aber Adguard im Anfrageprotokoll immer "Standard DNS" an und nicht DNS over TLS"?
poste doch einen Screenshot vom Query Log. Damit wir alle vom Gleichen sprechen.Da da nix von errors etc. steht, scheint es durchzugehen.
Siehst du Pakete in der Ausgabe wie im aqui's Kommentar?Gruß,
Dani
Jepp so ist DNSoTLS für interne Anfragen an den Adguard deaktiviert nur für die externen Abfragen des Adguard wird DNSoTLS genutzt. Willst du die Anfragen intern auch verschlüsseln dann musst du das Häkchen im zweiten Screenshot aktivieren und ein entsprechendes Zertifikat eintragen. An den Clients muss Secure-DNS natürlich auch aktiviert sein damit diese es nutzen.
Du solltest dir auch im klaren darüber sein das das ganze auch Ressourcen- und Geschwindigkeitseinbußen bei DNS-Abfragen bedeuten kann. Schnelles DNS ist ja auch ein nicht zu unterschätzender Faktor bei der "Schwupdizität" der Internet-Verbindung. Eine Risiko-Nutzen-Abwägung wäre da also angebracht.