.titleBar { margin-bottom: 5px!important; }

[Patch] Unbound DNSSEC Validierender Resolver

Dieses Thema im Forum "Freetz" wurde erstellt von wernerj, 22 Okt. 2010.

  1. wernerj

    wernerj Neuer User

    Registriert seit:
    22 Sep. 2006
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo,

    ich habe den Unbound Patch aus Trac auf den aktuellen Stand gebracht.
    Änderungen:
    - Es wird nicht mehr DLV (DNSSEC Lookaside Validation) benutzt, sondern mit Hilfe des DNS-Rootkeys validiert (sei Juni ist DNSSEC bei den Root-Server aktiv, deswegen ist DLV nicht mehr nötig...)
    - rc.unbound entsprechend angepasst, so dass der root-key an die passende Stelle kopiert wird.
    - Das Web-Frontend aus dem älteren Patch in trac habe ich auch gleich mit integriert.

    Bei mir funkioniert die DNSSEC-Validierung in folgendem Setup:
    - Dnsmasq forwarded alle DNS-Anfragen an unbound. Dazu unter "zusätzlich diese Upstream Nameserver nutzen (durch Leerzeichen getrennt): " die lokale IP und Port von unbound eintragen (also 192.168.178.1#533) und die Option "Durch AVM/Provider zugewiesene Upstream Nameserver nutzen" deselektieren.
    - Unbound muss automatisch gestartet werden, ansonsten hat man kein DNS nach dem Reboot
    - Damit DNSSEC funkioniert, benötigt die Fritz-Box die korrekte Systemzeit! Beim booten hat die Box dann folgendes Problem: sie will die Namen der Time-Server resolven, das geht aber noch nicht da das DNS noch nicht geht weil bei unbound die DNSSEC Validierung (bzw. eigentlich das holen der aktuellen Root-Signaturen) wg. der falschen Systemzeit fehlschlägt. Das ist dann ein klassischer Deadlock... Dafür gibt es zwei Lösungen entweder unbound so konfigurieren, dass er auch ohne DNSSEC arbeitet (val-permissive-mode: yes im config eintragen, aber dann braucht man DNSSEC eigentlich auch gar nicht aktivieren) oder für die Time-Server statt DNS-Namen einfach die IP-Adressen eintragen (im normalen fritz.box Webfrontend die IPs von den PTB-Servern eintragen: "192.53.103.108 192.53.103.103 192.53.103.104").

    Ob DNSSEC funktioniert kann man ganz einfach unter linux testen mit dem Kommandos (funkioniert natürlich nur für DNSSEC signierte Domains wie z.B. isc.org):
    dig -p 533 @192.168.178.1 www.isc.org +dnssec (Anfrage direkt an Unound welcher an Port 533 lauscht)
    dig @192.168.178.1 www.isc.org +dnssec (Anfrage über dnsmasq, welcher ja nur die Anfrage an unbound weiterreicht)

    Die Ausgabe sollte dann folgendermaßen aussehen (wichtig ist das bei flags der Wert "ad" für authenticated data vorkommt):

    ; <<>> DiG 9.7.1-P2 <<>> @192.168.178.1 www.isc.org +dnssec
    ; (1 server found)
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21206
    ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 5, ADDITIONAL: 13

    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags: do; udp: 4096
    ;; QUESTION SECTION:
    ;www.isc.org. IN A

    ;; ANSWER SECTION:
    www.isc.org. 528 IN A 149.20.64.42
    www.isc.org. 528 IN RRSIG A 5 3 600 20101115233208 20101016233208 31518 isc.org. HcMfYvpUUP0u4tO9YfbQ/2tBGvB+1d9tikMdEY+Xc6USsTYaU3jBNZG0 BMJhMhy7vdVU1WOkciY7JhFC+6nZcXqwrJrbThY+S5DnKzXr3qIS4qTX 7JX9l3U4AiIoJQ2YVJrY4mkzSnzvynyRbDyv1TMyXjwh7Pk0UGxRlD9L IzA=

    Um im Browser zu sehen ob DNSSEC funktioniert kann man bei Firefox die Erweiterung DNSSEC Validator installieren.

    Wer mehr über DNSSEC wissen will, sollte sich den Artikel in einer der letzten c'ts zu Gemüte führen.

    Grüße,

    Jörg
     

    Anhänge:

  2. sf3978

    sf3978 IPPF-Promi

    Registriert seit:
    2 Dez. 2007
    Beiträge:
    7,664
    Zustimmungen:
    5
    Punkte für Erfolge:
    38
    Könntest Du ein Screenshot des "normalen fritz.box Webfrontend" posten, wo man die IPs der PTB-Server eintragen kann? Danke.
     
  3. wernerj

    wernerj Neuer User

    Registriert seit:
    22 Sep. 2006
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Screenshot

    Hallo,

    anbei der Screenshot.

    Grüße,

    Jörg
     

    Anhänge:

  4. sf3978

    sf3978 IPPF-Promi

    Registriert seit:
    2 Dez. 2007
    Beiträge:
    7,664
    Zustimmungen:
    5
    Punkte für Erfolge:
    38
    Danke. Bei der 7170 können diese Server leider nicht eingetragen werden.
     
  5. sf3978

    sf3978 IPPF-Promi

    Registriert seit:
    2 Dez. 2007
    Beiträge:
    7,664
    Zustimmungen:
    5
    Punkte für Erfolge:
    38
    Ich habe Unbound DNSSEC auf meiner 7240 getestet und es funktioniert auch, so wie in diesem Thread beschreiben.

    Lediglich mit multid hatte ich ein Problem festgestellt:
    Mit dem Freetz-Patch habe ich chronyd entfernt. Da ich die Box am Kabelmodem ausgetauscht habe, hatte die 7240 sofort nach dem Booten, kein Internetzugang (erst nach dem Reset des Kabelmodems). Nach dem Reset des Kabelmodems, hat die Box zwar Internetzugang, aber multid (ohne -t) kann die Zeit nicht mehr holen. Mit chronyd gibt es dieses Problem nicht, denn chronyd kann auch zu einem späteren Zeitpunkt (nach dem Reset des Kabelmodems), die Zeit aus dem Internet (automatisch) holen. Entgegen einigen Beiträgen hier im Form, wird mit chronyd, die Box nicht heiss, das syslog wird nicht voll geschrieben und der Speicherverbrauch bzw. die Prozessorbelastung sind auch nicht hoch:
    Code:
    7394     1 root     S     1308   [B][COLOR="Red"]2%   0%[/COLOR][/B] /sbin/chronyd -f /var/tmp/chrony.conf
     
  6. adn77

    adn77 Neuer User

    Registriert seit:
    27 Mai 2005
    Beiträge:
    13
    Zustimmungen:
    2
    Punkte für Erfolge:
    3
    Ich habe mal den Patch von wernerj aufgegriffen und an das aktuelle Unbound-1.6.7 angepasst.
    In dieser Konfiguration arbeitet Unbound als DNSSEC Resolver mit QName Minimization.

    Klappt auf meiner 7490 sehr gut. Man sollte per Cron gelegentlich die root.hints updaten.
    Ausführlicher beschrieben auf meinem Blog: http://blog.loetzimmer.de/2017/11/fritzbox-7490-mit-freetz-fur-unbound.html
     

    Anhänge:

    SinusX und Micha0815 gefällt das.