Rankin: .htaccess: order allow deny

Hallo! Ich möchte gerne ein Verzeichnis meiner Homepage nur für meine Domain "zugreifbar" machen...

Ich habe eine .htaccess-Datei mit folgendem Inhalt erstellt:

Order deny, allow
Deny from all
Allow from rankinsworld.de

Nun kann ich auch nicht mehr von meiner Domain aus auf die Dokumente zugreifen.... was ist daran falsch, so steht es im Apache Manual!?

MfG

Rankin

  1. guten Abend,

    Ich habe eine .htaccess-Datei mit folgendem Inhalt erstellt:
    Order deny, allow
    Deny from all
    Allow from rankinsworld.de

    Das sollte eigentlich in Ordnung gehen.

    Nun kann ich auch nicht mehr von meiner Domain aus auf die Dokumente zugreifen.... was ist daran falsch

    Möglicherweise die Domain. Ist das eine "echte" Domain (Denic) oder hast du sie bei einem Hoster bestellt, der sie noch irgendwie anders "umleitet" ? Hast du mal versucht, anstelle des Domainnamens die zugehörige IP einzugeben?

    so steht es im Apache Manual!?

    Wenn ich annehme, daß dein Webserver ein Apache 2.0.x ist, so ist die zuständige Doku http://httpd.apache.org/docs-2.0/mod/mod_access.html#allow. Meinst du die?

    Grüße aus Berlin

    Christoph S.

    1. Morgen!

      Der Apache ist ein 1.3.xer.  Die Domain ist von http://www.netbeat.de. Wie kriege ich denn die definitive IP? Muss ich bei meinem Hoster nachfragen? Die IP, die beim FTP Upload angesteuert wird funktioniert jedenfalls auch nicht.

      Das Manual ist das hier: http://httpd.apache.org/docs/howto/auth.html

  2. Moin!

    Order deny, allow
    Deny from all
    Allow from rankinsworld.de

    Damit verbietest du allen den Zugriff, außer sie greifen von einem Rechner aus zu, der zur Domain "rankinsworld.de" gehört.

    Die Feststellung, ob dies der Fall ist, tritt der Apache-Webserver, indem er die IP-Adresse auflöst und nachsieht, wer dahintersteckt.

    Nun kann ich auch nicht mehr von meiner Domain aus auf die Dokumente zugreifen.... was ist daran falsch, so steht es im Apache Manual!?

    Ist die IP, mit der du ins Netz gehst, unter der angegebenen Domain registriert? Wenn nein, hast du den Beweis, dass deine Datei funktioniert und dich wunschgemäß aussperrt.

    Deiner lückenhaften Beschreibung entnehme ich, dass du offenbar sowas wie einen Zugangsschutz einrichten wolltest. Den kannst du damit nicht realisieren, sofern du nicht über eine feste IP-Adresse verfügst, die du als "allow from" eintragen kannst, oder über eine IP-Adresse verfügst, die sich in einen eindeutigen Domainnamen auflöst.

    Beide Dinge dürften für 99% aller privaten Internetzugänge nicht gegeben sein (dynamische IPs würden erfordern, dass du einem ganzen Adressbereich Zugriffsrecht gibst - das wäre dann aber nicht mehr sicher, und die IP wird vom Provider in einen Namen aufgelöst - auf diesen Vorgang hast du ebenfalls keinerlei Einfluß, also ergibt das ebenfalls keinerlei Sicherheit).

    - Sven Rautenberg

    --
    ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|
    1. Sorry, aber du verstehst glaub ich nicht, was ich meine. Lies mal die Antwort von Christoph Schnauß, das mein ich :)
      Aber trotzdem danke!!!

      1. Moin!

        Sorry, aber du verstehst glaub ich nicht, was ich meine. Lies mal die Antwort von Christoph Schnauß, das mein ich :)

        Deine Antwort auf Christophs Antwort ist aber auch noch nicht wirklich aussagekräftig.

        Kannst du mal in anderen, einfachen Worten sagen, was du bezwecken willst? Ich glaube nämlich immer noch, dass du nicht ganz verstehst, was du da machst.

        - Sven Rautenberg

        --
        ss:) zu:) ls:[ fo:} de:] va:) ch:] sh:) n4:# rl:| br:< js:| ie:( fl:( mo:|
        1. hi,

          Kannst du mal in anderen, einfachen Worten sagen, was du bezwecken willst? Ich glaube nämlich immer noch, dass du nicht ganz verstehst, was du da machst.

          zustimmung.

          im moment werden alle zugriffe abgeblockt, die nicht von der gleichen IP stammen, wie sie für die domain rankinsworld.de hinterlegt ist.

          mir scheint, hier liegt eine verständnisschwierigkeit vor, was dies überhaupt bedeutet, und der frager verwechselt dies z.b. mit einem trafficklau-"schutz" für bilder per referer-abfrage o.ä.

          gruss,
          wahsaga

          1. Ich möchte machen, dass man zum Beispiel die Bilder in einem Verzeichnis nicht von fremden Domains aus aufrufen kann. So einen Traffic-Klau-Schutz, genau. Aber mit den angegebenen Befehlen kann niemand mehr die Bilder aufrufen, auch meine eigene Domain nicht.

            1. hi,

              Ich möchte machen, dass man zum Beispiel die Bilder in einem Verzeichnis nicht von fremden Domains aus aufrufen kann. So einen Traffic-Klau-Schutz, genau. Aber mit den angegebenen Befehlen kann niemand mehr die Bilder aufrufen, auch meine eigene Domain nicht.

              eben, und dafür setzt du, wie sven schon sagte, ein vollkommen ungeeignetes mittel ein.

              also, lesen & verstehen, anstatt mit

              Sorry, aber du verstehst glaub ich nicht, was ich meine.

              zu antworten, wenn der fall in wirklichkeit genau andersherum liegt.

              und zu deinem problem, sieh dir mal die tipps unter http://www.trafficklau.de/ an.

              gruss,
              wahsaga

              1. Wieso ist htaccess deiner Meinung nach nicht geeignet?

                1. Hallo,

                  Wieso ist htaccess deiner Meinung nach nicht geeignet?

                  Es ist durchaus geeignet (soweit Referrer-basierte Methoden "geeignet" sind).
                  Aber Du machst es komplett falsch und begreifst offenbar nicht, was Du tust.
                  (Es wurde Dir in diesem Thread mehrmals erklaert, aber Du stellst Dich taub.)

                  Ich setze diese Methode mit "Erfolg" ein.
                  .htaccess-Beispiele gibt's hier:
                  http://www.trafficklau.de/htaccess.html
                  http://www.scriptygoddess.com/archives/000988.php
                  Die Domain musst Du natuerlich anpassen!

                  Gruesse,

                  Thomas

                  1. Ich hab diesen Code mal verwendet... aber irgendwie zeigt meine Seite nun nicht mehr alle Bilder an...

                    Beispiel: hund.jpg wird angezeigt, aber kamel.jpg nicht! Beide sind jpgs aber das eine wird nicht angezeigt... wieso denn das jetzt???

                    1. Jetzt gehts, hab noch bissl rumgespielt. Eine Frage noch...

                      Wenn ein swf-Objekt eingefügt wird, geht das auch von fremden Domains aus... ich hab auch den swf Typ zu den jpg und gif Typen gezählt. Wieso kann man swf Dateien immernoch einbinden?

                      1. hallo,

                        Wenn ein swf-Objekt eingefügt wird, geht das auch von fremden Domains aus...

                        Natürlich. Wie mit nahezu jeder anderen Datei auch.

                        ich hab auch den swf Typ zu den jpg und gif Typen gezählt.

                        Was meinst du damit? Du kannst natürlich deinen eigenen Dokument-Typ festlegen, aber daß irgendetwas "swf" heißt, hat im strengen Sinn überhaupt keine Bedeutung. In der Praxis werden mit dieser Extension aber oft Flash-Konstruktionen benannt.

                        Wieso kann man swf Dateien immernoch einbinden?

                        Weil Flash sich einer bedauerlicherweise immer noch steigenden Beliebheit erfreut vielleicht?

                        Grüße aus Berlin

                        Christoph S.

                        1. RewriteEngine on

                          RewriteCond %{HTTP_REFERER} !^$

                          RewriteCond %{HTTP_REFERER} !^http://url.de/.*$     [NC]

                          ReWriteRule .*.(gif|jpg|jpeg|png|swf)$ http://www.url.de/ersatzbild.jpg [R,L]

                          So kann nur von meiner Domain auf gifs usw zugegriffen werden, ansonsten wird ersatzbild.jpg angezeigt. SWF (also Flashdateien) können aber ohne weiteres von anderen Domains benutzt werden, obwohl ich sie auch dazugefügt habe. Und meine Frage ist wieso und wie ich das wie bei den Bildern verhindern kann.

                          1. hi,

                            So kann nur von meiner Domain auf gifs usw zugegriffen werden, ansonsten wird ersatzbild.jpg angezeigt. SWF (also Flashdateien) können aber ohne weiteres von anderen Domains benutzt werden, obwohl ich sie auch dazugefügt habe. Und meine Frage ist wieso und wie ich das wie bei den Bildern verhindern kann.

                            "swf" sind eben keine Grafiken. Das bedeutet: jpg-Grafiken stehen in "mime.types" zum Beispiel als "image/jpeg" drin, gif und png dementsprechend als "image/gif" und "image/png". Flash-Konstrukte sind aber ein ganz anderer MIME-Typ. Sie werden als "application/x-shockwave-flash" geführt. Du müßtest, wenn du sie denn explizit erlauben/verbieten möchtest, auch für "application/x-shockwave-flash" eine "Rule" definieren.

                            Grüße aus Berlin

                            Christoph S.

                            1. Ah, ok. Ich dachte das geht nach den Dateiendungen. Wie definiere ich denn so eine rule und vor allem wo?

                            2. Moin!

                              "swf" sind eben keine Grafiken. Das bedeutet: jpg-Grafiken stehen in "mime.types" zum Beispiel als "image/jpeg" drin, gif und png dementsprechend als "image/gif" und "image/png". Flash-Konstrukte sind aber ein ganz anderer MIME-Typ. Sie werden als "application/x-shockwave-flash" geführt. Du müßtest, wenn du sie denn explizit erlauben/verbieten möchtest, auch für "application/x-shockwave-flash" eine "Rule" definieren.

                              Absoluter Schwachsinn!

                              Die RewriteRules von Rankin nehmen nirgendwo auch nur den geringsten Bezug auf irgendeinen Mime-Typ. Also kann es ja wohl kaum an diesem liegen, wenn unterschiedliche URL-Endungen unterschiedlich funktionieren.

                              Der einzige Unterschied zwischen normalen Bildern und Flash ist, dass die Bilder vom Browser geladen werden, und die Flash-Dateien vom Flash-Plugin. Und ein Grund für eine unterschiedliche Behandlung durch die Rewrite-Rule könnte darin liegen, dass das Plugin einen anderer Referrer sendet, als der Browser beim Bilderladen. Das müßte durch Analyse der Access-Logfiles verifiziert werden.

                              Als Ansatzpunkt für eine Fehlersuche in den Regeln würde ich zunächst beim Referrer ansetzen. Ein Zugriff ist derzeit unter etwas seltsamen umständen möglich: Der Referrer muß von "url.de" kommen, umgeleitet wird dann aber auf ein Bild auf "www.url.de" - das ist nicht dieselbe Domain, auch wenn vielleicht derselbe Inhalt dahintersteht.

                              Außerdem ist nicht unwahrscheinlich, dass hier eine Endlosschleife gebildet wurde. Alle Bilder auf ".jpg" werden, wenn der Referrer "nicht leer" ist oder "nicht url.de" ist, per _Redirect_ umgeleitet auf "leeresbild.jpg". Durch den Redirect wird vom Browser ein neuer Request nach "leeresbild.jpg" gestartet - welches natürlich auch unter die ".jpg"-Regel fällt. Ist nur die Frage, mit welchem Referrer der Browser den Request sendet: Mit dem Referrer vom alten Ort (dann wäre eine Endlosschleife geschlossen), oder mit dem Referrer von der neuen Site (dann würde die Regel hier abbrechen). Ich würde jedenfalls an dieser Stelle _nicht_ mit einem Redirect antworten, wenn die Bilder mit einem existierenden, aber falschem Referrer abgerufen wurden, sondern entweder mit [F] (forbidden - dann wird mit Statuscode 403 geantwortet, der Browser zeigt das broken Image und es wird der Traffic für das Ersatzbild eingespart), oder nur mit [L] (last rule - keine weiteren Rewrite-Rules anwenden, die URL auf das Bild wird aber nur intern geändert und führt, ohne dass es von außen bemerkt wird, zur Auslieferung des Ersatzbildes unter der URL des Originalbildes).

                              Ich bin mir recht sicher, dass Flash ebenfalls abgedeckt wird, wenn [F] in der RewriteRule benutzt wird. Denn das Flash-Plugin will ja ein SWF haben - oder auch nicht - aber bestimmt kein JPEG-Bild.

                              - Sven Rautenberg

                              --
                              "Beim Stuff für's Web gibts kein Material, was sonst das Zeugs ist, aus dem die Sachen sind."
                              (fastix®, 13. Oktober 2003, 02:26 Uhr)
                2. hi,

                  Wieso ist htaccess deiner Meinung nach nicht geeignet?

                  habe ich nicht behauptet - aber deny/allow ist, so wie du es einsetzt, ungeeignet.
                  so werden nämlich die angeforderten dateien nur dann ausgeliefert, wenn der client, der sie anfordert, auf dem rechner läuft, auf dem deine webseite liegt (dein webserver) - das ist aber sicher nicht das, was du bezwecken möchtest.

                  gruss,
                  wahsaga

      2. hallo,

        Lies mal die Antwort von Christoph Schnauß, das mein ich :)

        Sven hat dir im Endeffekt genau dasselbe gesagt wie ich, bloß mit etwas anderen Worten.

        Grüße aus Berlin

        Christoph S.