Linux 生成随机密码/修改密码

  Linux生成随机密码方式:

  strings /dev/urandom | grep -o ‘[[:alnum:]]’ | head -n 30 | tr -d ‘n’; echo

  Linux修改密码方法:

  passwd root

  然后输入两次新密码

  root 可以替换成需要修改的用户

  除了上面的随机密码生成我们还有其它办法

  1.用mkpasswd命令:

  使用mkpasswd命令,需要事先安装expect模块,以CentOS为例:

  yum -y install expect

  安装好后,直接运行mkpasswd,就能生成随机密码了。并且命令还有参数,比如设置生成的随机密码的最小长度,等等,看看help就知道了。

  2.用passwdgen命令:

  和mkpasswd大致一致,需事先安装passwdgen模块:

  yum -y install passwdgen

  安装好后,直接运行passwdgen,即可得到随机密码,同样passwdgen命令也有参数,可以参考help。

  补充一些生成随机密码命令

  以下是十种生成随机密码的实例

  1.SHA+date+base64,密码长度32

  date +%s | sha256sum | base64 | head -c 32 ; echo

  2.使用urandom,过滤掉其他符号,只留字母和数字,密码长度32

  < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;

  3.使用openssl的随机函数

  openssl rand -base64 32

  4.urandom的另一个用法,urandom+tr

  tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1

  5.使用urandom加字符函数

  strings /dev/urandom | grep -o ':alnum:' | head -n 30 | tr -d 'n'; echo

  6.urandom最简单的使用

  < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6

  7.urandom的另一个用法,urandom+dd

  dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev

  8.如果你经常使用单手输入密码,那么可以参考以下方法生成"左手密码"

  /dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo ""

  9.使用randpw加urandom

  randpw(){ < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;}

  10.最后来个最简洁的

  date | md5sum