如何在 Linux 中产生、加密或解密随机密码

简介:

1. 使用命令 pwgen 来生成一个长度为 10 个字符的独特的随机密码。假如你还没有安装 pwgen,请使用 Apt 或 YUM 等包管理器来安装它。

$ pwgen 10 1

0?wx_fmt=gif&tp=webp&wxfrom=5

生成一个独特的随机密码

一口气生成若干组长度为 50 个字符的唯一的随机密码!

$ pwgen 50

0?wx_fmt=gif&tp=webp&wxfrom=5

生成多组随机密码

2. 你还可以使用 makepasswd 来每次生成一个给定长度的独特的随机密码。在你把玩 makepasswd 命令之前,请确保你已经安装了它。如若没有安装它,试试使用 Apt 或 YUM 包管理器来安装makepasswd这个软件包。

生成一个长度为 10 个字符的随机密码。该命令产生的密码的长度默认为 10。

$ makepasswd

0?wx_fmt=gif&tp=webp&wxfrom=5

使用 makepasswd 生成独特的密码

生成一个长度为 50 个字符的随机密码。

$ makepasswd  --char 50

0?wx_fmt=gif&tp=webp&wxfrom=5

生成长度为 50 的密码

生成 7 个长度为 20 个字符的随机密码。

$ makepasswd --char 20 --count 7

0?wx_fmt=gif&tp=webp&wxfrom=5

3. 使用带“盐”的 Crypt(注:这里应该指的是一个函数,可以参考这里 ) 来加密一个密码。提供手动或自动添加 “盐”。

对于那些不清楚  的意义的人,这里的 “盐” 指的是一个随机数据,它作为密码生成函数的一个额外的输入, 目的是保护密码免受词典攻击。

在执行下面的操作前,请确保你已经安装了 mkpasswd

下面的命令将带 “盐” 加密一个密码。“盐” 的值是随机自动生成的。所以每次你运行下面的命令时,都将产生不同的输出,因为它每次接受了随机取值的 “盐”。

$ mkpasswd tecmint

0?wx_fmt=gif&tp=webp&wxfrom=5

使用 Crypt 来加密密码

现在让我们来手动定义 “盐” 的值。每次它将产生相同的结果。请注意你可以输入任何你想输入的值来作为 “盐” 的值。

$ mkpasswd tecmint -s tt

0?wx_fmt=gif&tp=webp&wxfrom=5

带“盐”加密密码

另外, mkpasswd 还是交互式的,假如你在命令中没有提供密码,它将主动询问你来输入密码。

4. 使用 aes-256-cbc 加密算法并使用带“盐”的密码(如 “tecmint”) 加密一个字符串(如 “Tecmint-is-a-Linux-Community”)。

# echo Tecmint-is-a-Linux-Community | openssl enc -aes-256-cbc -a -salt -pass pass:tecmint

0?wx_fmt=gif&tp=webp&wxfrom=5

在 Linux 中加密一个字符串

在上面例子中, echo 命令的输出通过管道传递给了 openssl 命令,使得该输出通过加密编码方式(enc:Encoding with Cipher ) 所加密,这个过程中使用了 aes-256-cbc 加密算法,并附带了密码 (tecmint) 和 “盐” 。

5. 使用 openssl 命令的 -aes-256-cbc 解密选项来解密上面的字符串。

# echo U2FsdGVkX18Zgoc+dfAdpIK58JbcEYFdJBPMINU91DKPeVVrU2k9oXWsgpvpdO/Z | openssl enc -aes-256-cbc -a -d -salt -pass pass:tecmint

0?wx_fmt=gif&tp=webp&wxfrom=5

在 Linux 中解密字符串










本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1654874,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
算法 数据库 数据安全/隐私保护
rsa加密解密,使用rsa对密码加密
rsa加密解密,使用rsa对密码加密
|
15天前
|
关系型数据库 MySQL Linux
|
1月前
|
Ubuntu 安全 Linux
Linux必备|如何重置忘记的 Root 密码
Linux必备|如何重置忘记的 Root 密码
74 7
|
25天前
|
存储 算法 安全
深入理解Linux命令pwscore:密码质量的守护者
**pwscore命令详解:Linux密码强度评估工具** pwscore是Linux下的密码强度检查工具,分析密码长度、字符类型及避免常见模式来评分。它提供简单语法、可定制选项和高效评估。例如,`pwscore -l 12 -m alnum`评估至少含12个字符和字母数字的密码。应用时,定期评估用户密码,制定强密码策略,避免常见单词和模式,使用密码管理器,并保护输出信息安全,以增强系统安全性。
|
6天前
|
存储 缓存 安全
systemd-ask-password:Linux中的安全密码获取工具
`systemd-ask-password`是Linux的密码获取工具,安全收集服务或应用所需的密码。它支持TTY和密码代理输入,有隐藏输入、密码缓存功能。参数如`--no-tty`、`--id`、`--timeout`等可定制交互方式。示例包括直接在TTY请求或通过代理。注意事项包括安全环境、权限管理和密码管理。最佳实践涉及定期更新和使用强密码,以及日志审计。
|
20天前
|
存储 Linux Shell
Linux基本命令之修改主机名、用户名、密码
Linux基本命令之修改主机名、用户名、密码
|
21天前
|
Linux 网络安全 数据安全/隐私保护
如何在Linux中设置SSH无密码登录
这样,你就设置了SSH无密码登录。但请注意,这种方式虽然方便,但如果你的私钥落入他人手中,他们就能访问你的服务器,所以要妥善保管你的私钥。
19 0
|
27天前
|
算法 JavaScript 安全
一篇文章讲明白JavaScript_提交表单和MD5算法密码加密
一篇文章讲明白JavaScript_提交表单和MD5算法密码加密
13 0
|
27天前
|
算法 JavaScript 安全
一篇文章讲明白JavaScript_提交表单和MD5算法密码加密
一篇文章讲明白JavaScript_提交表单和MD5算法密码加密
15 0
|
1月前
|
关系型数据库 MySQL Linux
Linux centos 6.5 - Mysql 安装 、卸载、修改密码、忘记密码 并异常处理
Linux centos 6.5 - Mysql 安装 、卸载、修改密码、忘记密码 并异常处理
32 0