Unter DEB9 ist normalerweise dnsmasq nicht installiert. Dnsmasq kann für verschiedene Dinge genutzt werden.
Hier ist lediglich die Minimal-Konfiguration beschrieben um eine Blacklist anzuwenden und ein bischen zu cachen.
Wenn es gilt einen Namen in eine IP-Adresse zu übersetzen wird folgende Reihenfolge angewendet.
Zusäzlich zur Installation von dnsmasq
ist es sinnvoll die Konfiguration vor Änderung zu kopieren z.B. wie folgt.
su apt install dnsmasq cd /etc cp dnsmasq.conf dnsmasq.conf.kopie # es ist wahrscheinlich einfacher eine mv dnsmasq.conf dnsmasq.conf.original # neue Datei dnsmasq.conf zu erzeugenDanach kann man folgende Zeilen in
/etc/dnsmasq.conf
editieren.
su nano /etc/dnsmasq.conf # port=5353 # =53 ist unverschlüsselt =0 ist gesperrt domain-needed # wenn Hostname einen Domainnamen enth. -> FB bogus-priv # wenn keine priv. IP -> FB # resolv-file=/etc/resolv.dnsmasq # alternativer Pfad zu resolv.conf server=192.168.178.1 # FB = upstream DNS #address= # nicht an dieser Stelle listen-address=::1,127.0.0.1 # nur lokal hören # alle dhcp, pxe, tftp, mx Themen können gelöscht werden cache-size=1024 # default 150 #log-queries # Mitschnitt nach /var/log/syslog log-facility=var/log/dnsmasq.log # wenn log-queries auskommentiert -> eigenes Logfile conf-file=/etc/dnsmasq.d/blacklist.conf # Blacklist in extra Datei
server=
könnte man alternativ auch anders belegen. server=/de/213.252.158.39 # alle .de DNS-Anfragen an diesen speziellen Nameserver server=8.8.8.8 # google dns (schneidet alles mit) server=8.8.4.4 # google dns server=208.67.222.222 # OpenDNS oder 208.67.220.220
Dann wird eine Test-Blacklist /etc/dnsmasq.d/blacklist.conf
erzeugt.
su nano /etc/dnsmasq.d/blacklist.conf address=/web.de/127.0.0.1 # blockierte Test-Seite
Die Syntax-Überprüfung erfolgt über dnsmasq --test
.
Ist alles ok, kann man Dnsmasq starten (restart
) um die Änderung der Konfiguration einzulesen.
Den Status kann man noch überprüfen.
Und später kann man dnsmasq noch für den automatischen Start aktivieren.
su systemctl restart dnsmasq.service systemctl status dnsmasq systemctl enable dnsmasq.service
Damit dnsmasq auf dem lokalem PC überhaupt verwendet wird, sind die ersten beiden Zeilen in /etc/resolv.conf
nötig.
Als dritte Zeile folgt die IP des externen Routers z.B. die FritzBox ist erreichbar unter 192.168.178.1
z.B. wie folgt.
nameserver ::1 # IPv6 nameserver 127.0.0.1 # IPv4 nameserver 192.168.178.1 # FB
Dummerweise ist unter DEB9 die Datei /etc/resolv.conf
durch den NetworkManager generiert,
sodass man Gefahr läuft dass sie überschrieben wird.
# Generated by NetworkManager search fritz.box nameserver 192.168.178.1 nameserver fd00::9a9b:cbff:fe5f:841b
Eine unelegante Methode ist es, die Datei trotzdem zu editieren und dann mit einem Schreibschutz zu versehen.
Kein Löschen, kein Umbenennen, keine harten Verküpfung möglich. Überprüfung ist mit lsattr
möglich.
su chattr +i /etc/resolv.conf # wird trotz ext4 nicht unterstützt, da es ein Link ist lsattr /etc/resolv.conf
Das ist aber unter DEB9 & xfce gar nicht nötig, da es sich unter /etc/resolv.conf
um eine Verküpfung handelt.
Es reicht also aus die Verknüpfung um zu nennen und eine neue Datei zu erstellen. z.B.
su cd /etc ls -la ./resolv* lrwxrwxrwx 1 root root 35 Feb 16 09:44 resolv.conf -> /var/run/NetworkManager/resolv.conf mv mv resolv.conf resolv.conf.alt nano resolv.conf nameserver ::1 # IPv6 nameserver 127.0.0.1 # IPv4 nameserver 192.168.178.1 # FB
Eine weitere Möglichkeit, welche in pcsuggest.com beschrieben wurde, habe ich auch ausprobiert. Unter xfce erreicht man den NetworkManager indem man oben rechts auf das Antennen-Symbol klickt und dann mit rechter Maustaste Verbindungen bearbeiten... anklickt.
Dann geht man zum Blatt IPv4 Einstellungen.
Die Methode ändere ich von Automatisch (DHCP) zu Automatisch (DHCP), nur Adressen
und als DNS-Server trage ich den localhost ein, sprich 127.0.0.1
.
Ananalog kann ich für IPv6 ::1
eintragen.
Sollte sich resolv.conf
nicht sofort geändert haben, hilft ein Neustart.
cat /etc/resolv.conf # bzw. cat /var/run/NetworkManager/resolv.conf # Generated by NetworkManager nameserver 127.0.0.1 nameserver fd00::9a9b:cbff:fe5f:841b
Der Bug #860928 welcher auf der Seite wiki.debian.org resolf.conf
beschrieben ist, ist also Geschichte.
Siehe auch debianforum.de.
Test-Eingabe von web.de im Browser sollte nun zu einer Fehlermeldung führen.
Nach erfolgreichen Test kann man die Blacklist /etc/dnsmasq.d/blacklist.conf
noch editieren,
erneut überprüfen & aktualisieren.
su nano /etc/dnsmasq.d/blacklist.conf address=/google-analytics.com/127.0.0.1 address=/storage.googleapis.com/127.0.0.1 address=/googletagservices.com/127.0.0.1 address=/googleusercontent.com/127.0.0.1 address=/googlesyndication.com/127.0.0.1 address=/imasdk.googleapis.com/127.0.0.1 address=/google-analytics.com/127.0.0.1 address=/googleadservices.com/127.0.0.1 address=/googletagmanager.com/127.0.0.1 address=/youtube-nocookie.com/127.0.0.1 address=/fonts.googleapis.com/127.0.0.1 address=/ajax.googleapis.com/127.0.0.1 address=/maps.googleapis.com/127.0.0.1 address=/googlecommerce.com/127.0.0.1 address=/smartredirect.de/127.0.0.1 # www.adgoal.net address=/googlevideo.com/127.0.0.1 address=/cloudfront.net/127.0.0.1 address=/facebook.net/127.0.0.1 address=/youtube.com/127.0.0.1 address=/gstatic.com/127.0.0.1 address=/twitter.com/127.0.0.1 address=/google.com/127.0.0.1 ... dnsmasq --test systemctl restart dnsmasq.service
Als mögliche Quelle gucke ich mir die Liste vom Firefox-Plugin NoScript
an.
Also auf das NoScript Symbol klicken und dann in der Liste der Scripte
in der Kopfzeile das durchgestrichene S wie Einstellungen... anklicken.
Man kommt dann auf eine Seite "moz-extension://3b83..." wo man auf das Blatt Berechtigungen pro Webseite gehen kann.
Die recht lange Liste, welche man sich auch exportieren kann, zeigt dann an was alles geladen wurde...
Dass dnsmasq an der richtigen Stelle lauscht, kann man über netstat -tulpen | grep dnsmasq
überprüfen.
Das man nicht mehr revers von der IP-Adresse zur URL kommt kann man wie folgt überprüfen.
su apt install dnsutils ping web.de -> 82.165.229.138 nslookup 82.165.229.138 # Intranet IP nicht gefunden nslookup 82.165.229.138 # bs.web.de gefunden
Zum Test des lokalen Caching wird eine URL aufgerufen, welche vorher noch nicht benutzt wurde. Dann wird der Vorgang wiederholt und es sollte eine wesentlich schnellere Antwortzeit heraus kommen.
su apt install dnsutils dig test.de ;; Query time: 47 msec dig test.de ;; Query time: 0 msec
Machmal kann es vorkommen das der externe DNS-Service nicht mehr funktioniert oder man schnell mal wissen möchte, welche IP-Adresse sich unter einer Adresse verbirgt.
Eine mögliche Web-Seite wäre z.B. dnslookup.online .
Die entsprechende Adresse 172.67.172.151
im Browser eingegeben,
führt allerdings zu einer Fehlermeldung (Error 1003) der Web-Seite oder der Fritzbox.
Sollte die Fritzbox melden dass die Seite gesperrt ist, kann man das unter
Internet > Filter > Listen >
Erlaubte IP-Adressen bearbeiten
ändern.
Möchte man wissen ob eine .de
Domain bereits existiert,
ohne das andere das mitschneiden und für sich reservieren, bietet sich
denic.de an.
archlinux.org DNS & DHCP mit dnsmasq
blogging.dragon.org.uk dnsmasq
ctaas.de dnsmasq mit Blacklist welche auf eigenen Webserver zeigt.
debian.org dnsmasq
elektronik-kompendium.de DHCP-Server auf dem Raspberry mit dnsmasq
linux.com advanced dnsmasq tips
linux-community.de dnsmasq
nsupdate.info aktuelle IP & reverse DNS
openwrt.org dnsmasq
pcsuggest.com dnsmasq
pcwelt.de DNS mit dnsmasq
pro-linux.de Sicherheitsaudit von 2017
tecmint.com setup a DNS-DHCP-Server
thekelleys.org.uk dnsmasq man-page
ubuntuusers.de allg. dnsmasq Artikel
yoyo.org adservers
https://gnulinux.ch/unbound-dns-server-in-pihole-integrieren
Zum Anfang