一、密码的需求:密码的位数、是否有特殊符号、密码的组成!-->安全级别!
(1): date +%s | sha256sum | base64 | head -c 8
解释: date +%s -->获取当前时间戳-->时间起点1970-01-01 00:00:00-->换算成秒!
date +%s | sha256sum --> 对时间戳(字符串)求sha 256散列(hash)值!
date +%s | sha256sum | base64 --> 对hash值进行基于base64的编码(加密!)!
date +%s | sha256sum | base64 | head -c 8 --> 取前10个字符(字节)做为密码!
(2) tr -cd '*,+\-\.a-zA-z0-9' < /dev/urandom | head -c 10
解释: tr -cd '*,+\-\.a-zA-z0-9' < /dev/urandom -->从/dev/urandom读取并去掉非",*+-\.\-a-zA-Z0-9"这类字符
(3): openssl rand 100 | base64 | head -c 10
解释: openssl rand 50 -- 利用系统openssl随机产生50个字节随机字符
openssl rand 100 | base64 -- 产生随机字符用base64编码
openssl rand 100 | base64 | head -c 8 -- 取前8个字符
#补充:openssl rand -base64 32|tr A-Z a-z|cut -c 1-10
uuidgen(命令)
uuidgen |head -c 8
# 523ff3b3-8b24-465e-b623-a7a05683492e--->产生8位随即密码(数字+字符)!
总结:
高级:
Linux用户密码策略
工具类