Hallo zusammen, hoffentlich bin ich hier im richtigen Forenbereich.
Ich habe eine Textdatei welche Datensätze enthält, die folgendermaßen aufgebaut sind
username;passwort(Klartext);gruppe1;gruppe2
Ein Shellscript soll diese Datei lesen und für jede Zeile einen Benutzer anlegen, welcher zur Gruppe 1 und/oder Gruppe 2 gehört. Wäre ja an sich nicht die große Sache - aber leider macht mir die Sache mit dem Passwort zu schaffen. Soweit ich die Manpages überblicke, kommt "useradd" in Frage. Aber die -p Option verlangt das bereits verschlüsselte Passwort. Wie kann ich die Verschlüsselung im Skript hinbekommen? Dazu scheine ich leider keinen Draht zu finden.
Kann mir bitte jemand auf die Sprünge für den den useradd Befehl helfen, damit das Klartext-Passwort hier in eine gecryptetes umgewandelt wird?
Ja, ich weiss generell, was ich da tue Die beiden Dateien werden nur zum Benutzer-Anlegen auf den Rechner übertragen und anschliessend gelöscht. Ich will das nur reproduzierbar haben und mir vor allen Dingen Zeit sparen, da ich dass ganze jederzeit neu machen muss.
Ich danke im Voraus.
Mehrere Benutzer über Shell-Skript anlegen
-
- Beiträge: 26
- Registriert: 08.05.2021 22:43:21
Re: Mehrere Benutzer über Shell-Skript anlegen
Etwas probieren, Manpage und google brachte folgenden Einzeiler, den du in dein Skript einbauen kannst:
und dann
Code: Alles auswählen
useradd -d / -g users -p $(perl -e'print crypt("foo", "aa")') -M -N foo
Code: Alles auswählen
~$ su - foo
Passwort:
$ id
uid=1002(foo) gid=100(users) Gruppen=100(users)
$ exit
Re: Mehrere Benutzer über Shell-Skript anlegen
Ich wollte dir gerade mkpasswd aus whois vorschlagen.
Bin dabei aber auf newusers (aus dem immer installierten passwd) gestoßen. Das macht anscheinend schon genau das, was du möchtest: mehrere Benutzer in einem Rutsch anlegen. Und nimmt unverschlüsselte Passwörter entgegen.
Bin dabei aber auf newusers (aus dem immer installierten passwd) gestoßen. Das macht anscheinend schon genau das, was du möchtest: mehrere Benutzer in einem Rutsch anlegen. Und nimmt unverschlüsselte Passwörter entgegen.
Manchmal bekannt als Just (another) Terminal Hacker.
Re: Mehrere Benutzer über Shell-Skript anlegen
Habe auch noch etwas interessantes gefunden: chpasswd
Nimmt nutzername:password als Eingabe (Klartext!) und aktualisiert vorhandene Nutzer mit dem neuen Kennwort. Man könnte also erst mal Nutzer ohne Passwort anlegen und dann mit deiner schon vorhandenen Datei (minus die Gruppen) das Passwort setzen.
Nimmt nutzername:password als Eingabe (Klartext!) und aktualisiert vorhandene Nutzer mit dem neuen Kennwort. Man könnte also erst mal Nutzer ohne Passwort anlegen und dann mit deiner schon vorhandenen Datei (minus die Gruppen) das Passwort setzen.
-
- Beiträge: 26
- Registriert: 08.05.2021 22:43:21
Re: Mehrere Benutzer über Shell-Skript anlegen
Mensch ... so schnell gelöst, dank euch - und dann noch drei Lösungen auf einmal.
Ich danke euch!!!
Ich danke euch!!!
Re: Mehrere Benutzer über Shell-Skript anlegen
Du kannst die Benutzer auch ganz einfach in die zugehörigen Dateien wie /etc/passwd, /etc/group und /etc/shadow eintragen.
Falls du noch eine Lösung suchst
Falls du noch eine Lösung suchst
Re: Mehrere Benutzer über Shell-Skript anlegen
Was aber noch ein wenig Nacharbeit bedeuten würde.uname hat geschrieben:26.05.2021 11:28:37Du kannst die Benutzer auch ganz einfach in die zugehörigen Dateien wie /etc/passwd, /etc/group und /etc/shadow eintragen.
adduser erzeugt das Benutzerverzeichnis und legt Dateien wie .profile, .bashrc etc. an
useradd erzugt immerhin noch das Benutzerverzeichnis.
Das Bearbeiten von passwd und group macht nichts von beiden. Das Benutzerverzeichnis muß dann also noch mit mkdir angelegt, mit chown der Besitzer festgelegt, mit chmod die Rechte vergeben und mit cp die Skelettdateien aus /etc/skel kopiert werden.