* je * linux wachtwoord wijzigen via een bash-script

Het is gemakkelijk genoeg om een ander gebruikerswachtwoord te wijzigen via een bash-script – gewoon echo newpw | passwd username doen en bam, je bent klaar. Maar hoe zit het met het wijzigen van uw wachtwoord via bash? echo newpw | passwd username werkt niet omdat het u om uw huidige wachtwoord vraagt voordat u uw nieuwe wachtwoord invoert.

Opmerkingen

  • Moest u su of sudo gebruiken voor uw " een andere gebruiker ' s wachtwoord " voorbeeld wijzigen om te werken?
  • Alleen root kan passwd username gebruiken voor een andere gebruiker. Wanneer u passwd uitvoert (zonder username) als root het vraagt niet om het oude wachtwoord (op mijn Ubuntu 19.10-systeem).
  • Ja, ik was bezig sudo. De vraag staat nog steeds, lol
  • Dus moest je je wachtwoord invoeren om sudo naar het wachtwoord van een andere gebruiker ' wijzigen?
  • Wel, geef het dan het huidige wachtwoord, { sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwdGebruik ... | script -c passwd /dev/null als passwd wil lezen van een tty. Maar dat zou je echt niet ' moeten doen. U kunt beter zeggen wat u ' probeert te bereiken.

Antwoord

Als u het wachtwoord van de huidige gebruiker wilt wijzigen, moet dit ook gebeuren:

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

Antwoord

U kunt chpasswd gebruiken.

sudo chpasswd <<<"neubert:newpass" 

Antwoord

Dat zal “niet werken met een half redelijke setup. Alleen root kan wachtwoorden van andere gebruikers wijzigen via passwd user (het zou om het nieuwe wachtwoord moeten vragen). Om uw eigen wachtwoord te wijzigen, doet u passwd, het zou om het huidige wachtwoord moeten vragen en vervolgens om het nieuwe moeten vragen (en bevestiging).

Elke willekeurige gebruiker toestaan het wijzigen van andermans wachtwoorden is een enorm beveiligingsprobleem.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *