详解Linux下随机生成密码的命令总结
<p>有时候经常为如何设置一个安全、符合密码复杂度的密码而绞尽脑汁,说实话,这实在是一个体力活而且浪费时间,更重要的是设置密码的时候经常纠结。终于有一天实在忍不住了,于是学习、整理了一下如何使用linux下命令来随机生成安全、符合密码复杂度的命令。</p>
<p>
俗话说“工欲善其事必先利其器”。如果能用挖土机的,你为什么要用锄头? 最近一直在反思自己:习惯性用原始、老旧的方式解决问题。而不擅长利用一些工具快捷、方便的解决问题。</p>
<p>
<strong> 1:mkpaswd命令 </strong></p>
<p>
mkpasswd 是linux自带的一个密码生成工具,可以说是非常安全、可靠的(如果你担心一些在线的随机密码生成工具,会收集、记录你生成的密码的话)。个人非常喜欢这个工具的原因就是它可以设置生成密码的复杂度。另外,它不仅可以随机帮你生成密码,还可以直接帮你修改相关账号密码。如果你找不到这个命令,那么可能你没有安装expect包。</p>
<p>
方式1: yum安装方式。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_597304">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">yum -y </code><code class="bash functions">install</code> <code class="bash plain">expect</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
方式2: rpm安装方式。</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_154533">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># ls *expect*</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">expect-5.43.0-5.1.i386.rpm expect-5.43.0-5.1.x86_64.rpm expect-devel-5.43.0-5.1.i386.rpm expect-devel-5.43.0-5.1.x86_64.rpm expectk-5.43.0-5.1.x86_64.rpm pexpect-2.3-3.el5.noarch.rpm</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain"></code><code class="bash comments"># rpm -ivh expect-5.43.0-5.1.x86_64.rpm</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">warning: expect-5.43.0-5.1.x86_64.rpm: header v3 dsa signature: nokey, key </code><code class="bash functions">id</code> <code class="bash plain">37017186</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">preparing... </code><code class="bash comments">########################################### </code>
</div>
<div class="line number6 index5 alt1">
<code class="bash spaces"> </code><code class="bash plain">1:expect </code><code class="bash comments">########################################### </code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
关于mkpasswd命令的一些参数,如下所示:</p>
<p>
</p>
<table border="1" cellpadding="0" cellspacing="0"><tbody>
<tr>
<td width="77">
<div>
参数</div>
</td>
<td width="470">
<div>
<span> </span>功能描述</div>
</td>
</tr>
<tr>
<td width="77">
<div>
-l</div>
</td>
<td width="470">
<div>
定义生成密码的长度,默认9</div>
</td>
</tr>
<tr>
<td width="77">
<div>
-d</div>
</td>
<td width="470">
<div>
定义密码里面包含数字的最少个数,默认2</div>
</td>
</tr>
<tr>
<td width="77">
<div>
-c</div>
</td>
<td width="470">
<div>
定义密码里面包含小写字母的最少个数,默认2</div>
</td>
</tr>
<tr>
<td width="77">
<div>
-c</div>
</td>
<td width="470">
<div>
定义密码里面包含大写字母的最少个数,默认2</div>
</td>
</tr>
<tr>
<td width="77">
<div>
-s</div>
</td>
<td width="470">
<div>
定义密码密码包含特殊字符的最少个数,默认1</div>
</td>
</tr>
<tr>
<td width="77">
<div>
-p</div>
</td>
<td width="470">
<div>
指定另外一个生成密码的程序,默认是/etc/yppasswd</div>
</td>
</tr>
</tbody></table>
<p>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_456265">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># mkpasswd -l 14 -d 2 -c 2 -s 2 -v kerry</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">spawn </code><code class="bash functions">passwd</code> <code class="bash plain">kerry</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash functions">passwd</code><code class="bash plain">: unknown user name </code><code class="bash string">'kerry'</code><code class="bash plain">.</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">password </code><code class="bash keyword">for</code> <code class="bash plain">kerry is 1s[(qillert8xf</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain"></code><code class="bash comments"># mkpasswd -l 14 -d 2 -c 2 -s 2 -v test</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash plain">spawn </code><code class="bash functions">passwd</code> <code class="bash functions">test</code>
</div>
<div class="line number7 index6 alt2">
<code class="bash functions">passwd</code><code class="bash plain">: unknown user name </code><code class="bash string">'test'</code><code class="bash plain">.</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash plain">password </code><code class="bash keyword">for</code> <code class="bash functions">test</code> <code class="bash plain">is 1ar1t$-qwihcrb</code>
</div>
<div class="line number9 index8 alt2">
<code class="bash plain"></code><code class="bash comments"># mkpasswd -l 14 -d 2 -c 2 -s 2 -v oracle</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash plain">spawn </code><code class="bash functions">passwd</code> <code class="bash plain">oracle</code>
</div>
<div class="line number11 index10 alt2">
<code class="bash plain">changing password </code><code class="bash keyword">for</code> <code class="bash plain">user oracle.</code>
</div>
<div class="line number12 index11 alt1">
<code class="bash plain">new unix password: </code>
</div>
<div class="line number13 index12 alt2">
<code class="bash plain">retype new unix password: </code>
</div>
<div class="line number14 index13 alt1">
<code class="bash functions">passwd</code><code class="bash plain">: all authentication tokens updated successfully.</code>
</div>
<div class="line number15 index14 alt2">
<code class="bash plain">password </code><code class="bash keyword">for</code> <code class="bash plain">oracle is 24_vfkxqsol^</code><code class="bash functions">pr</code>
</div>
<div class="line number16 index15 alt1">
<code class="bash plain"></code><code class="bash comments"># </code>
</div>
<div class="line number17 index16 alt2">
<code class="bash spaces"> </code>
</div>
<div class="line number18 index17 alt1">
<code class="bash plain"></code><code class="bash comments"># mkpasswd -l 14 -d 2 -c 2 -s 2 oracle</code>
</div>
<div class="line number19 index18 alt2">
<code class="bash plain">i&jijfgb92*fda</code>
</div>
<div class="line number20 index19 alt1">
<code class="bash plain"></code><code class="bash comments">#</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="详解Linux下随机生成密码的命令总结" alt="详解Linux下随机生成密码的命令总结" src="https://zhuji.jb51.net/uploads/img/202305/0287b570088cc3fd167ecb17353cadf5.jpg"></p>
<p>
<strong> 2:apg命令</strong></p>
<p>
apg是一款开源免费的密码随机生成器,官方网址为</p>
<p>
安装方式:</p>
<p>
1:ubuntu下的apt-get方式:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_14487">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">sudo</code> <code class="bash plain">apt-get </code><code class="bash functions">install</code> <code class="bash plain">apg</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
2:使用rpm方式:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_432876">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># rpm -ivh apg-2.2.3-3.el5.rf.i386.rpm </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">warning: apg-2.2.3-3.el5.rf.i386.rpm: header v3 dsa signature: nokey, key </code><code class="bash functions">id</code> <code class="bash plain">6b8d79e6</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">preparing... </code><code class="bash comments">########################################### </code>
</div>
<div class="line number4 index3 alt1">
<code class="bash spaces"> </code><code class="bash plain">1:apg </code><code class="bash comments">########################################### </code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain"></code><code class="bash comments">#</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
关于apg命令的一些参数,如下所示:</p>
<p>
</p>
<table border="1" cellpadding="0" cellspacing="0"><tbody>
<tr>
<td width="63">
<div>
参数</div>
</td>
<td width="492">
<div>
<span> </span>功能描述</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-m</div>
</td>
<td width="492">
<div>
生成密码的模式</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-e</div>
</td>
<td width="492">
<div>
生成密码过程中排除字符串</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-r</div>
</td>
<td width="492">
<div>
apply dictionary check against file</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-b</div>
</td>
<td width="492">
<div>
</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-p</div>
</td>
<td width="492">
<div>
paranoid modifier for bloom filter check</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-a</div>
</td>
<td width="492">
<div>
1: 随机密码生成模式。 0:可发音的密码生成</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-n</div>
</td>
<td width="492">
<div>
包含数字,但是不是每个密码都有</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-n</div>
</td>
<td width="492">
<div>
每个密码都必须包含数字</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-m</div>
</td>
<td width="492">
<div>
生成密码最小长度,默认为8,实际生成的随机密码长度都可能超过这个值</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-x</div>
</td>
<td width="492">
<div>
生成密码最大长度。</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-s</div>
</td>
<td width="492">
<div>
包含特殊字符,但是不一定每个都有</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-s</div>
</td>
<td width="492">
<div>
每个密码都必须有特殊字符</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-c</div>
</td>
<td width="492">
<div>
包含大写字母。</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-c</div>
</td>
<td width="492">
<div>
每个密码都必须包含小写字母</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-d</div>
</td>
<td width="492">
<div>
在生成的密码中间不加任何分割符,默认6个密码连成一长串</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-l</div>
</td>
<td width="492">
<div>
生成密码的spell</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-t</div>
</td>
<td width="492">
<div>
输出密码中可发音字符的发音</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-y</div>
</td>
<td width="492">
<div>
输出加密密码</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-q</div>
</td>
<td width="492">
<div>
静默模式,不输出告警信息</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-h</div>
</td>
<td width="492">
<div>
输出帮助信息</div>
</td>
</tr>
<tr>
<td width="63">
<div>
-v</div>
</td>
<td width="492">
<div>
版本信息。</div>
</td>
</tr>
</tbody></table>
<p>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_848914">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain"></code><code class="bash comments"># apg -m sncl -m 8 -x 12 </code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">cupif6swib?</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">kij</code><code class="bash plain">/ovmuk7</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">cyn=otduif1</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash plain">eic3enn></code>
</div>
<div class="line number7 index6 alt2">
<code class="bash plain">newcod"rab4</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash plain">{flipnayt0</code>
</div>
<div class="line number9 index8 alt2">
<code class="bash plain"></code><code class="bash comments"># apg -m sncl -m 8 -x 12 -t</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash plain">dujghitt6ob` (duj-ghitt-six-ob-grave)</code>
</div>
<div class="line number11 index10 alt2">
<code class="bash plain">rewgemec7ow~ (rewg-em-ec-seven-ow-tilde)</code>
</div>
<div class="line number12 index11 alt1">
<code class="bash plain">oc%knegg1 (oc-percent_sign-knegg-one)</code>
</div>
<div class="line number13 index12 alt2">
<code class="bash plain">loon5quem+ (loon-five-quem-plus_sign)</code>
</div>
<div class="line number14 index13 alt1">
<code class="bash plain">el5bleb{ (el-five-bleb-left_brace)</code>
</div>
<div class="line number15 index14 alt2">
<code class="bash plain">te4qued( (te-four-qued-left_parenthesis)</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<strong>3:pwgen </strong></p>
<p>
pwgen生成的密码容易记忆而且安全。pwgen的下载地址为https://sourceforge.net/projects/pwgen-win/files/pwgen/2.9.0/ </p>
<p>
apt-get install pwgen</p>
<p>
关于pwgen命令的一些参数,如下所示:参数说明:</p>
<p>
</p>
<table border="1" cellpadding="0" cellspacing="0"><tbody>
<tr>
<td width="96">
<div>
参数</div>
</td>
<td width="379">
<div>
<span> </span>功能描述</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-c</div>
</td>
<td width="379">
<div>
密码里面包含至少一个大写字母</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-a</div>
</td>
<td width="379">
<div>
密码里面不包含大写字母</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-n</div>
</td>
<td width="379">
<div>
密码里面至少包含一个数字。</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-0</div>
</td>
<td width="379">
<div>
密码中不包含数字</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-y</div>
</td>
<td width="379">
<div>
密码中至少包含一个特殊字符。</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-s</div>
</td>
<td width="379">
<div>
生成安全随机的密码</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-b</div>
</td>
<td width="379">
<div>
密码中不包含混淆的字符,例如“1”和“i”</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-h</div>
</td>
<td width="379">
<div>
查看帮助信息</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-h</div>
</td>
<td width="379">
<div>
使用指定文件sha1哈希生成,不适用随机生成</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-c</div>
</td>
<td width="379">
<div>
按列打印生成的随机密码</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-1</div>
</td>
<td width="379">
<div>
每行输出一个密码,不按列打印生成密码</div>
</td>
</tr>
<tr>
<td width="96">
<div>
-v</div>
</td>
<td width="379">
<div>
密码不包括元音字母或者可能被误认为是元音字母的数字</div>
</td>
</tr>
</tbody></table>
<p>
</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_200694">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
<div class="line number17 index16 alt2">
17</div>
<div class="line number18 index17 alt1">
18</div>
<div class="line number19 index18 alt2">
19</div>
<div class="line number20 index19 alt1">
20</div>
<div class="line number21 index20 alt2">
21</div>
<div class="line number22 index21 alt1">
22</div>
<div class="line number23 index22 alt2">
23</div>
<div class="line number24 index23 alt1">
24</div>
<div class="line number25 index24 alt2">
25</div>
<div class="line number26 index25 alt1">
26</div>
<div class="line number27 index26 alt2">
27</div>
<div class="line number28 index27 alt1">
28</div>
<div class="line number29 index28 alt2">
29</div>
<div class="line number30 index29 alt1">
30</div>
<div class="line number31 index30 alt2">
31</div>
<div class="line number32 index31 alt1">
32</div>
<div class="line number33 index32 alt2">
33</div>
<div class="line number34 index33 alt1">
34</div>
<div class="line number35 index34 alt2">
35</div>
<div class="line number36 index35 alt1">
36</div>
<div class="line number37 index36 alt2">
37</div>
<div class="line number38 index37 alt1">
38</div>
<div class="line number39 index38 alt2">
39</div>
<div class="line number40 index39 alt1">
40</div>
<div class="line number41 index40 alt2">
41</div>
<div class="line number42 index41 alt1">
42</div>
<div class="line number43 index42 alt2">
43</div>
<div class="line number44 index43 alt1">
44</div>
<div class="line number45 index44 alt2">
45</div>
<div class="line number46 index45 alt1">
46</div>
<div class="line number47 index46 alt2">
47</div>
<div class="line number48 index47 alt1">
48</div>
<div class="line number49 index48 alt2">
49</div>
<div class="line number50 index49 alt1">
50</div>
<div class="line number51 index50 alt2">
51</div>
<div class="line number52 index51 alt1">
52</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">root@db-server:~</code><code class="bash comments"># pwgen -h</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">usage: pwgen [ options ] [ pw_length ] [ num_pw ]</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash spaces"> </code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">options supported by pwgen:</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash spaces"> </code><code class="bash plain">-c or --capitalize</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash spaces"> </code><code class="bash plain">include at least one capital letter </code><code class="bash keyword">in</code> <code class="bash plain">the password</code>
</div>
<div class="line number7 index6 alt2">
<code class="bash spaces"> </code><code class="bash plain">-a or --no-capitalize</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash spaces"> </code><code class="bash plain">don't include capital letters </code><code class="bash keyword">in</code> <code class="bash plain">the password</code>
</div>
<div class="line number9 index8 alt2">
<code class="bash spaces"> </code><code class="bash plain">-n or --numerals</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash spaces"> </code><code class="bash plain">include at least one number </code><code class="bash keyword">in</code> <code class="bash plain">the password</code>
</div>
<div class="line number11 index10 alt2">
<code class="bash spaces"> </code><code class="bash plain">-0 or --no-numerals</code>
</div>
<div class="line number12 index11 alt1">
<code class="bash spaces"> </code><code class="bash plain">don't include numbers </code><code class="bash keyword">in</code> <code class="bash plain">the password</code>
</div>
<div class="line number13 index12 alt2">
<code class="bash spaces"> </code><code class="bash plain">-y or --symbols</code>
</div>
<div class="line number14 index13 alt1">
<code class="bash spaces"> </code><code class="bash plain">include at least one special symbol </code><code class="bash keyword">in</code> <code class="bash plain">the password</code>
</div>
<div class="line number15 index14 alt2">
<code class="bash spaces"> </code><code class="bash plain">-s or --secure</code>
</div>
<div class="line number16 index15 alt1">
<code class="bash spaces"> </code><code class="bash plain">generate completely random passwords</code>
</div>
<div class="line number17 index16 alt2">
<code class="bash spaces"> </code><code class="bash plain">-b or --ambiguous</code>
</div>
<div class="line number18 index17 alt1">
<code class="bash spaces"> </code><code class="bash plain">don't include ambiguous characters </code><code class="bash keyword">in</code> <code class="bash plain">the password</code>
</div>
<div class="line number19 index18 alt2">
<code class="bash spaces"> </code><code class="bash plain">-h or --help</code>
</div>
<div class="line number20 index19 alt1">
<code class="bash spaces"> </code><code class="bash plain">print a help message</code>
</div>
<div class="line number21 index20 alt2">
<code class="bash spaces"> </code><code class="bash plain">-h or --sha1=path</code><code class="bash plain">/to/file</code><code class="bash plain">[</code><code class="bash comments">#seed]</code>
</div>
<div class="line number22 index21 alt1">
<code class="bash spaces"> </code><code class="bash plain">use sha1 </code><code class="bash functions">hash</code> <code class="bash plain">of given </code><code class="bash functions">file</code> <code class="bash plain">as a (not so) random generator</code>
</div>
<div class="line number23 index22 alt2">
<code class="bash spaces"> </code><code class="bash plain">-c</code>
</div>
<div class="line number24 index23 alt1">
<code class="bash spaces"> </code><code class="bash plain">print the generated passwords </code><code class="bash keyword">in</code> <code class="bash plain">columns</code>
</div>
<div class="line number25 index24 alt2">
<code class="bash spaces"> </code><code class="bash plain">-1</code>
</div>
<div class="line number26 index25 alt1">
<code class="bash spaces"> </code><code class="bash plain">don't print the generated passwords </code><code class="bash keyword">in</code> <code class="bash plain">columns</code>
</div>
<div class="line number27 index26 alt2">
<code class="bash spaces"> </code><code class="bash plain">-</code><code class="bash functions">v</code> <code class="bash plain">or --no-vowels</code>
</div>
<div class="line number28 index27 alt1">
<code class="bash spaces"> </code><code class="bash keyword">do</code> <code class="bash plain">not use any vowels so as to avoid accidental nasty words</code>
</div>
<div class="line number29 index28 alt2">
<code class="bash spaces"> </code>
</div>
<div class="line number30 index29 alt1">
<code class="bash plain">root@db-server:~</code><code class="bash comments"># pwgen -c</code>
</div>
<div class="line number31 index30 alt2">
<code class="bash plain">xu3aiquu choo2aij ohch3eip ou8ofeel ayai5thi iet3eene ieth1dei mairah0o</code>
</div>
<div class="line number32 index31 alt1">
<code class="bash plain">gad9ooth fabohz6e oojee3oo thiec4ah ahb1iedi sah7ahth kainee4o beew7eew</code>
</div>
<div class="line number33 index32 alt2">
<code class="bash plain">eedoha1b eom3aiph daigee2i aog4gei8 siejoo9o eemahk6a erur1aim ohbu6thi</code>
</div>
<div class="line number34 index33 alt1">
<code class="bash plain">ae0ohbai ehai9go0 ni0iye4k ais0eedo ki3aiku4 cue7aexi ao3lae5o oot2ahth</code>
</div>
<div class="line number35 index34 alt2">
<code class="bash plain">yiev2lei ingeeth5 aebi1sai quahh0ei wei3aep5 bohng8ae eecuor5i kie1eith</code>
</div>
<div class="line number36 index35 alt1">
<code class="bash plain">hiepa7th uchaith5 eix5echi reir4ele rawaic5l ahk6fae1 eid5aen2 saep4voh</code>
</div>
<div class="line number37 index36 alt2">
<code class="bash plain">irea6quo iakoh7pi eiphoo1o pie9neir aj2thied mi3shugh oingi8oo vohthoo3</code>
</div>
<div class="line number38 index37 alt1">
<code class="bash plain">eph6eed1 ibooc3ux wo5tapha ceigh8ah eex7ae6r aeb1phoo zohquo9h ahphaig5</code>
</div>
<div class="line number39 index38 alt2">
<code class="bash plain">daenu0ue qui2feph quet5wo7 fooquo1m vei4ceej nie3nae2 ipahla7e ku6ahbuf</code>
</div>
<div class="line number40 index39 alt1">
<code class="bash plain">oong2ye8 eij2haej ohchie4i oowah4oz utaim8sh hah3oong iequ1pai aewai8mi</code>
</div>
<div class="line number41 index40 alt2">
<code class="bash plain">waip3aiz hi0se4ai boon0azi ir0eicee theeth5n aefo4air tah7teef aogh3quo</code>
</div>
<div class="line number42 index41 alt1">
<code class="bash plain">iya6eigo ie9heegh aeyoh9bo eixoos4z yez7obai doosei4w sapeebe8 ood1cahc</code>
</div>
<div class="line number43 index42 alt2">
<code class="bash plain">ie5ohf1s goonoob2 aiy9wu7w oeh3sa5v eith9vai iyahs1fu she5oogi kohsha7e</code>
</div>
<div class="line number44 index43 alt1">
<code class="bash plain">deeleit4 eibie0th ou4deihi pai0oluk vae6baih doocee5e ahd2iex3 eil9airu</code>
</div>
<div class="line number45 index44 alt2">
<code class="bash plain">zeinou0c uu4bairi ahx2eew2 ashai0ee yae0aita paph4air ich4nei4 mooph1ch</code>
</div>
<div class="line number46 index45 alt1">
<code class="bash plain">ez0aitha hoo8gaeh aitha3ga quaif7ei iel9oafu cai0id2u eecul0qu oochae0a</code>
</div>
<div class="line number47 index46 alt2">
<code class="bash plain">vuk1she4 bai3ohte aichah9v mohz7iyo zaeyoo8j xah4ohhi ohz1ohw6 eed0aeko</code>
</div>
<div class="line number48 index47 alt1">
<code class="bash plain">tooqu3ar eih8rata wiech2ub nomooch6 ahv8boo3 zea2gei4 oam4eile cier9iev</code>
</div>
<div class="line number49 index48 alt2">
<code class="bash plain">baereef9 iom2the0 foe3ieza zaingat4 do1bah7r atuyom2u eequ1lie chaexo2j</code>
</div>
<div class="line number50 index49 alt1">
<code class="bash plain">eiza0aed leimuol0 eid5yu5c ahp4ahtu oobiesh2 av8iaxoh yeid0eej goor1aey</code>
</div>
<div class="line number51 index50 alt2">
<code class="bash plain">root@db-server:~</code><code class="bash comments"># pwgen -1</code>
</div>
<div class="line number52 index51 alt1">
<code class="bash plain">au9ni2fa</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="详解Linux下随机生成密码的命令总结" alt="详解Linux下随机生成密码的命令总结" src="https://zhuji.jb51.net/uploads/img/202305/84b2846e5dafc4ff639ad95d9abc19d5.jpg"></p>
<p>
生成一个10个长度包含大小字母,数字、特殊字符的密码:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_98057">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">root@db-server:~</code><code class="bash comments"># pwgen -1cny 10</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash spaces"> </code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">the9ciep</code><code class="bash comments">#a</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
生成12个密码长度为10,并且至少包含一个特殊字符、数字、大写字母的密码</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_170282">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">root@db-server:~</code><code class="bash comments"># pwgen -cy -1 -n 10 12</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">cahw]ie7ug</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">nie1ooko-u</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">anguu4iu!n</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">hie%m2ojeh</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash plain">be7wo{w:ah</code>
</div>
<div class="line number7 index6 alt2">
<code class="bash plain">ee^quaif2u</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash plain">lo{ngia1ce</code>
</div>
<div class="line number9 index8 alt2">
<code class="bash plain">aetoh"d7ah</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash plain">ies5cho=ch</code>
</div>
<div class="line number11 index10 alt2">
<code class="bash plain">lu4seey<ab</code>
</div>
<div class="line number12 index11 alt1">
<code class="bash plain">si>or.aih6</code>
</div>
<div class="line number13 index12 alt2">
<code class="bash plain">eo;l6fie1m</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
</div>
<p>
<img title="详解Linux下随机生成密码的命令总结" alt="详解Linux下随机生成密码的命令总结" src="https://zhuji.jb51.net/uploads/img/202305/d546dac23d340439bf4036aadb637307.jpg"></p>
<p>
当然还有一些其它密码生成工具,例如makepasswd、passwordmaker-cli 。个人觉得工具的掌握在精不在多,熟练掌握一两款工具即可。网上有篇用linux命令行生成随机密码的十种方法, 里面介绍了很多种生成密码的工具和方法,只是有些命令和方法非常不实用。</p>
<p>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。</p>
<p>
原文链接:http://www.cnblogs.com/kerrycode/p/6537175.html</p>
頁:
[1]