Discussion:
robots.txt
(zu alt für eine Antwort)
Helmut Wuensch
2010-01-26 12:30:49 UTC
Permalink
Ein Hallo an Alle!

Ich habe mir gerade ein Log-file
des Datenverkehrs unserer HP ange-
schaut und die Anfrage
"GET / HTTP/1.1" und
"GET /robots.txt HTTP/1.1" (/1.0)
gefunden.

Und da ich hier viele Fachfrauen/männer
vermute, entschuldige ich mich schon
'mal für meine für Euch sicher trivialen
Fragen, bitte Euch aber trotzdem um
Beantwortung. :-)

Frage 1:
Was macht die 1. Zeile?
Ich vermute, da wird die index.htm(l)
angefordert! ... und evtl. mit Java-
Script Version 1.1 ausgeführt?

Frage 2:
In der 2. Zeile holt sich die Such-
maschine die angegebene Datei. Damit
kann ich ihr dann sagen, was sie
nicht darf. 'Google' sagte dazu:
" ...
Die Syntax für die Datei robots.txt ist sehr
einfach und ihr Inhalt sieht in der Regel
wie folgt aus:

* User-agent: *
* Disallow: /cgi-bin/
* Disallow: /kundendaten/

In diesem Fall werden zwei Verzeichnisse
von der Indizierung ausgenommen. ...
... "

Dies ist eigentlich klar! (... Bis auf die
Sterne am Anfang: Meiner Vermutung nach
gehören die schon hin, oder?)

Nun aber zur _Hauptfrage_:
Wenn ich html-files und Unterverzeichnisse
habe und dann sage, dass diese NICHT abge-
klopft werden dürfen, weiß dann nicht jede
_unseriöse_ Suchmaschine gerade die Dateien,
die ich eigentlich nicht gescannt haben möchte?
(Wohl die meisten werden sich sicher dranhalten,
aber ....)
Wenn ich deshalb keine Datei/DIR verbiete,
ist deren Name doch unbekannt und deshalb nicht
scannbar! (Oder erhält man trotzdem vom Server
das ganze Verzeichnis aufgelistet?)
[Also ich meine hierbei Dateien, auf die
_kein_ Link von einer anderen html-Seite
zeigt!!]

Schon 'mal vielen DANK für Eure Mühe!

cu Helmut
Peter J. Holzer
2010-01-26 17:38:56 UTC
Permalink
Post by Helmut Wuensch
Ein Hallo an Alle!
Ich habe mir gerade ein Log-file
des Datenverkehrs unserer HP ange-
schaut und die Anfrage
"GET / HTTP/1.1" und
"GET /robots.txt HTTP/1.1" (/1.0)
gefunden.
Und da ich hier viele Fachfrauen/männer
vermute, entschuldige ich mich schon
'mal für meine für Euch sicher trivialen
Fragen, bitte Euch aber trotzdem um
Beantwortung. :-)
Was macht die 1. Zeile?
Ich vermute, da wird die index.htm(l)
angefordert!
Nein. Angefordert wird "/". Dein Webserver mag so konfiguriert sein,
dass er auf diese Anforderung mit dem Inhalt von /var/www/index.html
antwortet, aber das ist eine lokale Einstellungssache. Er könnte auch in
einer Datenbanktabelle nach dem Eintrag mit dem Schlüssel "/" suchen,
oder ein Programm mit dem Parameter "/" aufrufen und dessen Output
zurückliefern oder sonstwas machen.

Genauer gesagt, ist "/" der Pfad-Anteil vom angeforderten URL. Der
Host-Anteil steht im Header Host: der per default nicht mitgeloggt wird
(lässt sich aber einschalten). Der Client hat also z.B.
http://www.example.com/ angefordert, indem er über HTTP

GET / HTTP/1.1
Host: www.example.com
...

geschickt hat.
Post by Helmut Wuensch
... und evtl. mit Java-
Script Version 1.1 ausgeführt?
Wie kommst Du auf JavaScript? Da steht doch eindeutig "HTTP/1.1". Die
Anforderung ist über HTTP Version 1.1 (die aktuelle Version von HTTP)
erfolgt.
Post by Helmut Wuensch
In der 2. Zeile holt sich die Such-
maschine die angegebene Datei. Damit
kann ich ihr dann sagen, was sie
Wenn ich nach dem Text suche, finde ich www.hello-engines.de, nicht
Google.
Post by Helmut Wuensch
" ...
Die Syntax für die Datei robots.txt ist sehr
einfach und ihr Inhalt sieht in der Regel
* User-agent: *
* Disallow: /cgi-bin/
* Disallow: /kundendaten/
In diesem Fall werden zwei Verzeichnisse
von der Indizierung ausgenommen. ...
... "
Dies ist eigentlich klar! (... Bis auf die
Sterne am Anfang: Meiner Vermutung nach
gehören die schon hin, oder?)
Nein, die gehören da nicht hin. Wo hast Du die her?
Post by Helmut Wuensch
Wenn ich html-files und Unterverzeichnisse
habe und dann sage, dass diese NICHT abge-
klopft werden dürfen, weiß dann nicht jede
_unseriöse_ Suchmaschine gerade die Dateien,
die ich eigentlich nicht gescannt haben möchte?
Nein, sie weiß nur, womit die URLs anfangen, die Du nicht gescannt
haben möchtest. Es gibt keinen Grund, vollständige URLs da
hineinzuschreiben.
Post by Helmut Wuensch
(Wohl die meisten werden sich sicher dranhalten,
aber ....)
Wenn ich deshalb keine Datei/DIR verbiete,
ist deren Name doch unbekannt und deshalb nicht
scannbar!
Nein. Nur weil der Name nicht in robots.txt steht, ist noch nicht
garantiert, dass er nicht woanders steht.
Post by Helmut Wuensch
(Oder erhält man trotzdem vom Server
das ganze Verzeichnis aufgelistet?)
[Also ich meine hierbei Dateien, auf die
_kein_ Link von einer anderen html-Seite
zeigt!!]
Das kannst Du i.A. nicht wissen. Nur weil Du keinen Link dorthin gelegt
hast, heißt das nicht, dass es nicht jemand anderer getan hat.

Wenn Du nicht willst, dass etwas öffentlich wird, dann musst Du es
schützen (z.B. mit Username u. Passwort). Etwas ins Web zu stellen und
sich darauf zu verlassen, dass es keiner findet, ist fahrlässig.

/robots.txt ist kein Sicherheitsmechanismus. Es dient zu einem Bot
mitzuteilen, welche Bereiche einer Site nicht indiziert werden sollen,
hauptsächlich aus technischen Gründen (die URLs in dem Bereich sind
kurzlebig und/oder zu viele), eher als Nebeneffekt auch aus inhaltlichen
Gründen. Aber es ist nur ein höflicher Hinweis, es hindert niemanden
(weder Bot noch interaktiven Client) daran, auf die Daten zuzugreifen.

hp
Helmut Wuensch
2010-01-27 11:59:30 UTC
Permalink
Hallo Peter,

vielen, herzlichen Dank für Deine wirklich
umfassende Erklärung!

Peter J. Holzer schrieb:
...
Post by Peter J. Holzer
Wenn Du nicht willst, dass etwas öffentlich wird, dann musst Du es
schützen (z.B. mit Username u. Passwort). Etwas ins Web zu stellen und
sich darauf zu verlassen, dass es keiner findet, ist fahrlässig.
Ja, das ist mir schon klar! (Aber wenn man "nur"
Webspace hat, ohne PHP o.ä. so sind die "einfachen"
Schutzmechanismen für nicht ganz so brisante Inhalte
m.M.n. ausreichend!)

Danke!

cu Helmut
Florian Diesch
2010-01-27 14:08:38 UTC
Permalink
Post by Helmut Wuensch
Hallo Peter,
vielen, herzlichen Dank für Deine wirklich
umfassende Erklärung!
...
Post by Peter J. Holzer
Wenn Du nicht willst, dass etwas öffentlich wird, dann musst Du es
schützen (z.B. mit Username u. Passwort). Etwas ins Web zu stellen und
sich darauf zu verlassen, dass es keiner findet, ist fahrlässig.
Ja, das ist mir schon klar! (Aber wenn man "nur"
Webspace hat, ohne PHP o.ä. so sind die "einfachen"
Schutzmechanismen für nicht ganz so brisante Inhalte
m.M.n. ausreichend!)
robots.txt ist *kein* Schutzmechanismus. Damit kannst du nur einige
Suchmaschinen bitten, bestimmte Ressourcen nicht zu indizieren.

Florian
--
<http://www.florian-diesch.de/software/xxgamma/>
Simon Krahnke
2010-01-28 09:24:17 UTC
Permalink
Post by Helmut Wuensch
Hallo Peter,
vielen, herzlichen Dank für Deine wirklich
umfassende Erklärung!
...
Post by Peter J. Holzer
Wenn Du nicht willst, dass etwas öffentlich wird, dann musst Du es
schützen (z.B. mit Username u. Passwort). Etwas ins Web zu stellen und
sich darauf zu verlassen, dass es keiner findet, ist fahrlässig.
Ja, das ist mir schon klar! (Aber wenn man "nur"
Webspace hat, ohne PHP o.ä. so sind die "einfachen"
Schutzmechanismen für nicht ganz so brisante Inhalte
m.M.n. ausreichend!)
Ein ganz einfacher Schutzmechanismus ist ein kryptischer Pfadname, der
nirgendwo gelistet ist. Den behandelt man wie ein Passwort, und fertig.

Wenn man diesen Pfadnamen jetzt allerdings in die robots.txt schreibt,
veröffentlicht man ihn, und alles ist für die Katz.

Die Suchmaschinen werden den Pfad schon deshalb nicht indizieren, weil
sie ihn nicht kennen.

mfg, simon .... l
Gustaf Mossakowski
2010-01-28 18:55:18 UTC
Permalink
Post by Simon Krahnke
Ein ganz einfacher Schutzmechanismus ist ein kryptischer Pfadname, der
nirgendwo gelistet ist. Den behandelt man wie ein Passwort, und fertig.
Wenn man diesen Pfadnamen jetzt allerdings in die robots.txt schreibt,
veröffentlicht man ihn, und alles ist für die Katz.
Die Suchmaschinen werden den Pfad schon deshalb nicht indizieren, weil
sie ihn nicht kennen.
Allerdings ist das in Zeiten von Browsern oder Toolbars, die die aktuell
besuchte URL an einen Suchmaschinenanbieter zurücksenden, keine gute
Sicherung, auch ohne Eintrag in der robots.txt.

Gruß, Gustaf
Peter J. Holzer
2010-01-28 20:11:22 UTC
Permalink
[Vorbemerkung: Die Klarstellungen sind eher für den OP gedacht - Simon
erzähle ich da vermutlich nichts neues]
Post by Simon Krahnke
Post by Helmut Wuensch
...
Post by Peter J. Holzer
Wenn Du nicht willst, dass etwas öffentlich wird, dann musst Du es
schützen (z.B. mit Username u. Passwort). Etwas ins Web zu stellen und
sich darauf zu verlassen, dass es keiner findet, ist fahrlässig.
Ja, das ist mir schon klar! (Aber wenn man "nur"
Webspace hat, ohne PHP o.ä. so sind die "einfachen"
Schutzmechanismen für nicht ganz so brisante Inhalte
m.M.n. ausreichend!)
Ein ganz einfacher Schutzmechanismus ist ein kryptischer Pfadname, der
nirgendwo gelistet ist. Den behandelt man wie ein Passwort, und fertig.
BTDT.
Post by Simon Krahnke
Wenn man diesen Pfadnamen jetzt allerdings in die robots.txt schreibt,
veröffentlicht man ihn, und alles ist für die Katz.
Wie bereits geschrieben, in die robots.txt schreibt man normalerweise
keine vollständigen Pfade, sondern nur Präfixe. Wenn Du also

/geheim/c4ca4238a0b923820dcc509a6f75849b.html
/geheim/c81e728d9d4c2f636f067f89cc14862c.pdf
/geheim/eccbc87e4b5ce2fe28308fd9f2a7baf3.pdf
/geheim/a87ff679a2f3e71d9181a67b7542122c.ppt

hast, dann schreibst Du nicht diese vier Pfade ins robots.txt sondern
/geheim/
Der der Bot kann ruhig erfahren, dass es da ein Directory /geheim/
gibt, an die Files wird er trotzdem nicht herankommen.

Das setzt natürlich voraus, dass /geheim/ keine Links auf die
enthaltenen Dokumente enthält - aber das muss sowieso gewährleistet
sein, denn auf die Idee, in /geheim/ nachzuschauen, was da sonst noch
sein könnte, kommt bald wer, der einen Link auf
/geheim/c4ca4238a0b923820dcc509a6f75849b.html erhält.
Post by Simon Krahnke
Die Suchmaschinen werden den Pfad schon deshalb nicht indizieren, weil
sie ihn nicht kennen.
Und genau da liegt der Schwachpunkt dieses Schemas.

Wie heißt es so schön? "Three men can keep a secret - if two of them are
dead."

Wenn der Link irgendwo im "öffentlichen Web" auftaucht, dann wird er
früher oder später einer Suchmaschine bekannt werden.

Ich erlebe das immer wieder, dass User ganz überrascht sind, wenn ihre
ach so geheimen URLs, die sie ganz sicher nie nie (isch schwör!)
irgendwo veröffentlicht haben, plötzlich auf Seite 1 der
Google-Suchergebnisse auftauchen.

hp
Simon Krahnke
2010-01-29 00:23:47 UTC
Permalink
Post by Peter J. Holzer
Wie bereits geschrieben, in die robots.txt schreibt man normalerweise
keine vollständigen Pfade, sondern nur Präfixe. Wenn Du also
/geheim/c4ca4238a0b923820dcc509a6f75849b.html
/geheim/c81e728d9d4c2f636f067f89cc14862c.pdf
/geheim/eccbc87e4b5ce2fe28308fd9f2a7baf3.pdf
/geheim/a87ff679a2f3e71d9181a67b7542122c.ppt
hast, dann schreibst Du nicht diese vier Pfade ins robots.txt sondern
/geheim/
Der der Bot kann ruhig erfahren, dass es da ein Directory /geheim/
gibt, an die Files wird er trotzdem nicht herankommen.
Ack.
Post by Peter J. Holzer
Post by Simon Krahnke
Die Suchmaschinen werden den Pfad schon deshalb nicht indizieren, weil
sie ihn nicht kennen.
Und genau da liegt der Schwachpunkt dieses Schemas.
Den gleichen Schwachpunkt hat jedes Geheimhaltungsschema.
Post by Peter J. Holzer
Wie heißt es so schön? "Three men can keep a secret - if two of them are
dead."
Wenn der Link irgendwo im "öffentlichen Web" auftaucht, dann wird er
früher oder später einer Suchmaschine bekannt werden.
Ja, niemand bezweifelt, das ein richtiges Passwort besser ist, aber auch
das muss man geheimhalten. Und man kann auch alle drei Verfahren
kombinieren, öffentliches, gesperrtes Prefix, Passwort und kryptischer
Name.
Post by Peter J. Holzer
Ich erlebe das immer wieder, dass User ganz überrascht sind, wenn ihre
ach so geheimen URLs, die sie ganz sicher nie nie (isch schwör!)
irgendwo veröffentlicht haben, plötzlich auf Seite 1 der
Google-Suchergebnisse auftauchen.
Ich hinterlege so auch keine wirklich geheimen Daten, und wenn sowas
rausleakt, dann wird halt unbenannt, und das Spiel geht von vorne los.

mfg, simon .... l
Stefan+ (Stefan Froehlich)
2010-01-29 09:55:53 UTC
Permalink
niemand bezweifelt, das ein richtiges Passwort besser ist, [als
ein geheim gehaltener Pfadname] aber auch das muss man geheimhalten.
Schon. Das Passwort kann man in der Regel aber nicht versehentlich
gemeinsam mit der restlichen URL uebermitteln (sei es als Benutzer via
copy/paste, sei es ueber einen Referer, sei es ueber Toolbars).

Servus,
Stefan
--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Geht nicht!? Aber, aber - es gibt doch Stefan!
(Sloganizer)
Simon Krahnke
2010-01-29 10:18:34 UTC
Permalink
Post by Stefan+ (Stefan Froehlich)
niemand bezweifelt, das ein richtiges Passwort besser ist, [als
ein geheim gehaltener Pfadname] aber auch das muss man geheimhalten.
Schon. Das Passwort kann man in der Regel aber nicht versehentlich
gemeinsam mit der restlichen URL uebermitteln (sei es als Benutzer via
copy/paste, sei es ueber einen Referer, sei es ueber Toolbars).
Das ist aber eben auch so ziemlich der einzige Grund, warum ein
richtiges Passwort besser ist.

mfg, simon .... l
Andreas Treichel
2010-01-31 14:27:30 UTC
Permalink
Post by Stefan+ (Stefan Froehlich)
Schon. Das Passwort kann man in der Regel aber nicht versehentlich
gemeinsam mit der restlichen URL uebermitteln (sei es als Benutzer via
copy/paste, sei es ueber einen Referer, sei es ueber Toolbars).
Welche Browser senden ein über die URL übergebenes Passwort im Referer mit?
Simon Krahnke
2010-01-31 18:40:49 UTC
Permalink
Post by Andreas Treichel
Post by Stefan+ (Stefan Froehlich)
Schon. Das Passwort kann man in der Regel aber nicht versehentlich
gemeinsam mit der restlichen URL uebermitteln (sei es als Benutzer via
copy/paste, sei es ueber einen Referer, sei es ueber Toolbars).
Welche Browser senden ein über die URL übergebenes Passwort im Referer mit?
Wo sie haben sie denn die Gelegenheit dazu? Also wo wird das Passwort
per GET-Request angefordert?

mfg, simon .... l
Ralf Döblitz
2010-01-31 15:20:49 UTC
Permalink
Post by Andreas Treichel
Post by Stefan+ (Stefan Froehlich)
Schon. Das Passwort kann man in der Regel aber nicht versehentlich
gemeinsam mit der restlichen URL uebermitteln (sei es als Benutzer via
copy/paste, sei es ueber einen Referer, sei es ueber Toolbars).
Welche Browser senden ein über die URL übergebenes Passwort im Referer mit?
Du meinst den Query-String der verlinkenden Seite? Welche Browser tun
das _nicht_, das ist doch Standard?

Ralf
--
Ralf Döblitz * Schapenstraße 6 * 38104 Braunschweig * Germany
Phone: +49-531-2361223 Fax: +49-531-2361224 mailto:***@doeblitz.net
Homepage: http://www.escape.de/users/selene/
Mit UTF-8 kann man gleichzeitig äöüßÄÖÜæœłø‱¼½¾¤¹²³¢€£¥¶§¬÷×±©®™¡¿ verwenden…
Peter J. Holzer
2010-01-29 22:26:12 UTC
Permalink
Post by Simon Krahnke
Post by Peter J. Holzer
Wie bereits geschrieben, in die robots.txt schreibt man normalerweise
keine vollständigen Pfade, sondern nur Präfixe. Wenn Du also
/geheim/c4ca4238a0b923820dcc509a6f75849b.html
/geheim/c81e728d9d4c2f636f067f89cc14862c.pdf
/geheim/eccbc87e4b5ce2fe28308fd9f2a7baf3.pdf
/geheim/a87ff679a2f3e71d9181a67b7542122c.ppt
hast, dann schreibst Du nicht diese vier Pfade ins robots.txt sondern
/geheim/
Der der Bot kann ruhig erfahren, dass es da ein Directory /geheim/
gibt, an die Files wird er trotzdem nicht herankommen.
Ack.
Post by Peter J. Holzer
Post by Simon Krahnke
Die Suchmaschinen werden den Pfad schon deshalb nicht indizieren, weil
sie ihn nicht kennen.
Und genau da liegt der Schwachpunkt dieses Schemas.
Den gleichen Schwachpunkt hat jedes Geheimhaltungsschema.
Post by Peter J. Holzer
Wie heißt es so schön? "Three men can keep a secret - if two of them are
dead."
Wenn der Link irgendwo im "öffentlichen Web" auftaucht, dann wird er
früher oder später einer Suchmaschine bekannt werden.
Ja, niemand bezweifelt, das ein richtiges Passwort besser ist, aber auch
das muss man geheimhalten.
Aber man muss nur ein Passwort geheimhalten, und von dem weiß man, dass
man es geheimhalten soll und zwar vor jedem. Den URL hingegen darf und
muss man an andere Leute weitergeben, die dazu berechtigt sind, das zu
lesen, und das heißt, dass man sich jedesmal überlegen muss, ob der URL
geheim ist, wenn ja, wer ihn wissen darf, etc. Viel zu fehleranfällig
außer für triviale Anwendungen.
Post by Simon Krahnke
Post by Peter J. Holzer
Ich erlebe das immer wieder, dass User ganz überrascht sind, wenn ihre
ach so geheimen URLs, die sie ganz sicher nie nie (isch schwör!)
irgendwo veröffentlicht haben, plötzlich auf Seite 1 der
Google-Suchergebnisse auftauchen.
Ich hinterlege so auch keine wirklich geheimen Daten, und wenn sowas
rausleakt, dann wird halt unbenannt, und das Spiel geht von vorne los.
Und die 17793 anderen User, die nicht am Leak schuld sind, dürfen dann
das File erneut suchen ...

Aus gutem Grund trennt man normalerweise zwischen Authentifikation und
Autorisation. Mit Username und Passwort (oder meinetwegen auch per
Public Key, OTP, Netzhautscan, ...) wird festgestellt wer der User ist
und beim Zugriff wird dann festgestellt, ob dieser User das überhaupt
darf. Du hast Dein Passwort, die Amalie hat ein anderes. Wenn Du mit
Deinem Passwort schlampig umgehst, kann man Dein Passwort ändern oder
Deinen Zugang überhaupt sperren, die Amalie ist davon nicht betroffen.
Wenn man aber Authentifikation und Autorisation über ein "geheimes",
allen berechtigten bekanntes Token (hier der Filename) in einen Topf
wirft, geht das nicht mehr. Wenn dieses Token leakt, muss man den
Zugriff für dieses Token und damit für alle User sperren.

hp
Simon Krahnke
2010-01-30 11:56:13 UTC
Permalink
Post by Peter J. Holzer
Post by Simon Krahnke
Ja, niemand bezweifelt, das ein richtiges Passwort besser ist, aber auch
das muss man geheimhalten.
Aber man muss nur ein Passwort geheimhalten, und von dem weiß man, dass
man es geheimhalten soll und zwar vor jedem. Den URL hingegen darf und
muss man an andere Leute weitergeben, die dazu berechtigt sind, das zu
lesen, und das heißt, dass man sich jedesmal überlegen muss, ob der URL
geheim ist, wenn ja, wer ihn wissen darf, etc. Viel zu fehleranfällig
außer für triviale Anwendungen.
Wenn man verschiedene Passwörter per User hat, kann man auch
verschiedene URLs per User haben.
Post by Peter J. Holzer
Post by Simon Krahnke
Ich hinterlege so auch keine wirklich geheimen Daten, und wenn sowas
rausleakt, dann wird halt unbenannt, und das Spiel geht von vorne los.
Und die 17793 anderen User, die nicht am Leak schuld sind, dürfen dann
das File erneut suchen ...
Die Gesamtmenge ist äußerst begrenzt, bisher gab es nie ein Leak, und
ich teile denen die URL sowieso jedesmal neu mit.

mfg, simon .... l
Florian Diesch
2010-01-29 02:25:45 UTC
Permalink
Post by Peter J. Holzer
Post by Simon Krahnke
Wenn man diesen Pfadnamen jetzt allerdings in die robots.txt schreibt,
veröffentlicht man ihn, und alles ist für die Katz.
Wie bereits geschrieben, in die robots.txt schreibt man normalerweise
keine vollständigen Pfade, sondern nur Präfixe. Wenn Du also
/geheim/c4ca4238a0b923820dcc509a6f75849b.html
/geheim/c81e728d9d4c2f636f067f89cc14862c.pdf
/geheim/eccbc87e4b5ce2fe28308fd9f2a7baf3.pdf
/geheim/a87ff679a2f3e71d9181a67b7542122c.ppt
hast, dann schreibst Du nicht diese vier Pfade ins robots.txt sondern
/geheim/
Der der Bot kann ruhig erfahren, dass es da ein Directory /geheim/
gibt, an die Files wird er trotzdem nicht herankommen.
Das setzt natürlich voraus, dass /geheim/ keine Links auf die
enthaltenen Dokumente enthält - aber das muss sowieso gewährleistet
sein, denn auf die Idee, in /geheim/ nachzuschauen, was da sonst noch
sein könnte, kommt bald wer, der einen Link auf
/geheim/c4ca4238a0b923820dcc509a6f75849b.html erhält.
Wenn es dort nichts zu indizieren gibt, kann man sich den Eintrag in der
robots.txt auch einfach sparen.

Die robots.txt ist nur sinnvoll für Seiten, die für menschliche Besucher
zugänglich sein, aber von Bots ignoriert werden sollen.



Florian
--
<http://www.florian-diesch.de/software/shell-scripts/>
Simon Krahnke
2010-01-29 10:16:57 UTC
Permalink
Post by Florian Diesch
Post by Peter J. Holzer
Wie bereits geschrieben, in die robots.txt schreibt man normalerweise
keine vollständigen Pfade, sondern nur Präfixe. Wenn Du also
/geheim/c4ca4238a0b923820dcc509a6f75849b.html
/geheim/c81e728d9d4c2f636f067f89cc14862c.pdf
/geheim/eccbc87e4b5ce2fe28308fd9f2a7baf3.pdf
/geheim/a87ff679a2f3e71d9181a67b7542122c.ppt
hast, dann schreibst Du nicht diese vier Pfade ins robots.txt sondern
/geheim/
Der der Bot kann ruhig erfahren, dass es da ein Directory /geheim/
gibt, an die Files wird er trotzdem nicht herankommen.
Das setzt natürlich voraus, dass /geheim/ keine Links auf die
enthaltenen Dokumente enthält - aber das muss sowieso gewährleistet
sein, denn auf die Idee, in /geheim/ nachzuschauen, was da sonst noch
sein könnte, kommt bald wer, der einen Link auf
/geheim/c4ca4238a0b923820dcc509a6f75849b.html erhält.
Wenn es dort nichts zu indizieren gibt, kann man sich den Eintrag in der
robots.txt auch einfach sparen.
Die robots.txt ist nur sinnvoll für Seiten, die für menschliche Besucher
zugänglich sein, aber von Bots ignoriert werden sollen.
Aber eben auch für den Fall, das der Name leakt. Dann wird er wenigstens
von Google und Co ignoriert, und ist ewig lang in deren Cache.

mfg, simon .... l
Thomas Hühn
2010-01-26 17:51:25 UTC
Permalink
Post by Helmut Wuensch
Ich habe mir gerade ein Log-file
des Datenverkehrs unserer HP ange-
schaut und die Anfrage
"GET / HTTP/1.1" und
"GET /robots.txt HTTP/1.1" (/1.0)
gefunden.
[...]
Was macht die 1. Zeile?
Ich vermute, da wird die index.htm(l)
angefordert! ... und evtl. mit Java-
Script Version 1.1 ausgeführt?
Nein, da sagt der Client, daß er unter Verwendung von HTTP 1.1 die
Ressource "/" haben möchte.

Dein Webserver ist offenbar so konfiguriert, daß er dann die index.htm
ausliefert (das ist durchaus üblich).
Post by Helmut Wuensch
In der 2. Zeile holt sich die Such-
maschine die angegebene Datei. Damit
kann ich ihr dann sagen, was sie
Ja.
Post by Helmut Wuensch
Die Syntax für die Datei robots.txt ist sehr
einfach und ihr Inhalt sieht in der Regel
* User-agent: *
* Disallow: /cgi-bin/
* Disallow: /kundendaten/
In diesem Fall werden zwei Verzeichnisse
von der Indizierung ausgenommen. ...
... "
Dies ist eigentlich klar! (... Bis auf die
Sterne am Anfang: Meiner Vermutung nach
gehören die schon hin, oder?)
Nein. Die gehören da keinesfalls hin.
Post by Helmut Wuensch
Wenn ich html-files und Unterverzeichnisse
habe und dann sage, dass diese NICHT abge-
klopft werden dürfen, weiß dann nicht jede
_unseriöse_ Suchmaschine gerade die Dateien,
die ich eigentlich nicht gescannt haben möchte?
Ja. Nachdem das aber eh kein wirklicher Schutz ist, stellst du ohnehin
keine sensiblen Ressourcen frei zugreifbar im Web bereit.
Post by Helmut Wuensch
Wenn ich deshalb keine Datei/DIR verbiete,
ist deren Name doch unbekannt und deshalb nicht
scannbar!
Richtig.
Post by Helmut Wuensch
(Oder erhält man trotzdem vom Server das ganze Verzeichnis
aufgelistet?)
Unter Umständen. Eigentlich zunächst mal nicht, aber wiederum gilt:
viele Webserver sind so eingestellt, daß sie Inhaltsverzeichnisse
zurückliefern. Kannst du ja selbst mal nachschauen, was deiner macht.
Post by Helmut Wuensch
[Also ich meine hierbei Dateien, auf die
_kein_ Link von einer anderen html-Seite
zeigt!!]
Irgendwie werden solche Dateien doch meistens bekannt. Und sei es, daß
du beim Umorganisieren oder anderen Tätigkeiten im Webspace und deinen
HTML-Dokumenten doch mal kurz versehentlich einen Link produziert hast
(der muß nicht "explizit" sein, da reicht ja auch schon eine
mißglückte Rewrite-Regel) und zufällig gerade da jemand vorbeikam.

Aber wie bereits angedeutet: Das Problem ist keines.

Ganz sensible Daten gehören in keiner Form "auf den Webserver".

Daten, die eigentlich niemand sehen soll, mußt du "richtig" handhaben,
beispielsweise per Paßwortschutz. Und dann halt sicher sein, daß du da
keinen Fehler machst. Also besser auch die fern vom Webserver halten.

Und alles andere liegt halt bereit, verlinkt oder nicht.

Ich selbst sehe einen Haupteinsatzzweck für die robots.txt:

"Hinter der Ressource stecken lauter dynamisch generierte Links; da
spiderst du völlig unnötig und findest aus dem Linklabyrinth auch nie
wieder raus. Laß mich doch einfach in Frieden."

Andere Leute mögen noch mehr Zwecke finden.

Thomas
Helmut Wuensch
2010-01-27 12:15:34 UTC
Permalink
Hi Thomas,

auch Dir vielen, vielen Dank für die absolut
tolle Erklärung!

Thomas Hühn schrieb:
...
Post by Thomas Hühn
Nein, da sagt der Client, daß er unter Verwendung von HTTP 1.1 die
Ressource "/" haben möchte.
Dein Webserver ist offenbar so konfiguriert, daß er dann die index.htm
ausliefert (das ist durchaus üblich).
Also eine Konfigurationssache! OK!

...
Post by Thomas Hühn
Post by Helmut Wuensch
(Oder erhält man trotzdem vom Server das ganze Verzeichnis
aufgelistet?)
viele Webserver sind so eingestellt, daß sie Inhaltsverzeichnisse
zurückliefern. Kannst du ja selbst mal nachschauen, was deiner macht.
Und wie geht so etwas? (Da ist doch wiederum PHP zuständig, oder?)
Vielleicht kannst dies 'mal testen: computerclub-kaufbeuren.de
[Ein "menschlicher Gucker" findet sicher die Datei über das Thema
"invalid"; aber es sollte vor Automaten einigermaßen sicher sein. -
(Ich hab' nämlich nicht um "Erlaubnis" gebeten!)] ;-)

...
Post by Thomas Hühn
Ganz sensible Daten gehören in keiner Form "auf den Webserver".
Klar und einverstanden! :-)

...

Nochmals Danke!

cu Helmut
Thomas Hühn
2010-01-27 15:44:00 UTC
Permalink
Post by Helmut Wuensch
Post by Thomas Hühn
Post by Helmut Wuensch
(Oder erhält man trotzdem vom Server das ganze Verzeichnis
aufgelistet?)
viele Webserver sind so eingestellt, daß sie Inhaltsverzeichnisse
zurückliefern. Kannst du ja selbst mal nachschauen, was deiner macht.
Und wie geht so etwas? (Da ist doch wiederum PHP zuständig, oder?)
Beim Apache:

http://httpd.apache.org/docs/2.2/mod/core.html#options

| Indexes
|
| Wenn eine URL, die auf ein Verzeichnis zeigt, in dem sich keine
| durch DirectoryIndex definierte Indexdatei (z.B. index.html)
| befindet, dann liefert mod_autoindex eine formatierte Auflistung des
| Verzeichnisses zurück.

Thomas
Helmut Wuensch
2010-01-28 14:51:25 UTC
Permalink
Hi Thomas!

Thomas Hühn schrieb:
...
Post by Thomas Hühn
http://httpd.apache.org/docs/2.2/mod/core.html#options
| Indexes
|
| Wenn eine URL, die auf ein Verzeichnis zeigt, in dem sich keine
| durch DirectoryIndex definierte Indexdatei (z.B. index.html)
| befindet, dann liefert mod_autoindex eine formatierte Auflistung des
| Verzeichnisses zurück.
Also ich hab' fast nur "get"-Befehle gefunden, wie
"GET / HTTP/1.1" und
"GET /robots.txt HTTP/1.1" (/1.0)

bis auf 2 x : "HEAD /robots.txt HTTP/1.1"

Und ich vermute stark, dass in der obigen Beschreibung
die Betonung wohl auf
"_keine_ ... Indexdatei (z.B. index.htm[l])"
liegt!

Nochmals danke!

cu Helmut
Irmgard Schwenteck
2010-01-28 18:47:00 UTC
Permalink
hallo
Post by Helmut Wuensch
Post by Thomas Hühn
| Indexes
|
| Wenn eine URL, die auf ein Verzeichnis zeigt, in dem sich keine
| durch DirectoryIndex definierte Indexdatei (z.B. index.html)
| befindet, dann liefert mod_autoindex eine formatierte Auflistung des
| Verzeichnisses zurück.
Also ich hab' fast nur "get"-Befehle gefunden, wie
"GET / HTTP/1.1" und
"GET /robots.txt HTTP/1.1" (/1.0)
Das hat mit einer Auflistung des Inhaltes vorerst nichts zu tun.
GET / heißt : "Hallo Webserver, gib mir das, was grad als
Standard-Dokument definiert ist."
Das kann nun "index.htm" oder "index.php" oder "default.htm" sein,
jenachdem, was grad festgelegt ist. Wenn mehrere dieser Dateien
vorhanden sind, entscheidet die Reihenfolge, in der diese
Standard-Dokumente auf dem Webserver definiert sind.

Wenn kein Standarddokument vorhanden ist UND die Auflistung gestatt ist,
dann liefert der Webserver ein Dokument aus, welches alle Inhalte in
diesem Verzeichnis auflistet.
z.B. bei http://4haus.de/lehrgang/
Wenn Du Dir das im Quelltext anschaust, sieht Du, das das ein einfaches
HTML-Dokument ist.
Post by Helmut Wuensch
bis auf 2 x : "HEAD /robots.txt HTTP/1.1"
heißt: "Gibts das Dokument /robots.txt überhaupt? Bevor ich hier sinnlos
anfrage."
Post by Helmut Wuensch
Und ich vermute stark, dass in der obigen Beschreibung
die Betonung wohl auf
"_keine_ ... Indexdatei (z.B. index.htm[l])"
liegt!
so isses.

Gruß
Irmgard
--
http://bessere-welt.de/
Simon Krahnke
2010-01-29 00:15:51 UTC
Permalink
Post by Irmgard Schwenteck
Post by Helmut Wuensch
bis auf 2 x : "HEAD /robots.txt HTTP/1.1"
heißt: "Gibts das Dokument /robots.txt überhaupt? Bevor ich hier sinnlos
anfrage."
Und wo ist das der Sinn? Beides gibt wenn nicht da ein 404, und wenn
doch da muss noch ein GET folgen.

mfg, simon .... l
Helmut Wuensch
2010-01-28 14:45:58 UTC
Permalink
Hallo Thomas, Simon, Florian und Peter!

Vielen Dank für Eure Hilfe!
Es sind absolut gute Tipps!

cu Helmut
Lesen Sie weiter auf narkive:
Loading...