È abbastanza facile cambiare unaltra password degli utenti tramite uno script bash – basta fare echo newpw | passwd username
e bam, il gioco è fatto. Ma che dire della modifica della tua password tramite bash? echo newpw | passwd username
non funziona perché ti richiede la password corrente prima di consentirti di inserire la nuova password.
Commenti
- Dovevi utilizzare
su
osudo
per il tuo " modificare un altro utente ' s " esempio per lavorare? - Solo
root
può utilizzarepasswd username
per un altro utente. Quando eseguipasswd
(senzausername
) poichéroot
non richiede la vecchia password (sul mio sistema Ubuntu 19.10). - Sì, stavo facendo
sudo
. La domanda è ancora valida - Quindi hai dovuto inserire la tua password per
sudo
cambiare la password di un altro utente '? - Allora dagli la password corrente,
{ sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwd
. Utilizza... | script -c passwd /dev/null
sepasswd
desidera leggere da una tty. Ma in realtà non dovresti ' farlo. È meglio dire cosa ' stai cercando di ottenere.
Rispondi
Se vuoi cambiare la passwd dellutente corrente, dovresti farlo anche tu:
echo -e "MyOldPasswd\nMyNewPasswd\nMyNewPasswd" | passwd
Risposta
Potresti utilizzare chpasswd .
sudo chpasswd <<<"neubert:newpass"
Risposta
Non funzionerà con alcuna configurazione ragionevole a metà. Solo root può modificare le password di altri utenti, tramite passwd user
(dovrebbe richiedere la nuova password). Per cambiare la tua password, fai passwd
, dovrebbe chiedere la password corrente e poi quella nuova (e conferma).
Consentire qualsiasi utente casuale cambiare le password degli altri è un enorme problema di sicurezza.