Hosts.

Auf www.gutefrage.net habe ich von einem schlimmen Schicksal gelesen ;-))
Zwar war ich sofort gewillt der/dem vom Schicksal Gebeutelten zu helfen(Mein Rat wäre gewesen, bei einer derartigen 'Katastrophe' sofort das Betriebssystem neu zu installieren ^^).
Was ist denn nun eigentlich diese Datei Hosts?
Früher, wirklich viel früher(als selbst ich noch im Wald und auf der Wiese gespielt habe) entstand das ARPA-Net. Das war ein Zusammenschluß von ~hundert Computern, die miteinander VERNETZT waren. Wenn nun ein Computer A mit einem Computer B kommunizieren wollte, ging das natürlich nicht über die Namen A oder B. Die Computer verstanden nur IP-Adressen!
 Damit in diesem Vorläufer des Internets nun eine Kommunikation möglich war, gab es eine Datei hosts. Diese Datei hosts. hat keine Erweiterung, ihr Name endet mit dem Punkt. Es soll auch 'Spezialisten' geben(das sind die,die sich 100%ig auskennen), die behaupten, der Dateiname wäre hosts.sam, aber diesen 'Kollegen' sollte das Vertrauen entzogen werden.
Doch wir sind ja immer noch beim ARPA-Net..
Wenn sich nun an der Teilnehmerzahl etwas änderte(mal kamen Computer dazu, mal fielen welche weg), wurden diese Ereignisse von den Admins in der Datei hosts. dokumentiert und diese Datei an alle Teilnehmer verschickt.
Das war am Anfang..
 Jetzt, zu einer Zeit, in der die IPv4-Adressen zu Neige gehen, wäre eine solche Liste natürlich immens groß, da mußten die 'Internet-Admins' sich etwas einfallen lassen.
 Das haben sie auch gemacht und es entstand DNS(Domain Naming Service). Jetzt braucht ein teilnehmender Rechner nur seinen DNS-Server zu fragen: Wer ist'n eigentlich www.google.com und der DNS-Server antwortet mit der aktuellen Google-IP-Adresse. Das spart jede Menge überflüssigen Traffic im Netz.
 Das ist aber auch der Grund dafür, daß die hosts.-Datei immer noch ausgewertet wird.
 Ich trage also in meine hosts.-Datei ein, dass eine WebSite immer unter einer bestimmten Adresse zu erreichen ist(Genaueres dazu später..) Wenn ich dann in meinem Browser(manche 'Geschwindigkeitsfanatiker' nennen den Browser auch 'Internetverbindungsprogramm') in der Adresszeile den Namen dieser WebSite eintrage, prüft der Rechner ERST, ob es in dem dafür vorgesehenen Verzeichnis eine Datei namens hosts. gibt. Ist das der Fall, prüft er, ob die gesuchte WebSite dort mit einer IP verzeichnet ist. Falls nicht, sendet er DANACH eine Anfrage an den/die DNS-Server, um die für die Kommunikation erforderliche IP zu erhalten. Jetzt kommen wir aber ohne konkrete Angaben nicht mehr aus, sehen wir uns also mal ein Beispiel an: Grafik fehlt leider
In dieser hosts.-Datei gibt es nur einen 'richtigen' Eintrag: 127.0.0.1    localhost
Der Rest ist Kommentar(wer lesen kann, ist klar im Vorteil..)
(m$ selbst rät seinen Benutzern, zumindest im MCSA-Lehrgang, die Anzahl der Kommentare in dieser Datei möglichst gering zu halten, da diese Datei ja bei JEDEM Zugriff auf eine WebSite gelesen werden MUSS).
Was läßt sich nun mit dieser Datei anstellen?
In (m)einem privaten LAN, wo es keinen DNS-Server gibt, leistet diese Datei wertvolle Dienste, da die verbundenen Rechner mit ihrem Namen 'angesprochen' werden können. Zwar sind die Rechner anhand ihrer Frequenzzahlen auch ohne Namen erkennbar, doch das folgende Beispiel stammt noch aus einer Zeit, in der
CPU-Frequenzen jenseits 250 MHz in meinem LAN noch Utopie waren..
grafik fehlt leider
Was sagt uns diese hosts.-Datei nun?(Außer, dass auch hier 127.0.0.1 localhost ist^^)
Die IP-Adressen stammen aus dem von der IANA vorgesehenen Adressbereich. Die Rechner hätten also von außerhalb des Netzes nicht erreicht werden können, das war ja auch gut so..
Soweit der vorgesehene Einsatz der hosts.-Datei..
Was läßt sich denn noch damit 'anstellen'?
Nun, wenn ich möchte, daß auf meinem Rechner das Suchmonster Google nicht mehr benutzt werden kann, füge ich einfach folgende Zeilen ein:
127.0.0.1 www.google.com
127.0.0.1 www.google.de
Die IP-Adresse 127.0.0.1 ist die einzige IP-Adresse, die mehrfach in der hosts.-Datei vorkommen darf, lediglich die Namen müssen unterschiedlich sein.
Wer also möchte, dass z.B. m$ nicht mehr erreicht werden kann, füge in seine hosts.-Datei folgende Zeile ein:
127.0.0.1 www.microsoft.de #Bill sieht das nicht gerne
Na schön, aber wenn ich unliebsame Kontaktaufnahmen zu m$ vermeiden möchte, muß ich doch .com nehmen..
Bitteschön, nichts einfacher als das:
127.0.0.1 www.microsoft.com #aua, das hat m$ überhaupt nicht gerne..
Im Ernst, zumindest XP 'meckert', wenn diese Zeile in die hosts.-Datei eingefügt wird ;-))

Aber, wenn ich Web-Adressen so 'umleiten' kann, dann müsste doch auch umgekehrt..
Richtig, die bösen Buben im Web dürfen nie unterschätzt werden!
Hätte also ein böser Bube einen Server mit der IP 66.66.66.66 und ich hätte ein OnLine-Konto bei www.meine-online-bank.de und könnte der böse Bube in meine hosts.-Datei die Zeile einfügen:
66.66.66.66 meine-online-bank.de #ready for phishing..
dann würde ich, beim Versuch mein OnLine-Konto aufzurufen auf dem Server des bösen Buben landen. Mglw. fände ich dort eine gefälschte Seite meiner Bank, gäbe meine Daten ein, die der Gauner, da er sie ja dann hat, auch noch weiterleiten würde, aber er hätte dann vollen Zugriff auf mein Konto!
Die Konsequenz: Niemals mit Admin-Rechten surfen!
Die hosts.-Datei mit Schreibschutz versehen(um nur einen Weg zu nennen: Attrib hosts. +r)
Normale Benutzer können hier keine Veränderungen vornehmen, es sei denn, dem Benutzer sind Änderungen hier erlaubt, aber wer macht das schon..
Das war aber nur eine Gattung von bösen Buben im Netz. Dann gibt es ja auch noch Server, die Trojaner und andere schlimme Sachen verteilen(ja, Spam zähle ich auch zu den schlimmen Sachen).
Also trage ich jeden dieser Server  in meine hosts.-Datei ein..
..Oder besser, ich lasse das von einem Programm erledigen, IIRC kann Spybot Search & Destroy sowas, wenn der Menüpunkt 'diesen Computer vor möglichen Bedrohungen schützen' angeklickt wird. Die hosts.-Datei kommt dann schnell auf eine Größe von über 1MB, alles schon gehabt..
Bevor ich nun zum Ende komme, möchte ich noch einen Rat loswerden:
Wenn die hosts-Datei einen bestimmten gewollten Inhalt hat, sollte dieser Zustand gesichert werden. Wenn dann irgenwann die Größe der aktuellen Datei von der Größe der gesichert abweicht, ist da irgendwo der Wurm drin. Meist reicht es jedoch aus, gelegentlich mal einen Blick in die Datei zu werfen, um zu sehen, ob sich vielleicht ihr Inhalt verändert hat.
Wir sehen also: Die eigentlich recht unscheinbare Textdatei hosts. ist doch ganz schön mächtig.
Da sie eine ganz normale (ASCII-)Textdatei ist kann sie mit jedem einfachen Editor, der keine Formatierung vornimmt, bearbeitet werden.
Unter alten Windows-Versionen befindet sie sich in %SystemRoot% (also meist C:\Windows) unter neueren Versionen in %SystemRoot%\drivers\etc
linux-user wissen bestimmt besser als ich, wo diese Datei zu finden ist..
Fröhliches Bearbeiten der Datei hosts.
Gruß
ytwinky