Forum: PC-Programmierung Mit Hosts-File eine gewisse domain auf andere umleiten


von Ubuntu-User (Gast)


Lesenswert?

Hi zusammen

Ich mcöhte gerne an meinem Rechner (Ubuntu 11.04) die URL you****.com 
auf z.B. google umleiten lassen.

Mit dem Hosts-file kann man durch eingaben von

127.0.0.1 you****.com ja schon mal auf den localhost umleiten, was ein 
erreichen dieser Seite schon mal unmöglich macht. Leider geht aber:

www.google.com you****.com

nicht, weil der erste Eintrag eine IP sein muss (?) und kein Hostname 
sein darf (?).

Wie kann ich aber erreichen, das you****.com immer auf google.com 
umgeleitet wird?

Liebe Grüsse

Ubuntu-USer

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Indem Du statt google.com die gewünschte IP-Adresse eingibst.

Die kannst Du mit "ping google.com" bestimmen.

Funktionieren muss das natürlich nicht, weil google auch aus Gründen 
des Lastausgleichst nicht nur eine ip-Adresse verwenden wird.

Vermutlich bist Du dann besser mit einem Proxyserver aufgehoben, den Du 
auf Deinem Rechner einrichtest.

Verbirgt sich hinter den Sternchen das Wort "tube" oder eher eines, das 
mit "p" anfängt? Und was ist der Sinn vonn't janze, nutzt noch 
irgendjemand anderes außer Dir diesen Rechner?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Zu guter Letzt könnte man natürlich allemal noch einen eigenen
DNS-Server aufsetzen, das ist unter Unix kein großer Akt.  Den erklärt
man dann kurzerhand zum primären Server für die gewünschte Domain und
legt dafür einen Zonendatei an.  Dann kann man darin beliebigen
Schabernack treiben, auch ein CNAME-Eintrag (Alias auf einen anderen
Domainnamen) statt eines A-Eintrags (IP-Adresse für abgefragten
Domainnamen) ist dann möglich.

Die Frage nach dem Sinn und Zweck stelle ich mir allerdings auch. ;-)

Inwiefern das übrigens bei einer URL überhaupt Sinn hat, steht ohnehin
auf einem anderen Blatt.  Es wird ja nicht nur der Domainname in eine
IP-Adresse übersetzt, sondern zur Unterstützung des Hostens vieler
virtueller HTTP-Server auf einem physischen Server sendet der Browser
in den Headers nochmal den gewünschten Domainnamen als "Host:"-Header
mit.  Damit wird sich der auf diese Weise angesprochene Server dann
ggf. nicht wie gewünscht verhalten.  Um das mal am (vermutlich)
gewünschten Beispiel vorzuführen, könnte das komplett am Thema vorbei
sein. ;)
1
% telnet www.google.com http
2
Trying 209.85.169.103...
3
Connected to www.l.google.com.
4
Escape character is '^]'.
5
GET / HTTP/1.0
6
Host: www.youtube.com
7
8
HTTP/1.0 200 OK
9
Date: Wed, 28 Sep 2011 16:31:37 GMT
10
Server: Apache
11
X-Content-Type-Options: nosniff
12
Set-Cookie: use_hitbox=72c46ff6cbcdb7c5585c36411b6b334edAEAAAAw; path=/; domain=.youtube.com
13
Set-Cookie: VISITOR_INFO1_LIVE=auKlJYy1GYA; path=/; domain=.youtube.com; expires=Fri, 25-May-2012 16:31:37 GMT
14
Set-Cookie: PREF=f1=50000000; path=/; domain=.youtube.com; expires=Sat, 25-Sep-2021 16:31:37 GMT
15
Set-Cookie: GEO=4797c8da43f762f14dcd2f8651b10e9fcwsAAAAzREXV8IkJToNL6Q==; path=/; domain=.youtube.com
16
Expires: Tue, 27 Apr 1971 19:44:06 EST
17
Cache-Control: no-cache
18
X-Frame-Options: SAMEORIGIN
19
Content-Type: text/html; charset=utf-8
20
21
<!DOCTYPE html>
22
<html lang="de" dir="ltr" >
23
<!-- machid: nLThsU052OXJEdFVlb1lQdXFTaHdtNVgxQi1zREE1ek9aSWZXbVBBbUs4eDVINGpibVdnSG1R -->
24
<head>
25
  
26
        <script>
27
var yt = yt || {};yt.timing = yt.timing || {};yt.timing.tick = function(label, opt_time) {var timer = yt.timing['timer'] || {};if(opt_time) {timer[label] = opt_time;}else {timer[label] = new Date().getTime();}yt.timing['timer'] = timer;};yt.timing.info = function(label, value) {var info_args = yt.timing['info_args'] || {};info_args[label] = value;yt.timing['info_args'] = info_args;};yt.timing.info('e', '902904,900809');yt.timing.tick('start');yt.timing.info('li','0');try {yt.timing['srt'] = window.gtbExternal && window.gtbExternal.pageT() ||window.external && window.external.pageT;} catch(e) {}if (window.chrome && window.chrome.csi) {yt.timing['srt'] = Math.floor(window.chrome.csi().pageT);}if (window.msPerformance && window.msPerformance.timing) {yt.timing['srt'] = window.msPerformance.timing.responseStart - window.msPerformance.timing.navigationStart;}    </script>
28
29
30
    <title>
31
      YouTube - Broadcast Yourself
32
  </title>
33
...

Wie man sieht, obwohl ich explizit www.google.com befragt habe, gibt
mir der Server den Inhalt zurück, den man wohl erwarten würde, wenn
man www.youtube.com fragt. ;)  Genau so würde es dem Browser jedoch
auch ergehen.

Mit Proxyservern kann man natürlich sowas wiederum beliebig verbiegen
(weil man dann ja auch die gesendeten HTTP-Header in der Hand hat),
dafür muss man dann den Browser davon überzeugen, den Proxy auch zu
benutzen.

von Rolf Magnus (Gast)


Lesenswert?

Ubuntu-User schrieb:
> Mit dem Hosts-file kann man durch eingaben von
>
> 127.0.0.1 you****.com ja schon mal auf den localhost umleiten, was ein
> erreichen dieser Seite schon mal unmöglich macht. Leider geht aber:
>
> www.google.com you****.com
>
> nicht, weil der erste Eintrag eine IP sein muss (?) und kein Hostname
> sein darf (?).

Du scheinst den Sinn von /etc/hosts nicht ganz zu verstehen. Diese Datei 
dient eigentlich dazu, ip-/Namenszuordnungen, die nicht per DNS 
aufgelöst werden können, explizit azugeben und nicht etwa dazu, Zugriffe 
auf einen Rechner auf einen anderen umzulenken. Daher ergibt es auch 
keinen Sinn, hier einen Hostnamen an Stelle der IP einzutragen.

> Wie kann ich aber erreichen, das you****.com immer auf google.com
> umgeleitet wird?

Warum muß es denn unbedingt umgeleitet werden? Würde es nicht reichen, 
die entsprechende IP zu sperren?

von Ubuntu-User (Gast)


Lesenswert?

Hi zusammen

Ich danke schon einmal im Voraus für die Antworten.
Die Station soll dann für einen Kollegen von mir sein: An der Maschine 
sollen Kinder/Jugendliche weitesgehend unbeaufsichtigt surfe können, 
ohne das aber alle auf Seiten mit Namen die mit p anfangen gehen können 
(also you**** "p");))

Was mein Kollege nicht möchte ist irgend ein automatischer Filter, weil 
er ausdrücklich möchte, dass die Kinder z.B. Suchergebnisse zu "Sex" 
angezeigt bekommen, weil er findet die sollen acuh was lernen können 
(also wenn sie z.B. einen Vortrag zu irgend was vorbereiten und dann in 
wikipedia nach sex suchen sollen sie was finden;))

Ich habe es inzwischen so gelöst, dass ich lokal einen kleinen Webserver 
(also auf der Maschine selbst) aufgesetzt habe, der hostet eine Seite, 
auf der einfach steht: "verbotene Seite" (in rot:))

Mein Kollege muss dann händisch Seiten eintragen die auf diesen Weserver 
umgeleitet werden und er ist super glücklich damit:)


Danke euch allen für die guten Antworten!

Liebe Grüsse

von Robert L. (lrlr)


Lesenswert?

>Mein Kollege muss dann händisch Seiten eintragen die auf diesen Weserver
>umgeleitet werden

der scheint sich dann ja sehr gut auszukennen,
immerhin muss er immer nach neues seiten suchen,
jede Seite ausgiebig auf "verbotenes material" untersuchen um die liste 
halbwegs aktuell und vollständig zu halten

vielleicht kann er uns die liste ja mal zukommen lassen ;-)



(dass es unzählige Möglichkeiten gibt, den "Schutz" zu umgehen, brauch 
ich eh nicht schreiben, oder..)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.