Es ist einfach genug, das Passwort eines anderen Benutzers über ein Bash-Skript zu ändern – Mach einfach echo newpw | passwd username und bam, du bist fertig. Aber was ist mit dem Ändern von Ihrem Passwort per Bash? echo newpw | passwd username funktioniert nicht, da Sie zur Eingabe Ihres aktuellen Passworts aufgefordert werden, bevor Sie Ihr neues Passwort eingeben können.
Kommentare
- Mussten Sie
suodersudofür Ihre " verwenden Ändern Sie das Kennwort eines anderen Benutzers ' ", um zu funktionieren? - Nur
rootkannpasswd usernamefür einen anderen Benutzer verwenden. Wenn Siepasswdausführen (ohneusername) alsrootfragt es nicht nach dem alten Passwort (auf meinem Ubuntu 19.10-System). - Yah – das habe ich getan
sudo. Die Frage bleibt bestehen, lol - Sie mussten also Ihr Passwort eingeben, um
sudozu Ändern Sie das Passwort eines anderen Benutzers '? - Geben Sie ihm dann das aktuelle Passwort,
{ sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwd. Verwenden Sie... | script -c passwd /dev/null, wennpasswdvon einem tty lesen möchte. Aber Sie sollten ' das wirklich nicht tun. Sagen Sie besser, was Sie ' erreichen möchten.
Antwort
Wenn Sie das Passwort des aktuellen Benutzers ändern möchten, sollte dies auch so sein:
echo -e "MyOldPasswd\nMyNewPasswd\nMyNewPasswd" | passwd
Antwort
Sie können chpasswd verwenden.
sudo chpasswd <<<"neubert:newpass"
Antwort
Das funktioniert mit keinem halbwegs vernünftigen Setup. Nur root kann die Passwörter anderer Benutzer über passwd user (sollte zur Eingabe des neuen Passworts auffordern). Um Ihr eigenes Passwort zu ändern, führen Sie passwd aus. Es sollte nach dem aktuellen Passwort fragen und dann nach dem neuen (und der Bestätigung).
Zulassen eines beliebigen Benutzers Das Ändern der Passwörter anderer Benutzer ist ein großes Sicherheitsproblem.