Jump to content

- - - - -

Update user password in batch mode using pwgen and chpasswd

  • Please log in to reply
No replies to this topic

#1 BoogY


    SCRiPT KiDDie

  • Members
  • 22 posts
  • Country:
  • Gender:Male

Posted 26 November 2009 - 06:57 AM


# Script to update user password in batch mode

# You must be a root user to use this script

# /root is good place to store clear text password



# get all non-root user account

# By default on most linux non-root uid starts

# from 1000

USERS=$(awk -F: '{ if ( $3 > 1000 ) print $1}' /etc/passwd)


# create file with random password

echo "Generating file, please wait..."


# overwrite file, this is bash specific a better solution is cat > $FILE



for u in $USERS


   p=$(pwgen -1 -n 8) # create random password

   echo "$u:$p" >> $FILE # save USERNAME:PASSWORD pair


echo ""

echo "Random password and username list stored in $FILE file"

echo "Review $FILE file, once satisfied execute command: "

echo "chpasswd < $FILE"


# Uncomment following line if you want immediately update all users password,

# be careful with this option, it is recommended that you review $FILE first

# chpasswd < $FILE

BinRev is hosted by the great people at Lunarpages!