标签 密码管理器 下的文章

现如今要记住类似 email、银行、社交媒体、在线支付、ftp 等等这么多的密码相信对每一个人来说都是一个巨大的挑战。

由于需求和使用,密码管理器现如今变得非常的流行。在 Linux 中我们可以有很多选择,包括基于 GUI 和基于 CLI 两种。今天我们要讲的是一款基于 CLI 的密码管理器叫做 pass 。

pass 是 Linux 上的一个简单的命令行密码管理器,它将密码存储在一个 gpg 加密后的文件里。这些加密后的文件很好地组织按目录结构存放。

所有密码都存在于 ~/.password-store 中,它提供了添加、编辑、生成和检索密码等简单命令。

它是一个非常简短和简单的 shell 脚本。 它能够临时将密码放在剪贴板上,并使用 git 跟踪密码的修改。

这是一个很小的 shell 脚本,它还使用了少量的默认工具比如 gnupgtreegit,同时还有活跃的社区为它提供 GUI 和扩展。

如何在 Linux 中安装 Pass

Pass 可从大多数 Linux 的主要发行版的仓库中获得。 所以,你可以使用你的分布式包管理器来安装它。

对于基于 Debian 的系统,你可以使用 apt-getapt 包管理器命令来安装 pass。

$ sudo apt-get install pass

对于基于 RHEL/CentOS 的操作系统, 使用 yum 包管理器命令来安装它。

$ sudo yum install pass

Fedora 系统可用 dnf 包管理器命令来安装。

$ sudo dnf install pass

openSUSE 系统可以用 zypper 包管理器命令来安装。

$ sudo zypper in password-store

对于基于 Arch Linux 的操作系统用 pacman 包管理器来安装它。

$ pacman -S pass

如何生成 GPG 密钥对

确保你拥有你个人的 GPG 密钥对。如果没有的话,你可以通过在终端中输入以下的命令并安装指导来创建你的 GPG 密钥对。

$ gpg --gen-key

运行以上的命令以生成 GPG 密钥对时会有一系列的问题询问,谨慎输入问题的答案,其中有一些只要使用默认值即可。

初始化密码存储

如果你已经有了 GPG 密钥对,请通过运行以下命令初始化本地密码存储,你可以使用 email-id 或 gpg-id 初始化。

$ pass init [email protected]
mkdir: created directory '/home/magi/.password-store/'
Password store initialized for [email protected]

上述命令将在 ~/.password-store 目录下创建一个密码存储区。

pass 命令提供了简单的语法来管理密码。 我们一个个来看,如何添加、编辑、生成和检索密码。

通过下面的命令检查目录结构树。

$ pass
or
$ pass ls
or
$ pass show
Password Store

我没有看到任何树型结构,所以我们将根据我们的需求来创建一个。

插入一个新的密码信息

我们将通过运行以下命令来保存 gmail 的 id 及其密码。

$ pass insert eMail/[email protected]
mkdir: created directory '/home/magi/.password-store/eMail'
Enter password for eMail/[email protected]: 
Retype password for eMail/[email protected]:

执行重复操作,直到所有的密码插入完成。 比如保存 Facebook 密码。

$ pass insert Social/Facebook_2daygeek
mkdir: created directory '/home/magi/.password-store/Social'
Enter password for Social/Facebook_2daygeek: 
Retype password for Social/Facebook_2daygeek: 

我们可以列出存储中的所有现有的密码。

$ pass show
Password Store
├── 2g
├── Bank
├── eMail
│   ├── [email protected]
│   └── [email protected]
├── eMail
├── Social
│   ├── Facebook_2daygeek
│   └── Gplus_2daygeek
├── Social
└── Sudha
    └── [email protected]

显示已有密码

运行以下命令从密码存储中检索密码信息,它会询问你输入密码以解锁。

$ pass eMail/[email protected]
*******

在剪贴板中复制密码

要直接将密码直接复制到剪贴板上,而不是在终端上输入,请使用以下更安全的命令,它会在 45 秒后自动清除密码。

$ pass -c eMail/[email protected]
Copied eMail/[email protected] to clipboard. Will clear in 45 seconds.

生成一个新密码

如果你想生成一些比较难以猜测的密码用于代替原有的奇怪密码,可以通过其内部的 pwgen 功能来实现。

$ pass generate eMail/[email protected] 15
An entry already exists for eMail/[email protected]. Overwrite it? [y/N] y
The generated password for eMail/[email protected] is:
y!NZ<%T)5Iwym_S

生成没有符号的密码。

$ pass generate eMail/[email protected] 15 -n
An entry already exists for eMail/[email protected]. Overwrite it? [y/N] y
The generated password for eMail/[email protected] is:
TP9ACLyzUZUwBwO

编辑现有的密码

使用编辑器插入新密码或编辑现有密码。 当你运行下面的命令时,将会在包含密码的文本编辑器中打开文件 /dev/shm/pass.wUyGth1Hv0rnh/[email protected]。 只需在其中添加新密码,然后保存并退出即可。

$ pass edit eMail/[email protected]

File: /dev/shm/pass.wUyGth1Hv0rnh/[email protected]                                                                   
TP9ACLyzUZUwBwO

移除密码

删除现有密码。 它将从 ~/.password-store 中删除包含 .gpg 的条目。

$ pass rm eMail/[email protected]
Are you sure you would like to delete eMail/[email protected]? [y/N] y
removed '/home/magi/.password-store/eMail/[email protected]'

多选项功能

要保存详细信息,如 URL、用户名、密码、引脚等信息,可以使用以下格式。 首先确保你要将第一项设置为密码,因为它用于在使用剪贴板选项时将第一行复制为密码,以及后续行中的附加信息。

$ pass insert eMail/[email protected] -m
Enter contents of eMail/[email protected] and press Ctrl+D when finished:

H3$%hbhYT
URL : http://www.2daygeek.com
Info : Linux Tips & Tricks
Ftp User : 2g

(题图:Pixabay, CC0)


via: http://www.2daygeek.com/pass-command-line-password-manager-linux/

作者:2DAYGEEK 译者:chenxinlong 校对:wxy

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

使用一款安全开源的密码管理器来储存唯一、复杂的密码来保护你数据及账户的安全。

为你使用的每个站点和服务维护一份唯一、复杂的密码是安全专家每年给公众最常提的建议。

然而不管说过多少遍,几乎每周我们都能听到 XX 网站又被黑了的新闻,问题是这些网站的用户们就爱用一些像“12345”或“password”这样的口令来保护他们的账号。

或许用户对经典的密码做了足够的变形,符合了网站所要求的最低的密码规则。但不幸的是,“Pa$$w0rd!”也不是真正意义上的安全密码。从这方面来说,大多数单词、短语及数字的组合或替换对于密码破解工具而言都太容易破解了,密码越短越容易破解。

最棒的密码应该是长长的,任何可能的字符的随机或者伪随机组合,每个使用场景都用不同的密码。但对一个普通人而言怎么可能记住上百甚至上千个他们创建的独立的账户密码呢?简短的答案是:不能。甚至不管是在现实世界或者数码世界不应该明文记录下任何一个密码。

或许最简单地保存这些复杂、唯一密码的方法是使用密码管理器,它提供了一种访问这些强密码的简单方式。虽然像 LastPass 这样商业解决方案很受欢迎,但是还有一些开源方案。另外对于密码,可以审计你的密码管理器的源码也是很重要的,因为它可以确保你的密码被正确地加密,并且没有后门。

所以不用多说,下面有几款你可以考虑的密码管理器。

KeePass

KeePass 是一个 GPLv2 授权的密码管理器,主要设计用于 Windows ,但是同样可以在其它平台运行。KeePass 提供多个强加密选项、便于导出、多用户密钥、高级搜索特性等等。其为桌面用途设计,也有可以直接运行在浏览器中的插件,并且如果你想要在不同的机器间随身携带你的密码,它可以运行在 U 盘中。想要了解更多 KeePass 信息,你可以从在 Ricardo Frydman 的这篇旧贴中找到。

KeePassX,是 KeePass 的 Linux 移植版本,是另一个你可以考虑的项目。KeePassX 与 KeePass 2 密码文件兼容,并且已经被移植到不同的操作系统上。事实上,KeePass 的非官方版本列表覆盖了日常使用的所有系统。

Padlock

Padlock 是一个最近新进的开源密码管理器。目前在 Windows、iOS、Android 上可用,Linux 版本正在开发中,Padlock 被设计成为了一个“极简风”的密码管理器。它的源码GPLv3 授权的形式发布在 Github 上。项目同样也正在开发一个云后端,同样是开源的,这对那些厌烦了管理密码文件或者在多台电脑间设置同步的人而言是一个很好的补充。

Passbolt

Passbolt 是另一个相对较新的选择,它有 Firefox 和 Chrome 的插件,支持移动设备,还有正在开发的命令行。它基于 OpenPGP,你可以查看在线的一些功能演示(虽然这需要你安装浏览器插件)。以 AGPLv3 授权发布,你可以在 Github 上查看它的源码或者浏览一下项目的路线图来了解下目前和将来计划的功能。


使用一款你信任的密码管理器以及用复杂的密码并不能代替其他安全预防措施,它也不是万无一失的。但是对于许多用户而言,它是让你的数字生活保持安全的很重要的一部分。这些的确不是唯一的选择。还有一些更老的选择,比如 ClipperzPassword Safe,还有我有兴趣想尝试一下的基于 web 的工具 RatticDB

你会使用哪款密码管理器?为什么呢?


via: https://opensource.com/article/16/12/password-managers

作者:Jason Baker 译者:geekpi 校对:wxy

本文由 LCTT 组织编译,Linux中国 荣誉推出