změna * vašeho * linuxového hesla pomocí bash skriptu

Změnit jiné heslo uživatele pomocí bash skriptu je dost snadné – prostě udělejte echo newpw | passwd username a bam, jste hotovi. Ale co změna vašeho hesla pomocí bash? echo newpw | passwd username nefunguje, protože vás před zadáním nového hesla vyzve k zadání aktuálního hesla.

Komentáře

  • Museli jste pro svůj " použít su nebo sudo změnit jiného uživatele ' s hesla " příklad, aby fungoval?
  • Pouze root může použít passwd username pro jiného uživatele. Když spustíte passwd (bez username) as root nepožaduje staré heslo (v mém systému Ubuntu 19.10).
  • Jo – dělal jsem sudo. Otázka stále stojí za to
  • Musíte tedy zadat heslo, abyste mohli sudo změnit jiného uživatele ' s heslo?
  • Zadejte mu aktuální heslo, { sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwd . ... | script -c passwd /dev/null použijte, pokud passwd chce číst z tty. Ale opravdu byste to neměli dělat '. Lepší je říci, čeho se ' snažíte dosáhnout.

Odpovědět

Pokud chcete změnit heslo aktuálního uživatele, mělo by to také udělat:

echo -e "MyOldPasswd\nMyNewPasswd\nMyNewPasswd" | passwd 

Odpovědět

Můžete použít chpasswd .

sudo chpasswd <<<"neubert:newpass" 

Odpověď

To nebude fungovat s žádným z poloviny rozumného nastavení. Pouze root může změnit hesla ostatních uživatelů prostřednictvím passwd user (mělo by se zobrazit výzva k zadání nového hesla). Chcete-li změnit své vlastní heslo, proveďte passwd, mělo by vás požádat o aktuální heslo a poté požádat o nové (a potvrzení).

Povolení libovolnému náhodnému uživateli změnit hesla jiných uživatelů je obrovský bezpečnostní problém.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *