Wie ändern Sie das Passwort eines Benutzers in einem script mit busybox und openssl?
Ich synchronisieren müssen ein Benutzerkonto und ein Kennwort auf einer externen Quelle auf ein system mit busybox und openssl installiert. Wenn die externe Quelle sagt, mein system zu aktualisieren Anmeldeinformationen, wie kann ich das Passwort des Benutzers ändern im Skript? Ich habe das Passwort im Klartext.
Dies muss automatisiert werden, und von was ich sagen kann, busybox passwd ist interaktiv und ich nicht besonders wollen, schreiben Sie eine erwarten-Typ-Skript für den Befehl passwd, wenn das überhaupt möglich ist. Es sieht aus wie openssl erzeugen kann, die Passwort-hashes (openssl passwd -1 -Salz "abcdefgh" {Passwort}), aber ich habe zu ändern in /etc/shadow direkt?
Busybox hat diese Befehle zur Verfügung.
InformationsquelleAutor indiv | 2010-01-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Schreiben Sie ein kleines script wie dieses, um das Kennwort zu aktualisieren. Setzen Sie den folgenden text in eine Datei und führen Sie es aus. Es wird ändern Sie Ihr Passwort.
#!/bin/sh
passwd << EOF
<alte Passwort>
<neues Passwort>
<neues Passwort>
EOF
InformationsquelleAutor Suresh Krishnan
Stellt sich heraus, aktuelle Versionen von busybox haben chpasswd (source code). chpasswd nimmt eine Doppelpunkt-getrennte paar Benutzername:Passwort über stdin. Ich weiß nicht, ob ich aktualisieren kann die busybox auf meinem system, aber ich überlasse diese Antwort den Fall, dass jemand anderes kommt mit Blick.
Aus der busybox-Dokumentation:
InformationsquelleAutor indiv