社区编辑申请
注册/登录
教你如何在 Linux 中生成复杂密码并且检查密码强度
系统 Linux
在本教程中,我们将讨论如何生成复杂密码并且检查密码强度。

生成复杂的密码

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

2016-11-08 17:56:37

Linux命令行密码

2019-03-18 09:00:04

2018-02-07 08:53:25

Linux命令随机密码

2017-01-05 14:01:38

2014-03-04 10:47:52

Linux命令行随机密码

2014-03-27 14:53:33

随机密码

2021-07-15 13:32:12

2011-07-13 09:42:45

密码crypt

2017-10-31 10:52:21

2020-06-07 11:46:05

密码信息泄露高强度密码

2020-04-01 12:42:01

Linux用户密码到期日期

2019-07-02 13:16:05

密码账号安全数据安全

2019-03-27 11:30:30

2019-12-24 09:46:00

Linux设置密码

2010-03-10 16:03:32

Linux省略密码

2020-04-01 12:20:15

Linux密码策略

2018-07-26 11:10:13

Linux命令更改密码

2010-03-09 15:10:33

Linux密码破解

2020-03-27 17:37:45

2010-03-10 09:44:51

Linux找回根密码

同话题下的热门内容

超实用的 Linux 高级命令,运维同仁一定要懂!五种常见 Linux 系统安装包管理工具中文使用指南一学就会:如何在 Linux 中挂载远程文件系统或目录Linux下,如何自动对日志进行压缩备份?Linux内存管理(Golang实现)选择 Linux 发行版时要考虑的六个重要因素如何在 Linux 中连接到串行控制台如何在 Linux 上正确使用 cat 命令

编辑推荐

Linux系统下安装MySQL的步骤详解CentOS与Ubuntu有什么不同?Linux下如何使用minicom USB串口为什么你可能想要略过Ubuntu 17.04?Linux中7个判断文件系统类型的方法
我收藏的内容
点赞
收藏

51CTO技术栈公众号