Łatwo jest zmienić hasło innego użytkownika za pomocą skryptu bash – po prostu zrób echo newpw | passwd username
i bach, gotowe. Ale co ze zmianą swojego hasła przez bash? echo newpw | passwd username
nie działa, ponieważ wyświetla monit o podanie aktualnego hasła przed zezwoleniem na wprowadzenie nowego hasła.
Komentarze
- Czy musiałeś użyć
su
lubsudo
dla swojego " zmienić przykład innego użytkownika ' s "? - Tylko
root
może użyćpasswd username
dla innego użytkownika. Po uruchomieniupasswd
(bezusername
) jakoroot
nie pyta o stare hasło (w moim systemie Ubuntu 19.10). - Tak – robiłem
sudo
. Pytanie jest nadal aktualne lol - Czy musiałeś więc podać swoje hasło, aby
sudo
zmienić hasło innego użytkownika '? - Cóż, podaj mu aktualne hasło,
{ sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwd
. Użyj... | script -c passwd /dev/null
, jeślipasswd
chce czytać z terminala. Ale naprawdę nie powinieneś ' tego robić. Lepiej powiedz, co ' próbujesz osiągnąć.
Odpowiedź
Jeśli chcesz zmienić hasło bieżącego użytkownika, również powinno to zrobić:
echo -e "MyOldPasswd\nMyNewPasswd\nMyNewPasswd" | passwd
Odpowiedź
Możesz użyć chpasswd .
sudo chpasswd <<<"neubert:newpass"
Odpowiedź
To nie zadziała z jakąkolwiek w połowie rozsądną konfiguracją. Tylko root może zmieniać hasła innych użytkowników przez passwd user
(powinno zapytać o nowe hasło). Aby zmienić swoje własne hasło, wykonaj passwd
, powinno poprosić o bieżące hasło, a następnie o nowe (i potwierdzenie).
Zezwalanie każdemu przypadkowemu użytkownikowi zmiana haseł innych jest ogromnym problemem związanym z bezpieczeństwem.