您的位置:首页 > 运维架构 > Linux

使用 pass 密码管理器管理你的密码 | Linux 中国

2018-03-06 00:00 627 查看

学习在 Linux 上使用 pass 密码管理器来管理你的密码-- Egidio Docile

有用的原文链接请访问文末的“原文链接”获得可点击的文内链接、全尺寸原图和相关文章。
致谢编译自 | https://linuxconfig.org/how-to-organize-your-passwords-using-pass-password-manager 
 作者 | Egidio Docile
 译者 | DarkSun (lujun9972) ? ? ? ? 共计翻译:77 篇 贡献时间:98 天目标学习在 Linux 上使用 pass 密码管理器来管理你的密码条件◈ 需要 root 权限来安装需要的包难度简单约定◈ 
#
 - 执行指定命令需要 root 权限,可以是直接使用 root 用户来执行或者使用 
sudo
命令来执行◈ 
$
 - 使用普通的非特权用户执行指定命令介绍如果你有根据不同的意图设置不同密码的好习惯,你可能已经感受到需要一个密码管理器的必要性了。在 Linux 上有很多选择,可以是专有软件(如果你敢用的话)也可以是开源软件。如果你跟我一样喜欢简洁的话,你可能会对 
pass
 感兴趣。第一步pass 作为一个密码管理器,其实际上是一些你可能早已每天使用的、可信赖且实用的工具的一种封装,比如 
gpg
 和 
git
 。虽然它也有图形界面,但它专门设计能成在命令行下工作的:因此它也可以在 headless 机器上工作(LCTT 译注:根据 wikipedia 的说法,所谓 headless 是指没有显示器、键盘和鼠标的机器,一般通过网络链接来控制)。安装pass 在主流的 Linux 发行版中都是可用的,你可以通过包管理器安装:Fedora
# dnf install pass


RHEL 和 CentOSpass 不在官方仓库中,但你可以从 
epel
 中获取道它。要在 CentOS7 上启用后面这个源,只需要执行:
# yum install epel-release


然而在 Red Hat 企业版的 Linux 上,这个额外的源是不可用的;你需要从 EPEL 官方网站上下载它。Debian 和 Ubuntu
# apt-get install pass


Arch Linux
# pacman -S pass


初始化密码仓库安装好 
pass
 后,就可以开始使用和配置它了。首先,由于 
pass
 依赖于 
gpg
 来对我们的密码进行加密并以安全的方式进行存储,我们必须准备好一个 gpg 密钥对。首先我们要初始化密码仓库:这就是一个用来存放 gpg 加密后的密码的目录。默认情况下它会在你的 
$HOME
 创建一个隐藏目录,不过你也可以通过使用 
PASSWORD_STORE_DIR
 这一环境变量来指定另一个路径。让我们运行:
$ pass init


然后 
password-store
 目录就创建好了。现在,让我们来存储我们第一个密码:
$ pass edit mysite


这会打开默认文本编辑器,我么只需要输入密码就可以了。输入的内容会用 gpg 加密并存储为密码仓库目录中的 
mysite.gpg
 文件。
pass
 以目录树的形式存储加密后的文件,也就是说我们可以在逻辑上将多个文件放在子目录中以实现更好的组织形式,我们只需要在创建文件时指定存在哪个目录下就行了,像这样:
$ pass edit foo/bar


跟上面的命令一样,它也会让你输入密码,但是创建的文件是放在密码仓库目录下的 
foo
 子目录中的。要查看文件组织结构,只需要不带任何参数运行 
pass
 命令即可:
$ pass


Password Store


├── foo


│   └── bar


└── mysite


若想修改密码,只需要重复创建密码的操作就行了。获取密码有两种方法可以获取密码:第一种会显示密码到终端上,方法是运行:
pass mysite


然而更好的方法是使用 
-c
 选项让 
pass
 将密码直接拷贝到剪切板上:
pass -c mysite


这种情况下剪切板中的内容会在 
45
 秒后自动清除。两种方法都会要求你输入 gpg 密码。生成密码
pass
 也可以为我们自动生成(并自动存储)安全密码。假设我们想要生成一个由 15 个字符组成的密码:包含字母,数字和特殊符号,其命令如下:
pass generate mysite 15


若希望密码只包含字母和数字则可以是使用 
--no-symbols
 选项。生成的密码会显示在屏幕上。也可以通过 
--clip
 或 
-c
 选项让 
pass
 把密码直接拷贝到剪切板中。通过使用 
-q
 或 
--qrcode
 选项来生成二维码:

qrcode从上面的截屏中可看出,生成了一个二维码,不过由于运行该命令时 
mysite
 的密码已经存在了,
pass
 会提示我们确认是否要覆盖原密码。
pass
 使用 
/dev/urandom
 设备作为(伪)随机数据生成器来生成密码,同时它使用 
xclip
 工具来将密码拷贝到粘帖板中,而使用 
qrencode
 来将密码以二维码的形式显示出来。在我看来,这种模块化的设计正是它最大的优势:它并不重复造轮子,而只是将常用的工具包装起来完成任务。你也可以使用 
pass mv
pass cp
 和 
pass rm
 来重命名、拷贝和删除密码仓库中的文件。将密码仓库变成 git 仓库
pass
 另一个很棒的功能就是可以将密码仓库当成 git 仓库来用:通过版本管理系统能让我们管理密码更方便。
pass git init


这会创建 git 仓库,并自动提交所有已存在的文件。下一步就是指定跟踪的远程仓库了:
pass git remote add <name> <url>


我们可以把这个密码仓库当成普通仓库来用。唯一的不同点在于每次我们新增或修改一个密码,
pass
 都会自动将该文件加入索引并创建一个提交。
pass
 有一个叫做 
qtpass
 的图形界面,而且也支持 Windows 和 MacOs。通过使用 
PassFF
 插件,它还能获取 firefox 中存储的密码。在它的项目网站上可以查看更多详细信息。试一下 
pass
 吧,你不会失望的!via: https://linuxconfig.org/how-to-organize-your-passwords-using-pass-password-manager作者:Egidio Docile[2] 译者:lujun9972 校对:Locez本文由 LCTT 原创编译,Linux中国 荣誉推出
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: