chrisv10
Goto Top

htpasswd aus batch erstellen

Hallo,


heute hat es mich erwischt und ich soll eine Batchdatei schreiben die folgendes können muss.

Zuerst soll sie eine Datei bereinigen ---> Die Datei jeweils meheren Zeile mit Leerzeilen an unterschiedlichen Stellen. Diese müssen aufgespürt werden und gelöscht werden. (es handelt sich dabei um usernamen)

Danach soll sie ein htaccess Password generieren und hinter den jeweiligen Usernamen schreiben (+ einen : hinter den namen)


Hat jemand nen Vorschlag wie ich da ran gehen sollte? (es muss eine batch datei sein) oder kann mir fertige Beispiele nennen?


MfG

Chris

Content-Key: 119631

Url: https://administrator.de/contentid/119631

Ausgedruckt am: 28.03.2024 um 14:03 Uhr

Mitglied: Biber
Biber 02.07.2009 um 18:37:35 Uhr
Goto Top
Moin chrisv10,

willkommen im Forum.
Zitat von @chrisv10:
Hallo,

... ich soll eine Batchdatei schreiben die folgendes können muss...
[...]
Hat jemand nen Vorschlag wie ich da ran gehen sollte?

Ich würde an Deiner Stelle als erstes den Auftraggeber um eine brauchbare Spezifikation bitten.

Ob das ganze unter Linux, Debian oder Windows laufen soll zum Beispiel.
Ob ein bestimmtes htpasswd-Utility mit einer bestimmten Syntax verwendet werden soll.
Ob das htaccess-Passwort für alle Benutzer gleich sein soll oder plain oder verschlüsselt oder nach MD5...

Ob er diese Anweisung hier eventuell ohne Wörterbuch zu übersetzen versucht hat
Zuerst soll sie eine Datei bereinigen ---> Die Datei jeweils
meheren Zeile mit Leerzeilen an unterschiedlichen Stellen.
Diese müssen aufgespürt werden und gelöscht werden. (es
handelt sich dabei um usernamen)
Ahnliche Gebrauchsanweisungen habe ich das letzte Mal auf einer Packung Trockenfutter für Silberfische gelesen.

Und wenn Du weißt, von wo Du loslaufen sollst und wohin, dann treffen wir uns hier wieder.

Grüße
Biber
Mitglied: chrisv10
chrisv10 03.07.2009 um 08:08:15 Uhr
Goto Top
Zitat von @Biber:
Moin chrisv10,

willkommen im Forum.
> Zitat von @chrisv10:
> ----

Ob das ganze unter Linux, Debian oder Windows laufen soll zum
Beispiel.
Ob ein bestimmtes htpasswd-Utility mit einer bestimmten Syntax
verwendet werden soll.
Ob das htaccess-Passwort für alle Benutzer gleich sein soll oder
plain oder verschlüsselt oder nach MD5...



Ich brauch das teil für alle. Welche dann gestartet wird entscheide ich über ein C# Prog. und es muss keinen bestimmten Syntax haben und selbstverständlich sollte nicht jeder das gleiche bekommen.

Ok ich versuche mich besser auszudrücken.

Ich habe eine C# Anwendung geschrieben die eine CSV Datei auslist. Die sortiere ich mir das so das ich die emailadressen als User habe. Diese Schreibe ich dann in die .htpasswd.
Da nicht jeder eine Email angegeben hat schaut das dann in der htpasswd ca so aus:

user1@gmx.de
user4@gmx.de

user5@gmx.de

user7@gmx.de


Dann folgt nur noch ein Aufruf der .bat Datei.
Diese muss dann erstmal die Leerzeilen entfernen.
Danach den obligatorischen : hinter jeden user schreiben, danach soll sie das Passwort generieren am besten sowohl für Lynux und auch für Windows.
Mitglied: 60730
60730 03.07.2009 um 10:51:39 Uhr
Goto Top
Zitat von @chrisv10:
> Zitat von @Biber:
> ----
> Moin chrisv10,
>
> willkommen im Forum.
> > Zitat von @chrisv10:
> > ----
> Ob das ganze unter Linux, Debian oder Windows laufen soll zum
> Beispiel.
> Ob ein bestimmtes htpasswd-Utility mit einer bestimmten Syntax
> verwendet werden soll.
> Ob das htaccess-Passwort für alle Benutzer gleich sein soll oder
> plain oder verschlüsselt oder nach MD5...

Ich brauch das teil für alle.

Moin,
dann wirst du aber mit Bätch zu keinem Erfolg kommen - denn die können nur die windosen abarbeiten ;-(

Welche dann gestartet wird entscheide ich über ein C# Prog. und es muss keinen bestimmten
Syntax haben und selbstverständlich sollte nicht jeder das gleiche bekommen.

Ok ich versuche mich besser auszudrücken.

Ich habe eine C# Anwendung geschrieben die eine CSV Datei ausliest.
Die sortiere ich mir das so das ich die emailadressen als User habe.
Diese Schreibe ich dann in die .htpasswd.
Da nicht jeder eine Email angegeben hat schaut das dann in der htpasswd ca so aus:

user1@gmx.de
user4@gmx.de

user5@gmx.de

user7@gmx.de

ergo fragst du beim einlesen ab, ob der eingelesene Wert vorhanden ist und nur dann schreibst du den eingelesenen Wert in deine CSV.

Dann folgt nur noch ein Aufruf der .bat Datei.
Diese muss dann erstmal die Leerzeilen entfernen.

Nein - siehe oben...

Danach den obligatorischen : hinter jeden user schreiben, danach
soll sie das Passwort generieren am besten sowohl für Lynux und
auch für Windows.

Mal ganz im Ernst, wenn du dir beim coden soviel Mühe gibts, wie hier...kann nur code dabei rauskommen...

Gruß
Mitglied: Biber
Biber 03.07.2009 um 11:08:31 Uhr
Goto Top
Moin chrisv10,

sorry, wenn ich mich so unscharf ausgedrückt habe bezüglich der Nachfrage zur Passwortgenerierung.

Nochmal:
Wenn Deine jetzige "htpasswd"-Testdatei so aussieht wie oben, dann kannst Du unter Windows-CMD-Batchen einfach mit einer FOR/F-Anweisung jede Zeile auslesen und eine neue "htpasswd-mit-ergänzungen"-textdatei schreiben.
Leerzeilen werden dabei automatisch ignoriert.
For /F %i in ('x:\Deine\htpasswdjetzt') Do @echo %i:EinPasswort

Das wäre die Skizze für Part1/generiert auf einer Windows-Büchse.

Meine Frage nach der "htpasswd" bezog sich auf ein "htpasswd"-Utility, also unter Windows eine htpasswd.exe.
Das Teil, das Passworte generiert/verschlüsselt/wegschreibt. Siehe Suchmaschine.
Oder hast Du so etwas gar nicht auf dem Zettel?

Wenn nein-> wie/mit welchen Konventionen soll die Batch sich Passworte ausdenken?
Mindestens 6 Zeichen? Klein/Grossbuchstaben? Ziffern? Mindestens ein Sonderzeichen oder wie oder was?

Grüße
Biber
Mitglied: chrisv10
chrisv10 03.07.2009 um 12:26:17 Uhr
Goto Top
ja über die htpasswd.exe habe ich auch schön drüber nachgedacht aber damit wäre nur das windows Problem gelöst und die gehen nicht auf lynux. eine htpasswd für lynux die man auf einen windows system ausführt habe ich bis jetzt nicht gefunden.

Danke für den hinweis mit den text update. Zum Passwort. Es soll 7 buchstaben haben wobei min. 1 Großbuchstabe und 1 Zahl dabei sein müssen. Sonderzeichen können müssen aber nicht. diese passwörter müssen einmal in eine extra txt und einmal entsprechend verschlüsselt in die hdaccess.

Geht sowas oder ist das zu viel.. dann lass ich mir was anderes einfallen.

PS: die Passwörter werden immer auf einen windows System erzeugt aber es wäre schön wenn die batch ne art abfrage hätte für welches sys es gebaut werden sollte damit es gegebenenfalls auch für lynux server passwörter erzeugen könnte.