Die lokale hosts Datei, Vorläufer vom DNS, ist zwar ein Relikt vergangener Tage, aber befindet sich so gut wie auf jedem System und ist daher auch ein guter Ansatz lästige URLs auszusperren.
Da man hier auch auf gefälsche URLs verweisen kann (Hosts file Hijack von Kleinweich;-), ist die Datei ziemlich kritisch und nur mit Administrator Rechten bearbeitbar. Alles was hier aussortiert wird, wird gar nicht mehr den PC verlassen, egal welcher DNS folgt. Bitte auch daran denken, hier sehr sorgfältig zu arbeiten, da sonst die Stabilität des Systems gefährdet ist...
Die hosts-Datei befindet sich unter dem Pfad %windir%\system32\drivers\etc
,
welchen man einfach in die Kopfzeile des Explorers einfügen kann und mit Return bestätigt.
z.B. konkret: C:\Windows\System32\drivers\etc
.
Den Inhalt kann man sich angucken, wenn man mit rechter Maus auf der hosts-Datei
den "öffnen mit" Dialog anwählt und einen Editor auswählt.
Die Standard Windows hosts-Datei sieht wie folgt aus:
# Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 102.54.94.97 rhino.acme.com # source server # 38.25.63.10 x.acme.com # x client host # # localhost name resolution is handled within DNS itself. # 127.0.0.1 localhost # ::1 localhost # für IPv6
Weitere Zeilen kann man darunter einfügen in Form:
0.0.0.0 URL
oder 127.0.0.1 URL
.
Die Wirkung ist gleich, der Unterschied ist 127.0.0.1 = localhost und zeigt somit auf sich selbst (loopback)
und 0.0.0.0 ist eine invalide nicht erreichbare Adresse.
Für das Einfügen ist zunächst ein Text-Editor im Admin-Modus zu starten.
z.B. im Total-Commander mit rechter Maus auf das Editor-Symbol gehen und "als Administrator" auswählen.
Im Editor: Datei > Öffnen eingeben und im Fenster in der Fußzeile "Alle Dateien" auswählen.
Dann in der Kopfzeile die Adresse %windir%\system32\drivers\etc
hinein kopieren.
Nach dem Return, kann die Datei hosts
ausgewählt werden.
Nun können beispielsweise folgende Zeilen ergänzt werden.
... # ip-adresse Domainname=FQDN [Rechnername=hostname] # Kommentar 0.0.0.0 googletagmanager.com 0.0.0.0 ajax.googleapis.com 0.0.0.0 gstatic.com 0.0.0.0 youtube.com 0.0.0.0 www.youtube.com 0.0.0.0 m.youtube.com # 0.0.0.0 telemetry.microsoft.com # kann nicht ausgeklammert werden, da MS das extra behandelt
Ich hoffe man kann an der Struktur erkennen, das keine Platzhalter möglich sind und wie auskommentiert wird.
Testen kann man via Win-Taste > cmd > ping URL.
z.B. ping youtube.com
Es sollte dann die Meldung kommen "...konnte nicht finden"
Eine zusätzliche Sicherheit ist es, wenn man selbst für den Administrator die Datei hosts auf Read-Only setzt.
Sinnvoll ist auch den Pfad in der Registry zu überprüfen.
Dies geschieht mit Win-Taste > dann Eingabe von Regedit
.
Siehe \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DataBasePath
Der "DataBasePath" sollte auf %SystemRoot%\System32\drivers\etc
stehen.
Weitere Details z.B. windowspro.de hosts-Datei bearbeiten.
English: winhelp2002.mvps.org/hosts.htm
English: someonewhocares.org hosts
In Debian-Systemen oder Debian-Derivaten z.B. Linux-Mint und wahrscheinlich
in allen übrigen Linuxsystemen ebenso, befindet sich die hosts-Datei unter /etc
.
ls -la ho* -rw-r--r-- 1 root root 9 Aug 7 2006 host.conf -rw-r--r-- 1 root root 4 Aug 16 2018 hostname -rw-r--r-- 1 root root 183 Aug 16 2018 hosts -rw-r--r-- 1 root root 411 Aug 16 2018 hosts.allow -rw-r--r-- 1 root root 711 Aug 16 2018 hosts.deny
Die Hosts-Datei /etc/hosts
sieht geringfügig anders aus als unter Windows.
127.0.0.1 localhost 127.0.1.1 ab1 # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters # ip-adresse Domainname [Rechnername] # Kommentar
ab1
ist hier der Name des Computers,
welcher auch in der Datei /etc/hostname
eingetragen ist.
Der entsprechende FQDN - fully qualified domain name, welche für die externen Adressen erwartet wird,
wäre in meinem Fall ab1.fritz.box
.
Wer den Namen nachträglich ändern möchte, kann das hier tun.
Für ein Samba-Laufwerk darf der Hostname nicht länger als 15 Zeichen sein.
Wie bereits erwähnt, sind nur Buchstaben, Zahlen, der Punkt und Minus erlaubt.
Wildcards, wie "*", sind nicht möglich.
Es wird exakt nur das geblockt was eingegeben wird.
Also z.B. "google-analytics" blockiert nicht "ssl.google-analytics.com".
Einen Geschwindigkeitsvorteil hat man wenn man 0.0.0.0
statt 127.0.0.1
verwendet.
Hat man den eigenen Namen (hier ab1
) editiert, ist es noch erforderlich ein Skript zu starten,
um die Änderungen zu übernehmen. Ansonsten werden die übrigen Änderungen sofort aktiv.
su nano /etc/hosts ... # ip-adresse Domainname=FQDN # Kommentar 0.0.0.0 googletagmanager.com 0.0.0.0 ajax.googleapis.com 0.0.0.0 gstatic.com 0.0.0.0 youtube.com 0.0.0.0 www.youtube.com 0.0.0.0 m.youtube.com nano /etc/hostname /etc/init.d/hostname.sh Skript starten zur Übername des neuen Hostnamen hostname -f Überprüfung des Hostnamens b41
Sollte es Probleme mit der Umsetzung geben, kann man folgende Datei überprüfen.
cat /etc/dhcp/dhclient.conf ... #send host-name "andare.fugue.com"; send host-name = gethostname(); kontrollieren, sollte so gesetzt sein
Sinnvoller ist es einen Proxy-Server zu verwenden, wie er in manchen Firewalls eingebaut ist oder
einen DNS (z.B. dnsmasq) wie er mit Pi-hole realisiert wird.
Wie man Dnsmasq
lokal auf einem DEB-System installiert, konfiguriert und benutzt habe ich mal beschrieben.
Siehe configserverfirewall.com Config Server Firewall
Zum Anfang