pass, cli password manager

pass is a command line utility to manage your passwords.

It creates a simple file/folder structure under your $PASSWORD_STORE_DIR (by default ~/.password-store) where every file is encrypted with your gpg key.

You can organize that hierarchy as you see fit. For instance something like sites/tilde.news/myusername is a common way of doing it.

Those files are not limited to contain simply a password, they can contain anything. But is recommended that the password goes alone in the first line, so you can benefit from the -c option which copies that to the clipboard directly.

There is bash, zsh and fish command line completion available and all can be tracked using git. So it's really convenient.

setup

This is simple, just one command (assuming you have your GnuPG key ready). GPG-ID is the hex id of your key.

$ pass init GPG-ID mkdir: created directory ‘/home/user/.password-store’ Password store initialized for GPG-ID

basic usage

list all passwords "tree" style

$ pass Password Store ├── sites │ ├── tilde.zone │ │ ├── myUserName │ │ ├── secondAccount ...

find a password

$ pass find tilde.zone Search Terms: tilde.zone └── sites └── tilde.zone └── myUserName@tilde.zone

See the content of a file

$ pass email/tilde.institute/myAccount supersecret

Copy the first line to the clipboard. Clear time can be configured with $PASSWORD_STORE_CLIP_TIME

$ pass -c email/tilde.institute/myAccount Copied email/tilde.institute/myAccount to clipboard. Will clear in 45 seconds.

Insert a new password. It can be multiline with -m. Remember to put the password on the first line if you want to use the clipboard function

$ pass insert sites/foo.com/blah Enter password for sites/foo.com/blah:

Generate a 32 chars random password and store it. You can define the default length with $PASSWORD_STORE_GENERATED_LENGTH. With -n the password will not include symbols, but alphanumeric characters only. With -c it gets copied to the clipboard as usual.

$ pass generate sites/foo.com/abcd 32 The generated password to sites/foo.com/abcd is: $(-QF&Q=IN2nFBx)

take a look at the --help option or the complete documentation on their website.

references:

Back to Wiki