StrongPasswords
原文出处:
原文作者:
授权许可:译稿:创作共用协议Attribution-ShareAlike 2.0
翻译人员:赵宝刚
校对人员:purewind
贡献者:
适用版本:
文章状态:完成
Introduction 介绍
在Ubuntu中存在许多安全机制,在许多地方需要密码。“密码”是计算机中最常用的一种安全策略,经常用来保护敏感信息,例如你的电子邮件帐户,或者你的Ubuntu用户帐户。为需要密码的应用程序或者服务选择一个强密码是极其重要的。如果你选择的密码来源于类似字典中的单词这样普通的信息,攻击者就可以用一种称之为“暴力破解法”的手段很快地获得你的密码,进而威胁被此密码保护的帐号或者数据。
本向导将演示如何使用Ubuntu提供的应用程序生成强密码。本向导并不讨论一些常规的密码策略,包括定期更换,禁止重用,等等。这些策略不在本向导的讨论范围内,关于常规密码策略及更多关于密码的信息,读者可以参看本向导末尾提供的资源。
Target Audience 目标读者
本向导适用于那些对GNU/Linux命令行有足够经验(包括用apt-get安装软件包,执行命令行工具)并且对密码及用命令行工具生成强密码感兴趣的所有读者。
Strong Passwords 强密码
Ubuntu系统中的应用程序及库可以帮助你生成或增强强密码。强密码的定义为满足如下标准的密码:
- 在长度上至少有八(8)个字符
- 不包含你的用户名,真实姓名,或者组织名称
- 不包含完整的“字典单词”
- 与你以前的密码有明显的差异
- 包含三(3)种以上的下列字符类型
- 小写字母(a,b,c,等)
- 大写字母(A,B,C,等)
- 数字(0,1,2,等)
- 特殊字符(@,%,!,等)
Generating Strong Passwords in Ubuntu 在Ubuntu中生成强密码
现在我们已经了解了强密码的构成。那么如何让计算机自动帮助我们生成强密码呢?这个章节我们将主要讲解在Ubuntu系统管理(unierse)组中提供的"自动密码生成器“(Automatic Password Generator,简称APG)程序。APG就像它名字中描述的,负责自动生成密码。而且APG不仅仅是生成密码,而是为你生成强密码。如果你想进一步研究APG,您可以在APG的网站上找到所有的信息。(参看本向导的资料章节)
在这里需要说明的是,Ubuntu中用户帐号的密码功能提供了一些增强用户密码的方法,但在有些情况下,应用程序是不能通过通过这个密码进行保护的。这个向导就是用来帮助用户生成一个更有效的强密码。
Installing APG 安装APG
为了安装APG,首先保证你有一个可用的Internet连接,同时激活了软件库中的Universe包(参看 UniversePackages),然后在命令行提示符下执行下面的命令:
你将被提示输入一个密码。这个密码应该是你的用户密码,或者你之前执行sudo命令时输入的那个密码。授权完成后,APG软件包将被下载并安装。之后你就可以使用或者按照你的喜好配置APG了。
Using APG 使用APG
在Ubuntu中用apt-get安装的APG在执行时的默认行为是,提示在标准输入设备(通常是键盘)中输入一些随机数据然后按回车,然后显示六(6)个强壮的“可发音”的密码。这里所说的“可发音”的是指这些密码可以向一个常规单词那样发音。实际上,APG在每个密码右侧用一对括号()标示了读音。而且这些密码是强密码因为它们包含了小写,大写及数字字符的组合。下面是执行apg命令后APG默认输出的一个示例:
APG提示输入一些随机数据,然后按下回车键,产生的输出大致是这样:
queafWodEis5 (queaf-Wod-Eis-FIVE) WoudElIc6 (Woud-El-Ic-SIX) GorIacNewt8 (Gor-Iac-Newt-EIGHT) ShratUplEov7 (Shrat-Upl-E-ov-SEVEN) hexLyafByff1 (hex-Lyaf-Byff-ONE) Irkyorn9 (Irk-yorn-NINE)
如果你想让APG执行不同的行为,有许多参数可以传送给apg命令来改变默认的输出,及APG的活动。例如,要生成随机字符密码而不是可发音密码,你可以带一个 -a 1参数来执行APG,这里 -a 是指定APG所使用的算法, 1 是选用随机方式。下面的命令将产生六(6)个随机字符密码而且不会要求输入随机数据:
执行上面的命令后,APG类似这样地生成六(6)个随机字符密码:
S:w[AOe< !_IlD#_G/~ )lL`avASe6 SgzlI:lU?h ~Wc(0b"{ '4fU25w%}
如果你总是希望提示从标准输入(键盘)输入一些随机数据,用以确保生成的密码更安全,你可以用一个 -s
参数明确地告诉APG。
另一个例子是要生成四(4)个Wi-Fi保护访问(WPA)预共享秘钥(WPA PSK),要求长度为WPA PSK说要求的最大值63的随机字符用以支持现今的WIFI设备,例如无线访问点(WAP)。为了生成这样的序列,并且使用随机数据提示,可以在命令提示符下执行下面的命令:
通过键盘输入随机数据后并按下回车键后,将会出现类似下面这样的强壮的WPA PSKs:
+DIaz*<DmO6VAFR/cQ>B^'[mtB;J1ABi*n"B<=|_My"5bZv#*iRJH!0oCcf!,@Z os#?3;sC2}/A>lG<sup>e*9%9}pd^&A\'eLkdC,lk#jB,bcg70I|q@U:</sup>VZP"}>3z?G rj??<_Ej%-:2LW;4q_?53$ab$U_~1I(({`^LN1Hd&&gKj+Dw;EqR<\qH_VQ{`s! "x3up};b~/jU6Vo,t">Dr~f_U`NSNr30JmOD@c'Y:p2wvc"0s?$MtT<S5Qr\AZi
还有很多其他的选项。你可以参考APG 用户手册以及APG网站查看更多信息。(参看本向导的资料部分)
Resources 资料
下面列出的资料中包含更多的关于密码,命令,以及常规密码策略的信息。
Local System Resources 本地系统资料
man apg |
System manual page for the apg command
|
man passwd |
System manual page for the passwd command
|
.
man apg |
apg 命令的系统用户手册
|
man passwd |
passwd 命令的系统用户手册
|
WWW Resources 互联网资料
SANS Password Policy Guideline (PDF Document)
Simple Formula For Strong Passwords (PDF Document)
The Diceware Passphrase Home Page
Steve Gibson's Ultra High Security Password Generator