KeePassX:保护您的密码安全
长期以来,我的密码跟踪系统非常简单:希望我能记住每个网站的正确密码,或者将它们记录在普通的文字处理器文档中。 显然,这些方法存在很大的缺陷。 我可能很难记住不常用网站的密码,而文字处理器文档并不是存储密码最安全的地方。 这样的系统也倾向于提倡过于简单的密码或在网站之间重复使用相同的密码(两者都更容易记住)。 由于这些和其他原因,我决定使用密码管理器会让我的数字生活轻松很多。
密码管理器是一种存储密码的程序。 存储的密码通常会为了安全目的进行加密。 密码管理器可以是基于桌面的(密码数据存储在硬盘驱动器上的加密数据库文件中)、便携式的(类似于桌面版本,但存储在智能手机或类似设备上)或在线的(数据以加密形式存储在受信任的第三方网站上)。 除了提高安全性(相对于将密码写在纸上或未加密的文本文档中,或依靠记忆),密码管理器还允许创建和存储更复杂(因此,更难猜测/破解)的密码。 经过一番研究,我决定使用 KeePassX 作为我首选的密码管理器。
通用功能KeePassX 是一款多平台、开源的密码管理器。 与某些密码管理器不同,KeePassX 是基于桌面的,这有其优点和缺点。 但是,KeePassX 可以与在线存储系统(如 Dropbox)一起使用(我将在本文后面讨论如何做到这一点)。
KeePassX 具有多种功能,包括导入和导出密码、搜索功能、在预定义类别中组织密码/用户名以及安全的密码生成器。 KeePassX 还具有有限的 AutoType 功能,或从条目在网页上自动输入用户名和/或密码信息的功能。
密码信息存储在加密的 256 位数据库文件中,该文件与 KeePassX 的其他平台版本(包括适用于 Android 智能手机的 KeePassDroid、适用于 Windows 的 KeePass 等)兼容。 但是,为了兼容性,其他版本创建的密码文件必须以 KeePassX 使用的较旧的(1.x 版本)格式存储,而不是当前的(在撰写本文时)2.x 版本,尽管正在努力使未来的 KeePassX 版本能够使用较新的格式。
设置和基本用法KeePassX 在许多存储库中都可用; 因此,安装应遵循您选择的发行版的标准程序。
首次启动时,KeePassX 会提示用户创建一个新数据库。 如图 1 所示,“设置主密钥”框将显示,要求用户(默认情况下)为数据库创建一个主密码。 您应该选择一个强主密码。 另一种选择是使用密钥文件代替或补充密码(稍后会详细介绍密钥文件的使用)。 但是,在本文的大部分内容中,我的示例仅使用主密码。

图 1. “设置主密钥”框
创建密码后,将出现默认主窗口(图 2),其中(在菜单和工具栏中)显示了 KeePassX 的大多数功能。 菜单包括“文件”(导入和导出数据库格式、保存对数据库的更改等);“条目”(添加、删除和更改条目,以及将条目信息复制到剪贴板);“组”(将条目信息组织到各个类别中);“视图”(工具栏/条目信息显示设置);“附加功能”(KeePassX 本身的设置以及密码生成器);和“帮助”(指向 KeePassX 网站、FAQ 列表等的链接)。

图 2. KeePassX 主窗口
默认情况下,新数据库中创建了两个组:“Internet”和“Email”。 要创建新类别,请选择“组”→“添加新组”,然后在出现的“组属性”窗口中输入新组的名称。 您还可以从弹出菜单中为新组选择一个图标。 完成后,选择“确定”。 新类别将出现在左侧窗格中。
要将新密码和/或用户名输入到 KeePassX 中,请从左侧窗格中为新密码选择一个类别,然后选择“条目”→“添加新条目”,或从工具栏中选择“添加新条目”。 将出现“新条目”窗口(图 3),您可以在其中输入密码和用户名信息,以及任何其他需要的信息。 您可以输入的其他信息包括“标题”(条目的名称);“用户名”;“密码”;“重复”(输入两次相同的密码以进行验证);“注释”(输入有关条目的注释);“过期”(为密码设置可选的到期日期);“附件”(将文件附加到条目);和“工具”(弹出菜单)。 密码部分下方还包含一个质量进度条,指示密码的相对强度。

图 3. 用于输入新用户名和密码的“新条目”窗口
“工具”弹出菜单包含两个选项
-
AutoType:自定义序列——自定义输入到表单中的密码/用户名信息序列。
-
AutoType:选择目标窗口——选择要输入密码/用户名信息的应用程序或浏览器窗口。
为了提高安全性,可以通过单击密码输入框旁边的眼睛图标来显示或隐藏密码(显示星号)。
密码生成器可通过单击“新条目”窗口中的“Gen”按钮(或从“附加功能”→“密码生成器”)获得。 将出现如图 4 所示的框。 此功能允许您创建随机的强密码。 生成器中有三个选项卡可用:“随机”、“可发音”和“自定义”。 在“随机”下,您可以根据使用的字符类型、大写或小写等选择生成密码的各种标准。 在“可发音”下,可以使用一些类似于“随机”的选项,尽管此处的选择是专门或几乎专门使用字母生成密码。 最后,在“自定义”下,显示一个输入框,您可以在其中键入单词或短语来定义用于生成密码的字符。 密码生成器的底部包括多个功能,例如设置密码长度、密码位强度指示器和使用熵生成器。 熵生成器创建一个随机数据集(基于键盘活动或鼠标移动),密码将基于该数据集生成。

图 4. KeePassX 的密码生成器
“新条目”窗口中的“过期”选项允许您设置一个日期,指示密码应持续多长时间。 这可以用作定期更改密码以提高安全性的提醒。 要查看哪些密码已过期,请选择“附加功能”→“显示过期条目”。
要使用存储的用户名或密码,KeePassX 有两个选项:要么从 KeePassX 复制信息并将其粘贴到所需的输入区域,要么选择 AutoType 功能。 要复制信息,请从工具栏中选择“复制用户名到剪贴板”或“复制密码到剪贴板”,或者选择“条目”菜单下同名的选项。 对于 AutoType,请在浏览器打开到所需的登录页面时选择“条目”→“执行 AutoType”; 信息将自动输入。

图 5. KeePassX 的主窗口,其中显示了一个条目
要锁定 KeePassX 以防止他人使用(例如,当您离开计算机时),请选择“文件”→“锁定工作区”,或从工具栏中选择“锁定工作区”。 要解锁 KeePassX,请选择显示的“解锁”按钮,然后输入数据库的主密码。 为了提高隐私性,还提供了一个隐藏密码和/或用户名的选项。 转到“视图”并选择“隐藏用户名”和/或“隐藏密码”。 星号将代替用户名和/或密码显示。

图 6. 隐藏了用户名和密码信息的条目
如果您有多个数据库要管理,KeePassX 还提供了书签功能。 要为数据库文件添加书签,请选择“文件”→“书签”,然后选择“添加书签”(为数据库文件添加书签)或“为此数据库添加书签”(为当前打开的数据库添加书签)。 然后,书签将出现在“书签”菜单下。 还有一个“管理数据库”选项可以管理现有书签。
要导入或导出数据库文件,请转到“文件”并选择“从…导入”或“导出到…”。 除了 KeePassX 之外,导入格式还包括 PwManager 和 KWallet。 导出格式包括 KeePassX 和文本文件。
高级用法:基于云的数据库文件存储和智能手机访问KeePassX 的一种流行的进阶用法是将密码数据库存储在在线存储介质中,例如 Dropbox。 除了作为数据库备份的一种手段外,这还允许您从任意数量的设备(包括智能手机)访问和更新密码文件。 这是通过使用 KeePassX 针对各种智能手机操作系统的兄弟版本来完成的,包括我在此处使用的版本,即适用于 Android 智能手机的 KeePassDroid。 (对于那些使用 iOS、Windows 或 BlackBerry 智能手机的人来说,说明应该类似。)

图 7. 包含密码数据库的 Dropbox 目录
首先,访问(或创建,如果您没有)您的 Dropbox 帐户。 然后,将数据库文件移动到您的 Dropbox 目录(图 7)。 接下来,打开 KeePassX 并选择“文件”→“打开数据库”(或从工具栏中选择“打开数据库”)。 从您的 Dropbox 文件夹中选择数据库文件,然后输入您的主密码并像往常一样使用 KeePassX。
要设置您的 Android 智能手机以访问密码数据库,请从 Android Market 安装 KeePassDroid(以及,如果尚未安装,则安装 Android Dropbox 应用程序)。 接下来,启动 Dropbox,然后选择数据库文件。 然后 KeePassDroid 启动并打开该文件,显示一个主密码输入框。 输入主密码后,将显示一个智能手机友好的界面,显示各种密码组。 提供了用于转到输入的 URL 以及复制和粘贴用户名和密码的功能。 KeePassDroid 还提供了输入或修改用户名和/或密码的功能,这将更新存储在 Dropbox 上的数据库文件(当然,也允许您从桌面上的 KeePassX 访问新信息)。
如前所示,这使 KeePassX 具有一些在线密码管理器的功能,同时保持了基于桌面的优点。 虽然我没有尝试过,但对于其他基于云的存储系统(例如 Ubuntu One)(它也提供了 Android 应用程序),此方法应该类似(如果可用的智能手机应用程序允许)。
加密KeePassX 提供两种类型的 256 位加密:AES 和 Twofish。 可以通过访问“文件”→“数据库设置”来更改使用的加密类型。 AES 是默认设置,虽然可以使用 Twofish,但它仅与 KeePassX 的 1.x 版本数据库格式兼容。 因此,最好将此选项保留为默认设置。
密钥文件除了主密码之外,还可以使用密钥文件打开数据库。 密钥文件是存储数据(例如主密码或随机数据)的文件,它存储在其他位置(在同一硬盘驱动器上、USB 驱动器上等等)。 使用密钥文件代替主密码的一个优点是,打开数据库需要实际的文件。 因为密钥文件可以存储在其他位置(例如在单独的 USB 驱动器上),这也可以作为一种安全选项。 另一个优点是,密钥文件可能包含冗长或复杂的数据。 但是,一个缺点是,找到密钥文件的任何人都可以打开数据库,类似于发现主密码的人。 此外,如果密钥文件丢失(或损坏、删除或任何类似情况)或文件中任何信息被更改,则将无法打开数据库。
为了提高安全性,访问数据库可能需要主密码和密钥文件。
要使用密钥文件,请在“文件”→“更改主密钥”下(或在初始创建数据库时的“设置主密钥”窗口中),选中密钥文件复选框。 如果所需的密钥文件尚不存在,请选择“生成密钥文件”以创建一个,然后选择该文件的名称和存储位置。 要使用密钥文件打开数据库,请选中密钥文件旁边的复选框(如果需要,也选中密码旁边的复选框),然后单击“浏览”。 浏览到密钥文件的存储位置,选择它,然后选择“确定”以打开数据库。
KeePassX 和 LastPass 之间的区别另一个流行的密码管理器是 LastPass。 与 KeePassX 不同,LastPass 是专有的而不是开源的,并且它依赖于基于云的解决方案(在线存储加密的密码信息)。 LastPass 以插件形式提供,适用于大多数浏览器,并且与 Linux 兼容。 与 KeePassX 类似的功能包括密码生成和填写网站登录信息的能力。 但是,一些高级功能,包括对智能手机的支持和删除广告,需要升级到每年 12 美元的“高级”版本。 LastPass 的完全基于云的使用也需要 Internet 访问,这对于某些人来说可能是一个问题。
结论KeePassX 是一款非常有用且有价值的密码管理器。 与我以前的密码跟踪方法相比,它的存储功能和强大的密码生成器极大地帮助我提高了在线安全性。 KeePassX 的跨平台兼容性还结合其兄弟应用程序 KeePassDroid 提供了多功能性。 虽然还有其他优秀的密码管理器,但 KeePassX 特别值得一试。
资源KeePassX:http://www.keepassx.org
KeePassX 常见问题解答:http://www.keepassx.org/faq
KeePassDroid:http://www.keepassdroid.com
LastPass:http://lastpass.com