wiki/pages/pass.md

113 lines
2.9 KiB
Markdown
Raw Normal View History

2019-09-02 21:42:06 +00:00
<!--
title: pass, the CLI Password Manager
author: erxeto
description: Usage guide for pass
-->
# pass, the 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.
## Changing Keys
If you need to change the key being used for your password files,
simply navigate to the directory and re-issue `pass init`, but with
the ID of the new key to be used. Pass will prompt for the old key's
password, then automatically decrypt all keys and re-encrypt them
with the new key.
```
$ cd ~/.password-store
$ pass init NEWGPGKEYID
```
references:
* [pass home page](https://passwordstore.org)
[back](/)