在 Linux 终端下生成随机/强密码的五种方法( 三 )

$ sudo pacman -S expect
在 RHEL/CentOS 系统中,使用 YUM 命令 来安装 mkpasswd 。
$ sudo yum install expect
在 openSUSE Leap 系统中,使用 Zypper 命令 来安装 mkpasswd 。
$ sudo zypper install expect
在终端中执行 mkpasswd 命令来生成一个随机密码 。
$ mkpasswd
37_slQepD
像下面这样执行 mkpasswd 命令可以生成一个 14 字符长的随机强密码 。
$ mkpasswd -l 14
W1qP1uv=lhghgh
像下面这样执行 mkpasswd 命令 来生成一个 14 字符长,包含大小写字母、数字和特殊字符的随机强密码 。
$ mkpasswd -l 14 -d 3 -C 3 -s 3
3aad!bMWG49"t,
如果你想要生成 10 个 14 字符长的随机强密码(包括大小写字母、数字和特殊字符),使用 for 循环和 mkpasswd 命令 。
$ for pw in {1..10}; do mkpasswd -l 14 -d 3 -C 3 -s 3; done
zmSwP[q9;P1r6[
E42zcvzM"i3%B
8}1#[email protected]
0X:zB(mmU22?nj
0sqqL44M}ko(O^
43tQ(.6jG;ceRq
-jB6cp3x1GZ$e=
$of?Rj9kb2N(1J
9HCf,nn#gjO79^
Tu9m56+Ev_Yso(
如何在 Linux 下使用 makepasswd 命令生成随机强密码?makepasswd 使用 /dev/urandom 生成真随机密码,与易于记忆相比它更注重安全性 。它也可以加密命令行中给出的明文密码 。
在终端中执行 makepasswd 命令来生成一个随机密码 。
$ makepasswd
HdCJafVaN
在终端中像下面这样执行 makepasswd 命令来生成 14 字符长的随机强密码 。
$ makepasswd --chars 14
HxJDv5quavrqmU
像下面这样执行 makepasswd 来生成 10 个 14 字符长的随机强密码 。
$ makepasswd --chars 14 --count 10
TqmKVWnRGeoVNr
mPV2P98hLRUsai
MhMXPwyzYi2RLo
dxMGgLmoFpYivi
8p0G7JvJjd6qUP
7SmX95MiJcQauV
KWzrh5npAjvNmL
oHPKdq1uA9tU85
V1su9GjU2oIGiQ
M2TMCEoahzLNYC
如何在 Linux 系统中使用多个命令生成随机强密码?如果你还在寻找其他的方案,下面的工具也可以用来在 Linux 中生成随机密码 。
使用 md5sum:它是一个用来计算及校验 128 位 MD5 哈希的程序 。
$ date | md5sum
9baf96fb6e8cbd99601d97a5c3acc2c4 -
使用 /dev/urandom: 两个特殊的字符文件 /dev/random 和 /dev/urandom (自 Linux 1.3.30 起出现)提供了内核随机数生成器的接口 。/dev/random 的主设备号为 1,次设备号为 8 。/dev/urandom 主设备号为 1,次设备号为 9 。
$ cat /dev/urandom | tr -dc 'a-zA-Z0-9' | head -c 14
15LQB9J84Btnzz
使用 sha256sum:它被设计用来使用 SHA-256 算法(SHA-2 系列,摘要长度为 256 位)校验数据完整性 。
$ date | sha256sum
a114ae5c458ae0d366e1b673d558d921bb937e568d9329b525cf32290478826a -
使用 sha1pass:它生成一个 SHA1 密码哈希 。在命令缺少盐值的情况下,将会生成一个随机的盐值向量 。
$ sha1pass
$4$9+JvykOv$e7U0jMJL2yBOL+RVa2Eke8SETEo$


推荐阅读