linux环境中通过/dev/urandom设备产生随机密码

时间:2021-03-12 20:11:58

需求说明:

  今天在调试SVN的时候,需要创建用户的随机密码,想了下,在linux环境中是否能够生成呢,就搜索了下,

然后结合看到的帖子,分析一个可以生成密码的命令,在此记录下.

操作过程:

1.通过/dev/urandom工具生成随机密码

[root@testvm01 ~]# cat /dev/urandom | tr -dc a-zA-Z0-9#@ | head -c 13;echo
OjX3Nst381U@R
[root@testvm01 ~]# cat /dev/urandom | tr -dc a-zA-Z0-9#@ | head -c 13;echo
SlfnYBxUiOERS
[root@testvm01 ~]# cat /dev/urandom | tr -dc a-zA-Z0-9#@ | head -c 13;echo
ZLy3TWyNzr8PN
[root@testvm01 ~]# cat /dev/urandom | tr -dc a-zA-Z0-9#@ | head -c 13;echo
fsjzAOO#M8Bm9
[root@testvm01 ~]# cat /dev/urandom | tr -dc a-zA-Z0-9#@ | head -c 13;echo

备注:通过cat命令查看/dev/urandom就能够获取随机数,然后,通过tr命令进行字符的转换.

tr命令说明:

tr -dc a-zA-Z0-9#@         #a-z和A-Z之间没有其他的符合.0-9后面的是自己指定的特殊符号

备注:tr命令是替换或者删除字符的命令.-d的意思是删除后面集合中的字符,-c的意思是取反,就是说,除了后面的字符集合其他的都删除掉.我们可以通过后面的字符的集合来指定自己的密码复杂度.

head命令说明:

head -c 13

备注:head命令的作用就是取多少字符,-c指的是取多少字节,13可以自定义,这样就定义了密码的长度.

转自:https://www.cnblogs.com/chuanzhang053/p/9835853.html