.htaccess Schutz klappt ums Verrecken nicht

  • Ab sofort steht euch hier im Forum die neue Add-on Verwaltung zur Verfügung – eine zentrale Plattform für alles rund um Erweiterungen und Add-ons für den DSM.

    Damit haben wir einen Ort, an dem Lösungen von Nutzern mit der Community geteilt werden können. Über die Team Funktion können Projekte auch gemeinsam gepflegt werden.

    Was die Add-on Verwaltung kann und wie es funktioniert findet Ihr hier

    Hier geht es zu den Add-ons

Status
Für weitere Antworten geschlossen.

toppen

Benutzer
Registriert
05. Jan. 2010
Beiträge
87
Reaktionspunkte
0
Punkte
0
Hallo Leute,

nach stundenlangen Tests und Stunden, die ich hier mit Lesen verbracht habe, muss ich nun mal fragen:

Bin ich zu doof?

Mein Problem:

Ich will eine Website mit einzelnen Verzeichnissen durch eine .htaccess Datei schützen.

Der Pfad ist "/volume1/homes/test/www/"

In diesem Verzeichnis des users liegt die "index.html" und die ".htaccess".
Rufe ich nun meine Domain auf, kommt auch die Abfrage mit "user" und "Passwort". Wenn ich das aber eingebe bekomme ich die Fehlermeldung

"Die Website kann diese Seite nicht anzeigen.
HTTP 500
Wahrscheinlichste Ursachen:
•Die Website wird momentan gewartet.
•Die Website enthält einen Programmierfehler.
"

angezeigt.
Was bitte mache ich falsch? Habe es nach der Anleitung im Wiki gemacht.

Bin für jede Hilfe dankbar.

Viele Grüße,

Marc
 
Poste doch einmal die .htaccess-Datei. Auch die Berechtigungen dieser wäre interessant.

Wird ohne .htaccess die index.html richtig angezeigt?

Itari
 
Frage: Wo genau liegt die htpasswd Datei? Etwa im geschützten Bereich? Dann kann htaccess die passwd Datei nicht lesen und wirft einen Fehler
 
Hallo!

So, es hat etwas länger gedauert und ich habe einen Tei lder Fehler schön selber bereinigt. Zum Aufbau (von oben nach unten):

Ordner "www"
Ordner "intern" | Ordner "passwd" | index.html => Da komme ich jetzt problemlos drauf.
Im Ordner "intern" sind die zu schützenden Verzeichnisse und die .htaccess
Im Ordner "passwd" ist die normal.pw Datei, die die User mit Passwort enthält.

Wenn ich nun auf meine Seite gehe, komme ich auf die index.html. Von dieser gehts in den Internen Bereich. Klicke ich auf dne Link, so kommt die Abfrage. Dort kann ich jetzt aber User und Passwort eingeben. Es passiert jedoch nichts. Nach dem 3. Versuch kommt nun der Fehler 401:

"Authorization Required
This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.


--------------------------------------------------------------------------------

Apache/2.2.16 (Unix) mod_ssl/2.2.16 OpenSSL/1.0.0a PHP/5.3.3 Server at xxxyz.de Port 80"
 
Oh, vergessen.

Hier die .htaccess

AuthName "Title"
AuthType "Basic"
AuthUserFile "/volume1/homes/test/www/passwd/normal.pw"
require hoga hogb kammergrund

und die normal.pw

hoga:test
hogb:test
kammergrund:test
 
Und dann gebe ich z. B. trotzdem "test" als pw ein?
Und dann gehts?
 
Du gibst in der Maske das PW test ein. Im passwd File steht aber nicht test, sondern ein kryptischer String. Sobald der Apache dein test PW bekommt wird er es mit der gleichen Funktion "verschlüsseln" und dann mit dem Wert in htpasswd vergleichen. Stimmen die überein, dann ist der User authentifiziert.
AuthUserFile "/volume1/homes/test/www/passwd/normal.pw"
und wo genau in diesem Pfad liegt denn die htaccess Datei?
 
Ok, ich teste.
Die htaccess liegt im Ordner "intern", welcher im Ordner "www" liegt.
 
So, probiert. Ich verstehe das tool so, dass ich username und pw eingebe und die daruas errechnete Zeile in die normal.pw eintrage.
Habe ich gemacht und geht nicht.
 
Drum auch noch die Frage meinerseit wo genau die htaccess Datei liegt. Denn der jenachdem wo sie liegt unterbindet sie auch den Zugriff auf htpasswd d.h. der Server kann gar nicht nachgucken ob das PW stimmt oder nicht weil ihm die Rechte fehlen.
Bitte gib mal an in welchem Verzeichnis die htaccess Datei liegt und wo genau die htpasswd. Bitte komplette Pfade angeben
 
Der Pfad ist:

"/volume1/homes/test/www/intern/.htaccess"

und

"/volume1/homes/test/www/passwd/normal.pw"
 
Und die .htaccess liegt sicher nicht direkt in www? Zumdem ist passwd auch garantiert kein Unterverzeichnis von intern? Dann scheint von der "Lage" der Files her alles korrekt zu sein. Dann muss der Fehler im passwd File selber sein.
Ich guck mir das mal bei mir zu Hause an und melde mich wieder
 
Alles so, wie es sich gehört.
Liegts daran, weil ich die teile mit dem Editor erstellt habe?
 
Nee. In die .htaccess - beim Pfad. Der Stand in Anführungszeichen. Blöd.
Aber es lag ja auch an der Verschlüsselung. Die hatte ich vorher auch nicht.
Kann ich denn das Verzeichnis, in der die normal.pw (Passwortdatei) liegt nun auch noch schützen? Sonst kann da ja jeder reingucken. Oder ist das egal, da dort nur ein langer Schlüssel pro User drin liegt? Kann man das rückschlüsseln? Oder muss ich das Verzeichnis nicht schützen?
 
Es gibt mehrere Möglichkeiten die htpasswd zu schützen:
1. legt dir in diesem Verzechnis eine .htaccess Datei an (ohne PW Schutz) und verweigere dort drin jegliche Zugriffe auf das Verzeichnis. Der Server liest das File via Dateisystem aus bei der Auth und ist damit nicht von dieser Einschränkung betroffen

2. leg die htpasswd Datei ausserhalb des DocumentRoots ab. Der Webserver braucht zwar immer noch Leserechte auf die Datei, aber da sie ausserhalb von DocRoot liegt, kann man sie über die URL niemals erreichen. Es ist also ausgeschlossen, dass ein User diese Datei im Browser sehen kann

3. gib der Datei einen solch kryptischen Namen, dass nie ein User drauf kommen würde, dass eine solche Datei vorhanden sein könnte ;)

Persönlich verwende ich 2) um bestimmte Verzeichnisse bei mir zu schützen.
3) ist nicht ganz ernst gemeint, aber es gibt Leute die das so machen :eek: Dieser Ansatz heisst Security by Obscurity. Dem müsste man anfügen "is no security at all"
 
Für mich als DAU erscheint Möglichkeit 1 die einfachste zu sein.
Wie kan ich in der htaccess dann jeglichen Zugriff auf das Verzeichnis verweigern?
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat