阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何在 Linux 生成复杂密码并且检查密码强度

32次阅读
没有评论

共计 1104 个字符,预计需要花费 3 分钟才能阅读完成。

导读 在本教程中,我们将讨论如何生成复杂密码并且检查密码强度。
生成复杂的密码

强密码应由字母、数字和符号的混合组成。第二个要求是不要使用已知单词、出生日期或姓名,因为很容易受到字典攻击。

密码应该包含多少个字符?实际上没有具体的答案,但是超过 16 个字符是一个不错的选择。因此,如果你的系统具有 OpenSSL 或 GPG,可以使用这些工具来完成生成密码的任务。例如,下面我们使用 GPG 生成密码:

[root@localhost ~]# gpg --gen-random --armor 2 12
zXVKRoB0/V4BN9QG

如果不想带有特殊字符,可以使用 sed 命令过滤掉:

[root@localhost ~]# gpg --gen-random --armor 2 12|sed 's/[^a-zA-Z0-9]//g'
n4ciIlRLkLTkzwg

上面使用 --gen-random 选项来随机生成字符。使用 --armor 选项来生成 ASCII 字符。后面的选项 2 可以使 [0][1][2] 三个选项,他表示质量级别。最后一个数字代表字符长度。

相同的,我们可以使用 OpenSSL 来生成密码:

[root@localhost ~]# openssl rand -base64 12
QIrH/PLXqzmLuI/a

同样,也可以使用 sed 命令过滤掉特殊字符:

[root@localhost ~]# openssl rand -base64 12| sed 's/[^a-zA-Z0-9]//g'
lXIg4cKLCLVvsi
检查密码强度

现在我们有了密码,是时候看看它是否通过了测试:您的密码是否足够强大?为了确定密码是否足够强大,我们将在 Centos8 中安装使用 cracklib 工具。

[root@localhost ~]# yum -y install cracklib

下面我们先测试一个简单的密码:

[root@localhost ~]# echo "a1b2c5" | cracklib-check 
a1b2c5: it is based on a dictionary word

如何在 Linux 生成复杂密码并且检查密码强度
如果使用普通单词呢?

[root@localhost ~]# echo "Administrator"|cracklib-check 
Administrator: it is based on a dictionary word

如何在 Linux 生成复杂密码并且检查密码强度
上面两个密码的输出,同样提示在词典中能查找到。

下面我们测试一个生成的密码看一下强度如何:

[root@localhost ~]# openssl rand -base64 12 | cracklib-check 
VdBlmvIgGY4ehWly: OK

可以看到密码没问题。

总结

在本教程中,我们已经看到生成和验证密码是多么容易,但不要忘记为每个服务生成不同的密码!

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计1104字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中