.htaccess geht nicht

  • Hallo,


    wie im Web gelesen, möchte ich die Sicherheit meines Joomla erhöhen, indem ich den admin-Bereich mit einem .htaccess ( + .htpasswd) versehe.

    Nur : es tut nix.

    Das file ist 1:1 so wie in den Vorlagen im Web, ich denke ich verstehe es auch. und es scheint sinnvoll.
    Woran kann das liegen, wenn der Zugriff trotzdem ohne Passwortfrage klappt ?

  • Zitat

    wie im Web gelesen

    Wissen wir nicht was und wo.


    Die .htaccess im /administrator - Verzeichnis sollte das beinhalten:


    Apache Configuration
    AuthUserFile /pfad/zur/passwortdatei/.htuser 
    AuthName "Titel des Passwortschutzes"
    AuthType Basic 
    require user kannix

    Wobei der

    Code
    pfad/zur/passwortdatei

    dein Joomla-root sein sollte/könnte.

    Dort sollte auch dann die .htuser liegen.


    Deren Inhalt sollte sein:


    kannix:pw erstellt mit passwordgenerator


    pw erstellt mit passwordgenerator: erstellst du z.B.hiermit:


    .htpasswd-Generator

  • das Passwort für tunnelmann hab ich mit dem Generator erzeugt, es wird aber nicht abgefragt ..

    AuthUserFile /bitnami/joomla/administrator/privat/.htpasswd

    AuthGroupFile /dev/null

    AuthName "Statistik"

    AuthType Basic

    require user tunnelmann

  • Und der Dateiname der .htaccess ist auch richtig geschrieben und liegt im administrator-Verzeichnis und nicht etwas in dessen Unterverzeichnis /privat ?


    Sind .htaccess-Dateien bei deinem Hoster überhaupt erlaubt?

    Handelt es sich um einen Apache-Server?

  • Die Datei heißt /bitnami/joomla/administrator/privat/.htaccess


    Die soll (zum testen) zunächst das Verzeichnis ./privat schützen. Dort befinden sich php-Testfiles, die ich leider trotz dem .htaccess ohne Passwortfrage ausführen kann.
    Der Hoster bin ich selber, es ist eine bitnami-vm (Debian) mit einer fertigen Joomla-Installation auf einem Apache.


    Muß ich denn irgendwo im config noch den .htaccess aktivieren ?

  • Ist das wirklich der absolute Serverpfad, der mit /bitnami beginnt? Die Angabe an der Stelle darf nicht relativ zu deiner Domain sein, sondern muss der komplette absolute Dateipfad auf dem Server sein. Muss da nicht noch irgendwas wie /opt/bitnami/apache2/htdocs davor?

  • Ich habe gerade mal ein paar Tests gemacht. Einfach den Pfad für die Zugangsdaten geändert, so dass er nicht mehr stimmt.

    Darauf erschien ein 500er-Fehler. (Hätte gedacht, dass zumindest die Eingabe für die Zugangsdaten angezeigt wird und erst danach eine Fehlermeldung kommt).


    Dann Pfad wieder korrekt gesetzt und siehe da, die Abfrage kam gar nicht mehr. Mit einem anderen Browser kam die Abfrage wieder. Nochmal im ersten Browser probiert und die Abfrage blieb immer noch aus. Wahrscheinlich eine Cache-Problematik.


    Das könnte bei dir möglicherweise auch der Fall sein, zusätzlich zu einem eventuellen falschen Pfad für die Zugangsdaten.

  • Ich weiß, ich will ja auch das administrator-erzeichnis schützen, aber zum Testen habe ich zunächst eben nur auf das /administrator/privat gezielt.
    die .htaccess die dort steht habe ich in #4 angegeben.

    ich habe das nun auf die Idee von JoomlaWunder hin von einem anderen Rechner aus probiert : gleicher Effekt, Zugirff ohne Passwortfrage.


    Das /bitnami/joomla ist das root-Verzeichnis, jedenfalls das DocumentRoot. Da steht z.b. die index.php, wenn ich dort egene php-files ablege, kann ich sie hinter dem fakeroot portal.ts-muenchen.de/ aufrufen.
    (Als Server-Root ist glaube ich aber was anderes eingetragen.)

  • So, habe das mal Online getestet:


    Habe einen Ordner erstellt:


    administrator/privat


    Im Ordner /privat eine index.html gelegt


    Im Ordner /privat eine .htaccess erstellt:


    Apache Configuration
    AuthUserFile /mnt/rid/xx/xx/xxxxxxxx/htdocs/administrator/privat/.htuser
    
    
    
    AuthName "Test"
    AuthType Basic
    
    
    require user tunnelmann

    Im Ordner /privat eine .htuser erstellt


    Code
    tunnelmann:$1$GmcDgkrp$wy53oLbecPli2Of2HNPO31      

    Funktioniert einwandfrei. Wurde schon oft erwähnt: Du musst halt den richtigen Pfad in der .htaccess angeben

    (AuthUserFile)


    Sonst funzt es nicht.

  • Bei falschem Pfad hängt sich Apache normalerweise auf "Internal Server Error...misconfiguration..."


    Weils ein eigener Server ist: Vielleicht wird das zugehörige Apache-Basic-Auth-Modul einfach nicht geladen. Keine Ahnung, wie das exakt heißt.


    EDIT: Die zeile (oder so ähnlich. Ist aus XAMPP.), z.B. in der httpd.conf des Servers:

    Zitat

    LoadModule auth_basic_module modules/mod_auth_basic.so

  • in der httpd.conf steht diese Zeile : LoadModule auth_basic_module modules/mod_auth_basic.so


    Ich hab den Server nicht selbst installiert, das ist eine fertige Debian-VM mit Joomla von bitnami.
    Im Web finde ich Artikel wie diesen hier :


    https://docs.bitnami.com/oci/a…inistration/use-htaccess/


    in denen irgendwas über .htaccess und bitnami steht, die ich aber nicht verstehe. Ich möchte jetzt meinen "Produktiv"-Server nicht mit irgendwelchen Experimenten gefährden, die ich nicht verstehe.

  • Das /bitnami/joomla ist das root-Verzeichnis, jedenfalls das DocumentRoot. Da steht z.b. die index.php, wenn ich dort egene php-files ablege, kann ich sie hinter dem fakeroot portal.ts-muenchen.de/ aufrufen.

    Das ist genau, was ich hier als "darf nicht relativ zu deiner Domain sein" beschrieben habe:

    Ist das wirklich der absolute Serverpfad, der mit /bitnami beginnt? Die Angabe an der Stelle darf nicht relativ zu deiner Domain sein, sondern muss der komplette absolute Dateipfad auf dem Server sein. Muss da nicht noch irgendwas wie /opt/bitnami/apache2/htdocs davor?

    Um das mit dem Pfad jetzt mal eindeutig zu klären: Leg eine .php-Datei in das Verzeichnis, wo die .htpasswd liegen soll, mit folgendem Inhalt:

    PHP
    <?php
    echo realpath(dirname(__FILE__));

    Rufe sie dann im Browser auf und schau, welcher Pfad dir ausgegeben wird. Den musst du verwenden.


    Wenn das nicht das Problem ist, teste mal, ob die .htaccess überhaupt verwendet wird. Dazu kannst du z.B. oben in die .htaccess ein "deny from all" schreiben. Dann sollten sämtliche Anfragen blockiert werden. Wenn du dann (nach Löschen des Browsercaches, oder mal mit nem anderen Browser versuchen) immer noch auf Dateien in diesem Verzeichnis zugreifen kannst, greift die .htaccess nicht.

    Da bist du dann aber mit deiner Frage in einem Bitnami-Forum besser aufgehoben als hier.