使用命令行生成高强度密码
创始人
2024-03-01 18:16:02
0

设置一个高强度的密码是非常重要的,这样才能够很好的保护自己的账号或者服务器以及确保自己的数据的安全。通常来说,一个高强度密码至少有 14 个字符,包括大小写字母、数字和特殊字符,并且要牢记永远不用那些字典中的单词。使用长密码比短密码要来的安全,因为密码越长越难猜测。在本文中,我将给你介绍几个不同方法,让你可以在 Linux 命令行下生成一个高强度密码。

使用 openssl 生成高强度密码

这里使用 openssl 的 rand 方法,它会生成一个 14 位字符的随机字符:

openssl rand -base64 14

使用 urandom 生成高强度密码

这里我们将使用 tr 条件来过滤 /dev/urandom 的输出,从而删掉那些不想要的字符,并打印出第一个出现的 14 位字符。

< /dev/urandom tr -dc A-Za-z0-9 | head -c14; echo

使用 pwgen 生成高强度密码

pwgen 是一个生成随机、无特殊含义但可以正常拼读的密码。

安装 pwgen,运行:

sudo apt-get install pwgen

安装好之后,使用以下命令来生成一个 14 位随机字符:

pwgen 14 1

你也可以使用以下标记:

  • -c 或 –capitalize 生成的密码中至少包含一个大写字母
  • -A 或 –no-capitalize 生成的密码中不含大写字母
  • -n 或 –numerals 生成的密码中至少包含一个数字
  • -0 或 –no-numerals 生成的密码中不含数字
  • -y 或 –symbols 生成的密码中至少包含一个特殊字符
  • -s 或 –secure 生成一个完全随机的密码
  • -B 或 –ambiguous 生成的密码中不含 易混淆字符 ( ambiguous characters )
  • -h 或 –help 输出帮助信息
  • -H 或 –sha1=path/to/file[#seed] 使用指定文件的 sha1 哈希值作为随机生成器
  • -C 按列输出生成的密码
  • -1 不按列输出生成的密码
  • -v 或 –no-vowels 不使用任何元音,以免意外生成让人讨厌的单词

使用 gpg 生成高强度密码

我们也可以使用 gpg 工具来生成一个 14 位字符的密码:

gpg --gen-random --armor 1 14

其它方法

当然,可能还有很多方法可以生成一个高强度密码。比方说,你可以添加以下 bash shell 方法到 ~/.bashrc 文件:

genpasswd() { 
    strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 14 | tr -d '\n'; echo
}

当你想要生成一个高强度的随机密码时,运行 genpasswd 就好了。


via: https://www.rosehosting.com/blog/generate-password-linux-command-line/

作者:RoseHosting 译者:GHLandy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

量化投资新范式:中欧基金的...
2024年10月,在美国金融AI实验室Nof1主办的Alpha A...
2026-02-02 12:19:53
AI赋能 盈利破局:中国S...
雷达财经讯 在小微企业数字化转型需求爆发与 SaaS 行业盈利难题...
2026-01-29 14:19:07
如何使用WinRAR进行分...
不知道大家有没有遇到过,在压缩文件时发现即使压缩后文件体积还是过大...
2026-01-25 10:20:01
美媒:泡沫藏着打通AI、物...
美国《科技日报》1月17日文章,原题:工程师们发现了人工智能、物理...
2026-01-22 08:50:03
世界各国“首部AI电影”都...
“技术奇点”这个说法,听上去也许有些陌生,但它早已从数学和未来学的...
2025-12-30 16:17:40
AI+数字贸易 产业生态里...
国际商报记者 孟妮 2020年至2024年全球数字贸易出口规模实现...
2025-10-23 10:22:25

热门资讯

开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
KDE4.11 Beta1 正...   KDE 项目工作组刚刚发布了 KDE Software Compilation 4.11 Bet...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
《Apex 英雄》正式可在 S... 《Apex 英雄》现已通过 Steam Deck 验证,这使其成为支持 Linux 的顶级多人游戏之...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
使用时间序列数据,用开源工具助... InfluxData 是一个开源的时间序列数据库平台。下面介绍了它是如何被用于边缘应用案例的。收集到...
JStock:Linux 上不... 如果你在股票市场做投资,那么你可能非常清楚投资组合管理计划有多重要。管理投资组合的目标是依据你能承受...
Textual:为 Pytho... 快速入门使用 TextualPython 在 Linux 上有像 TkInter 这样的优秀 GUI...
硬核观察 #1245 Open... #1 OpenAI 悄然删除禁止将 ChatGPT 用于 “军事和战争” 的禁令在 1 月 10 日...