Apache 2.0.53 welcher crypt f .htpasswd?

Moin, werte Gemeinde!

Ich steh hier vor einem Problem, welches ich nach stundenlangem googlen und wälzen meiner angestaubten Schwarten nicht in den Griff krieg.

Ich benutze den Apache 2.0.53 unter WinXP Pro.
Verzeichnisschutz wird derzeit per Konsole eingerichtet (htpasswd.exe -c usw…)

Das möchte ich vereinfachen um auch von unterwegs aus ein Passwort zu ändern.

Das Format einer .htpasswd sieht in einigen Zügen immer gleich aus (die .htpasswd-Dateien liegen neben den .htaccess, benutzer.txt gibts nicht)

[Benutzername][Doppelpunkt][Dollarzeichen][4stelliger crypt][Dollarzeichen][3stelliger crypt][5 Punkte(…)][Dollarzeichen][22stelliger crypt][Zeilenumbruch]

Also z.B. so:
WalTerHe:blush:apr1$Lj5…$58o3kSOUxd5dhGT0.qyiB1

Um jetzt mein php-Script richtig zu schreiben, welches mir das auswechseln des Passwortes ermöglicht, müsste ich wissen um welche Verschlüsselung es sich handelt oder Formatierung davon?

Alle Seiten, die ich im Google gefunden und ausprobiert habe liefern ein anderes und nicht brauchbares Ergebnis.

Kennt jemand diesen crypt?

Danke
widecrypt

Um jetzt mein php-Script richtig zu schreiben, welches mir das
auswechseln des Passwortes ermöglicht, müsste ich wissen um
welche Verschlüsselung es sich handelt oder Formatierung
davon?

M. W. handelt es sich dabei um einen MD5-Hash. Um diesen im vom Apache benötigten Format zu kreieren, benutzt du am sinnvollsten die vom Apache mitgelieferten Werkzeuge selbst. Indem du auf dem Server ein Script (z. B. Perl) aufrufst, welches dann anhand der übergebenen Parameter die eigentliche Arbeit erledigt. Setzt sinnvollerweise voraus, dass das Script über eine ssl-Verbindung aufgerufen wird.

HTH
Schorsch

M. W. handelt es sich dabei um einen MD5-Hash. Um diesen im
vom Apache benötigten Format zu kreieren, benutzt du am
sinnvollsten die vom Apache mitgelieferten Werkzeuge selbst.
Indem du auf dem Server ein Script (z. B. Perl) aufrufst,
welches dann anhand der übergebenen Parameter die eigentliche
Arbeit erledigt. Setzt sinnvollerweise voraus, dass das Script
über eine ssl-Verbindung aufgerufen wird.

HTH
Schorsch

Mit dem Script bin ich soweit. SSL natürlich auch.
Aber ich brauch den Verschlüsselungsmodus.
Sprich: Wie baut man das Passwort, dass es korrekt in der .htpasswd funktioniert?
Aus dem Ordner in dem das Script läuft, kann ich nicht auf die von Apache mitgelieferte htpasswd.exe zugreifen. Ich weiss nicht ob das mit php überhaupt möglich wäre.

In php hab ich die Möglichkeit ein eingebenes Passwort md5 zu verschlüsseln (und ne Menge mehr). Aber was da rauskommt passt nicht. Irgendwas muss noch damit passieren. Aber was?

Gruß
widecrypt

Aus dem Ordner in dem das Script läuft, kann ich nicht auf die
von Apache mitgelieferte htpasswd.exe zugreifen. Ich weiss
nicht ob das mit php überhaupt möglich wäre.

Warum nicht? Ich kenne php nicht, es sollte aber doch möglich sein, einen system call abzusetzen. Und wenn die htpasswd.exe im falschen Pfad steht, steht es dir frei, sie in den Systempfad (z. B. windows oder windows\system32) hineinzukopieren. Im Zweifel musst du als Parameter für htpasswd halt voll qualifizierte Dateinamen verwenden.

Gruss
Schorsch

Warum nicht? Ich kenne php nicht, es sollte aber doch möglich
sein, einen system call abzusetzen. Und wenn die htpasswd.exe
im falschen Pfad steht, steht es dir frei, sie in den
Systempfad (z. B. windows oder windows\system32)
hineinzukopieren. Im Zweifel musst du als Parameter für
htpasswd halt voll qualifizierte Dateinamen verwenden.

Gruss
Schorsch

Ja schon. Ich kann einen Systemcall absetzen. Die Passworterstellerei per htpasswd.exe läuft aber interaktiv. Frage, Antwort, Frage, Antwort, usw.

Summa Summarum: Ich brauch den Weg zum Erstellen von der .htpasswd.

Gruß
widecrypt

Hallo,

Ja schon. Ich kann einen Systemcall absetzen. Die
Passworterstellerei per htpasswd.exe läuft aber interaktiv.
Frage, Antwort, Frage, Antwort, usw.

also bei mir sagt

htpasswd.exe --help

unter anderem
-b Use the password from the command line rather than prompting for it,
was eine nicht-interaktive Arbeitsweise zur Folge hat.


Philipp

Wer lesen kann ist klar im Vorteil! Danke!!!
Es funzt:

php-code für alle dies mal brauchen:

$result = shell_exec(‚C:/apachefriends/xampp/apache/bin/htpasswd -b C:/apachefriends/xampp/htdocs/tests/.htpasswd meinname meinpasswort‘);

Jetzt benutz’ ich den Apache seit ca. 5 Jahren und hab das noch nie gelesen. *schäm*

Dank auch an Schorsch der sich mit mir die Birne zerbrochen hat.

GRuß
widecrypt