绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
教你如何在 Linux 中生成复杂密码并且检查密码强度
2022-04-24 17:01:11



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


生成复杂的密码



强密码应由字母、数字和符号的混合组成。第二个要求是不要使用已知单词、出生日期或姓名,因为很容易受到字典攻击。
密码应该包含多少个字符?实际上没有具体的答案,但是超过 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


如果使用普通单词呢?
[root@localhost ~]# echo "Administrator"|cracklib-check
Administrator: it is based on a dictionary word


上面两个密码的输出,同样提示在词典中能查找到。
下面我们测试一个生成的密码看一下强度如何:
[root@localhost ~]# openssl rand -base64 12 | cracklib-check
VdBlmvIgGY4ehWly: OK
可以看到密码没问题。

以上文章来源于Linux就该这么学 ,作者逄增宝  

分享好友

分享这个小栈给你的朋友们,一起进步吧。

Linux技术精选专区
创建时间:2020-07-08 10:30:23
Linux,全称GNU/Linux,是一套免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年次释出,它主要受到Minix和Unix思想的启发,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • dapan
    专家
戳我,来吐槽~