Aus Raspberry Pi Geek 06/2017

Unbound als zentraler DNS-Server und Adblocker (Seite 2)

Mit dieser Konfiguration wären, abgesehen vom Blockieren der Werbung, alle eingangs genannten Kriterien abgedeckt. Um DNSSEC zu aktivieren und Unbound als verantwortlichen Server für das LAN zu nutzen, sind jedoch noch weitere Schritte notwendig. Zuerst einmal konfigurieren Sie Unbound mit den zentralen Root-Servern des DNS:

$ curl -o /etc/unbound/root.hints https://www.internic.net/domain/named.cache

Außerdem benötigt die Software den Schlüssel für den Root-Server, den sie laut /etc/unbound/unbound.conf.d/root-auto-trust-anchor-file.conf in der Datei /var/lib/unbound/root.key erwartet. Existiert diese Datei noch nicht oder bleibt sie leer, sollte sie initial den Inhalt aus Listing 2 erhalten.

Listing 2

 

    . IN DS 19036 8 2 49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5

Sie verifizieren diesen Eintrag über die Webseite der Internet Assigned Numbers Authority (IANA) [3]. Außerdem fügen Sie noch ein, wo sich die root.hints befinden (Listing 3, Zeile 14). Die Konfigurationsdatei fällt nun ein wenig komplexer aus (Listing 3).

Listing 3

 

server:
  verbosity: 1
  interface: 0.0.0.0
  port: 53
  do-ip4: yes
  do-ip6: no
  do-udp: yes
  do-tcp: yes
  access-control: 10.0.0.0/16 allow
  access-control: 127.0.0.0/8 allow
  access-control: 192.168.0.0/16 allow
  root-hints: "/etc/unbound/root.hints"
  hide-identity: yes
  hide-version: yes
  harden-glue: yes
  harden-dnssec-stripped: yes
  use-caps-for-id: yes
  cache-min-ttl: 300
  cache-max-ttl: 86400
  prefetch: yes
  num-threads: 2
  forward-zone:
    name: "."
    # definitely censor free & log free with DNSSEC Support:
    forward-addr: 84.200.69.80   # DNS Watch
    forward-addr: 84.200.70.40   # DNS Watch
    forward-addr: 77.109.148.136 # Xiala.net
    forward-addr: 77.109.148.137 # Xiala.net
    forward-addr: 91.239.100.100 # censurfridns.dk
    forward-addr: 89.233.43.71   # censurfridns.dk

Jetzt lässt sich Unbound als zentrale Verwaltungsstelle für Geräte im lokalen Netz einsetzen, indem Sie den Inhalt von Listing 4 in die Konfiguration integrieren.

Listing 4

 

server:
  local-zone: "home.lan." static
  local-data: "firewall.home.lan.  IN A 10.0.0.1"
  local-data: "laptop.home.lan.    IN A 10.0.0.2"
  local-data: "xboxone.home.lan.   IN A 10.0.0.3"
  local-data: "ps4.home.lan.       IN A 10.0.0.4"
  local-data-ptr: "10.0.0.1  firewall.home.lan"
  local-data-ptr: "10.0.0.2  laptop.home.lan"
  local-data-ptr: "10.0.0.3  xboxone.home.lan"
  local-data-ptr: "10.0.0.4  ps4.home.lan"

Mit local-zone legen Sie fest, für welche Domain der Block gilt. Im Beispiel kommt home.lan für ein lokales Netzwerk zum Einsatz. Für jeden Host legen Sie anschließend mittels local-data einen Eintrag für den Forward Lookup an, also das Auflösen eines Namens in eine IP-Adresse. Mittels local-data-ptr ergänzen Sie einen Eintrag für den Reverse Lookup, also das Auflösen einer IP-Adresse in einen Namen [4].

Adblocker

Den geforderten Adblocker rüsten Sie nun recht einfach nach. Dazu laden Sie zunächst eine entsprechende Liste von Hosts herunter (Listing 5). Anschließend binden Sie diese Datei über einen entsprechenden Eintrag in der Konfiguration ein (Listing 6). Jetzt noch ein beherztes service unbound restart getippt, und die Arbeit ist getan.

Listing 5

 

$ curl -sS -L --compressed "http://pgl.yoyo.org/adservers/serverlist.php?hostformat=unbound&showintro=0&mimetype=plaintext" > /etc/unbound/unbound.conf.d/unbound_ad_servers

Listing 6

 

include: "/etc/unbound/unbound.conf.d/unbound_ad_servers"

Zwei Varianten

Damit Sie nicht alles von Hand abtippen müssen, haben wir die oben vorgestellten Beispiele für die Konfiguration auf der Heft-DVD beigelegt. Je nach Ihren Bedürfnissen wählen Sie für den Start entweder das Verzeichnis simple (einfacher, cachender DNS-Server, siehe Listing 1) oder complex (hier ist die Konfiguration mit Kommentaren versehen, damit Sie sich leichter zurechtfinden).

Es besteht die Möglichkeit, beide Varianten zu kombinieren, indem Sie etwa die localzone.conf aus dem Verzeichnis complex der einfachen Konfiguration hinzufügen – für einen einfachen, puffernden Nameserver mit Auflösung der lokalen Rechner.

Aktualisierungen

Das Aktualisieren der Software selbst übernimmt die Paketverwaltung. Um die root.hints sowie die Liste für den Adblocker kümmert sich dagegen ein Skript (Listing 7), das Sie am einfachsten via Cronjob aufrufen.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 5 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben