目的
学习在Linux上使用”pass”密码管理器来组织密码
要求
- 安装所需软件包所需的root权限
困难
简单
约定
介绍
如果您有一个好习惯,不要将同一密码用于多个目的,那么您可能已经感到需要使用密码管理器了。在Linux上,有很多可供选择的选择,包括专有的(如果您敢的话)和开源的。如果您像我一样,认为简单是要走的路,那么您可能会想知道如何使用pass
效用。
第一步
顺便说一句,它是一个密码管理器,它实际上是您每天可能已经在使用的可靠且有用的工具的包装器,例如gpg
和git
。尽管存在图形界面,但它设计为可从命令行运行:因此,即使在无头计算机上也可以运行。
第1步-安装
通过它可以在大多数linux发行版上轻松获得,您可以通过包管理器获得:
软呢帽
# dnf install pass
RHEL和CentOS
官方存储库中不提供通行证,但您可以从以下位置获取通行证epel
。要使后一个源在CentOS7上可用,您要做的就是:
# yum install epel-release
但是,在Red Hat Enterprise Linux上,启用该额外资源的软件包不可用。您可以从EPEL官方网站下载它。
Debian和Ubuntu
# apt-get install pass
Arch Linux
# pacman -S pass
初始化密码存储
一旦我们有了pass
安装后,我们就可以开始使用它并对其进行配置了。首先,因为通行证依赖gpg
为了加密我们的密码并以安全的方式存储它,我们必须有一个gpg keypair
已经到位。
首先要做的是初始化password store
:这只是您所有gpg-encrypted密码将被保存的目录。默认情况下,它将被创建为您内部的隐藏目录$HOME
,但是您可以使用PASSWORD_STORE_DIR
环境变量。让我们继续:
$ pass init
的password-store
目录将被创建。现在,让我们尝试存储我们的第一个密码:
$ pass edit mysite
此时,将打开默认文本编辑器的实例,我们要做的就是在其中输入密码。该文件将使用gpg加密,并存储为mysite.gpg
在password-store目录中。
Pass将加密的文件存储在目录树中,这意味着我们可以在逻辑上将更多文件分组在子目录中以获得更好的组织,我们只需在文件创建时指定它,例如:
$ pass edit foo/bar
就像上面一样,这将提示您输入密码,但是该文件将在foo
密码存储的子目录。为了可视化文件结构,我们要做的就是使用pass
不带任何参数的命令:
$ pass
Password Store
├── foo
│ └── bar
└── mysite
每当我们需要修改密码时,我们只需要重复用于创建密码的相同命令即可,如上所示。
存取密码
基本上,有两种访问密码的方法:第一种是使用以下命令在终端上显示密码:
pass mysite
但是,更好的方法是通过使用-c
选项:
pass -c mysite
在这种情况下,剪贴板将在之后清除45
秒。在这两种情况下,都会出现提示,您必须在其中插入gpg密码。
产生密码
Pass还可以为我们生成(并自动存储)安全密码。假设我们要生成一个由15个字符组成的密码:字母数字和符号。使用的命令将是:
pass generate mysite 15
如果我们希望密码仅包含字母数字字符,则可以使用--no-symbols
选项。生成的密码将显示在屏幕上。另外,也可以使用以下命令将其直接复制到剪贴板--clip
要么-c
选项。您甚至可以使用以下方式生成QR码:-q
要么--qrcode
选项:
从上面的屏幕快照中可以看到,已经生成了qrcode,但是由于输入了mysite
在调用命令时已经存在,pass显示了一个提示,让我们确认是否要覆盖它。
通过使用/dev/urandom
设备作为(伪)随机数据生成器来创建密码,同时使用xclip
将它们复制到剪贴板的实用程序,以及qrencode
将它们显示为qrcode。在我看来,这种模块化是其最大的优势:它不会重塑任何东西,只是包装了常用的工具即可实现其目标。
您也可以分别使用密码来重命名,复制或删除密码存储中的文件。pass mv
,pass cp
, 要么pass rm
命令。
使用密码存储作为git存储库
的另一大特色pass
可以将密码存储库视为git存储库:在版本控制系统下,让我们更轻松地管理密码。
pass git init
这将创建git存储库,并自动使用所有现有文件创建一个提交。下一步是指定要跟踪的远程存储库:
pass git remote add <name> <url>
我们可以像使用其他所有存储库一样管理该存储库。唯一的”difference”是,每次我们添加或修改密码时,pass
会自动将文件添加到索引并创建提交。
存在图形界面pass
,它叫做qtpass
它也可用于Windows和MacO。也可以使用以下命令从firefox访问密码存储PassFF
延期。您将在项目站点上找到更多详细信息。继续尝试pass
, 你不会后悔的!