Zugriff auf Webseiten per User/Passwort schützen: .htaccess / .htpasswd

  • Moin!


    Sorry, daß ich eure Hilfe brauche, aber ich finde mich auf meinem QNAP-NAS nicht mehr zurecht. Vor Äonen habe ich mal den Zugriff auf den Webserver erfolgreich vernagelt, auf daß jeder Besucher desselben ein


    Extern verlinktes Bild entfernt! Bitte im Beitrag hochladen


    präsentiert bekommt. Die dafür nötigen Einstellungen dürfte ich damals in .htaccess und .htpasswd gemacht haben und sie funktionieren auch heute noch, wie dem Screenshot zu entnehmen ist. Gerne würde ich sie nun ändern, bin aber zu dämlich, den Ort dieser beiden Dateien wiederzufinden: /share/Web ist es nun mal nicht.


    Könntet ihr bitte so freundlich sein, mir auf der Suche nach dem Speicherort behülflich zu sein?


    TIA,

    Ulrich

  • Kannst Du die Dateien nicht über die Filestation und die Erweiterte Suche suchen?

  • Kannst Du die Dateien nicht über die Filestation und die Erweiterte Suche suchen?

    Damit komme ich doch wohl nur an die Shares aber nicht an die Konfigurationsdaten des auf dem NAS laufenden Apachen, nicht wahr? Daß ich per Telnet oder SSH drauf muss, ist mir schon klar, und eigentlich sollten die auch in /share/Web stehen. Tun sie aber nicht. Wirksam sind sie aber.

    die datein sind versteckt, einfach im windows explorer aktivieren, dass er versteckte anzeigen soll

    Ich besitzte keinen Windows Explorer. Ein "ls -a" sollte dagegen auch versteckte Files anzeigen. Nur, wo bitte finde ich sie? Leider kennt das abgespeckte Linux auf der TS851 kein "locate", sonst könnte ich suchen, wo.

  • Aber "find" kennt es ;).


    Erst cd /, dann

    find . -name <name_der datei>


    Dann sollte es gefunden werden. Man kann dabei auch wildcards verwenden.


    Gruss

  • Aber "find" kennt es ;).

    Sorry. Die Existenz von "find" hatte ich verdrängt, weil "find" elendig lange im Vergleich zu "locate" dauert. Hab's derweil abgesetzt und bin zu seltsamen Ergebnissen gekommen: Mehrere .htaccess wurden gefunden, aber ausschließlich in meinen Shared Folders. Auf dem NAS liegen nämlich auch Kopien meiner extern gehosteten Websites. Da waren auch .htaccess dabei. Eine .htpasswd fand sich dagegen nirgendwo.


    Ich bin zwar jetzt nicht gerade der Apachen-Spezialist, aber müssten beide denn nicht im "DocumentRoot" des Apache liegen? Das wäre hier "/share/Web". Da ist außer

    Code
    lrwxrwxrwx  1 admin administrators   37 2018-05-23 10:54 CF64 -> /share/CACHEDEV1_DATA/.qpkg/CF64/CF64/drwxrwx---  2 admin administrators 4096 2015-09-29 15:22 common/-rwxrwx---  1 admin administrators 1601 2015-10-07 10:14 index.php*lrwxrwxrwx  1 admin administrators   49 2015-09-29 15:22 prestashop -> /share/CACHEDEV1_DATA/.qpkg/PrestaShop/prestashop/drwxrwxrwx  2 admin administrators 4096 2015-11-21 14:17 @Recycle/

    nix. Trotzdem greift der damals angelegte Passwortschutz auch heute noch, wie ich eigentlich in einem Screenshot gezeigt haben wollte: <Extern verlinktes Bild entfernt! Bitte im Beitrag hochladen>


    Mag vielleicht durch irgendein Update die Authentifizierung weg von .htaccess/.htpasswd gewandert sein? Wenn ja, wohin?

  • Nein, in der .htaccess sollte eigentlich der Pfad stehen in dem die Authorisierungsdatei liegt.

    Es gibt keine htpasswd, ausser einer htpasswd.exe (Win) oder .sh (Linux), damit erzeugt man die .htaccess Einträge.


    In der .htaccess müsste das wie folgt aussehen (Beispiel):


    Apache Configuration
    AuthUserFile /mnt/dir1/dir2/.../htdocs/.htuser

    Dann heisst das File das Du suchst .htuser .

    Bei externen Providern liegt das aber häufig im Bereich auf den Du nicht zugreifen kannst!

    Im eigenen Indianer sollte das aber möglich sein 8).


    Gruss


    Edit: was hast Du eigentlich vor?

    Ändern der Passwörter kann man durch neu setzen mittels htpasswd durchführen, mit dem Parameter -c wird eine neue htaccess Datei erstellt, alle bisherigen Einträge gehen verloren!

    Wenn Du die User Namen noch kennst kann man auch Passwörter für einzelne User neu setzen.

    P.S. Einfach mal die Suchmaschine Deiner Wahl danach suchen lassen.... ;)

    Einmal editiert, zuletzt von FSC830 ()

  • Nein, in der .htaccess sollte eigentlich der Pfad stehen in dem die Authorisierungsdatei liegt.

    Möglich, daß ich es damals genauso machte.

    Es gibt keine htpasswd

    Stimmt. Nur eine .htpasswd :) Die man auch statt einer .htusers verwenden kann.

    In der .htaccess müsste das wie folgt aussehen (Beispiel):

    Schön. Aber wo finde ich die? Genauer: Wohin ist sie entschwunden? Die finde ich nirgendwo (mehr wieder).

    Dann heisst das File das Du suchst .htuser

    Auch die finde ich nirgendwo. Auch keine .htusers, wie sie IMHO heißen müsste.

    Edit: was hast Du eigentlich vor?

    Usernamen und Passwort zum Zugriff auf http://xxx.yyy.de:6789 ändern. Das ist mein Webserver aufm QNAP. Wie man unschwer sieht, ist dort der Passwortschutz aktiv. Nur die Files - .htaccess und .htpasswd (alternativ .htusers) - die den realisieren, finde ich zwecks Ändern ums Verrecken nicht mehr wieder.


    Da er aber wirkt, müsste eigentlich in der .htaccess ein "AuthUserFile /pfad/zur/datei/.htpasswd" (Oder von mir aus auch .htusers :)) und im dort referenzierten AuthUserFile ein "Username:md5-Hash vom Passwort" stehen. Sagte ich BTW schonmal, daß ich davon nix wiederfinde …?

    Nein, in der .htaccess sollte eigentlich der Pfad stehen in dem die Authorisierungsdatei liegt.


    Steht er auch. Derweil habe ich sowohl ".htaccess" wie auch ".htpasswd" (Nur echt mit dem "." am Anfang :)) gefunden. Sie stehen schön brav in genau dem Verzeichnis, was es zu schützen galt:


    .htaccess:

    Options +Indexes
    AuthName "Finger weg. Sonst sind sie ab!"


    (das sollte jetzt auch http://ufh.qi3.de:6789 melden)


    AuthType Basic
    AuthUserFile /share/CACHEDEV1_DATA/p4tb/driveH/music.flac/.htpasswd
    Require valid-user


    .htpasswd (in genau dem in .htaccess angegebenem Pfad):


    username:MD5-Hasch des Passworts


    Nur "find" hat die ums Verrecken nicht zu finden vermocht. Und ich hatte das "Muss im DocumentRoot des Apache stehen"-Brett vorm Kopf. Leg Dich wieder hin: Danke für Deine Geduld mit mir. Wo kann man das Ticket closen?