The slightly more awesome standard UNIX password manager for teams.
Manage your credentials with ease. In a globally distributed team, on multiple devices or fully offline on an air gapped machine.
- Works everywhere - The same user experience on Linux, MacOS, *BSD or Windows
- Built for teams - Built from our experience working in distributed development teams
- Full autonomy - No network connectivity required, unless you want it
By default your credentials are encrypted with GPG and versioned in git. This can be customized easily. The primary interface is the command line, making it an excellent choice for CLI fans, CI/CD systems or anything you can hook it up with. Gopass can also integrate with your browser so you can largely avoid the command line - if you want.
gopass
can operate without any dependencies but most users will use it with gpg
and git
.
An external editor is required to use gopass edit
.
Homebrew (Linux/MacOS)
brew install gopass
Warning: Do not install the gopass
package for the official repositories. That is a completely different project that has no relation to us.
$ curl https://packages.gopass.pw/repos/gopass/gopass-archive-keyring.gpg | sudo tee /usr/share/keyrings/gopass-archive-keyring.gpg >/dev/null
$ cat << EOF | sudo tee /etc/apt/sources.list.d/gopass.sources
Types: deb
URIs: https://packages.gopass.pw/repos/gopass
Suites: stable
Architectures: all amd64 arm64 armhf
Components: main
Signed-By: /usr/share/keyrings/gopass-archive-keyring.gpg
EOF
$ sudo apt update
$ sudo apt install gopass gopass-archive-keyring
dnf install gopass
Note: You might need to run dnf copr enable daftaupe/gopass
first.
pacman -S gopass
# Chocolatey
choco install gpg4win
choco install gopass
# Alternatively
scoop install gopass
cd /usr/ports/security/gopass
make install
apk add gopass
Please see docs/setup.md for other options.
go install github.com/gopasspw/gopass@latest
Note: latest
is not a stable release. We recommend to only use released versions.
Download the latest release and add the binary to your PATH.
Initialize a new gopass
configuration:
$ gopass setup
__ _ _ _ _ _ ___ ___
/'_ '\ /'_'\ ( '_'\ /'_' )/',__)/',__)
( (_) |( (_) )| (_) )( (_| |\__, \\__, \
'\__ |'\___/'| ,__/''\__,_)(____/(____/
( )_) | | |
\___/' (_)
๐ Welcome to gopass!
๐ Initializing a new password store ...
๐ Configuring your password store ...
๐ฎ Please select a private key for encrypting secrets:
[0] gpg - 0xFEEDBEEF - John Doe <[email protected]>
Please enter the number of a key (0-12, [q]uit) (q to abort) [0]: 0
โ Do you want to add a git remote? [y/N/q]: y
Configuring the git remote ...
Please enter the git remote for your shared store []: [email protected]:john/passwords.git
โ
Configured
By default gopass setup
will use gpg
encryption and git
storage. This will create a new password store in $HOME/.local/share/gopass/stores/root
and a configuration in $HOME/.config/gopass/config
using gpg
encryption and git
for versioned storage. Users can override these with e.g. --crypto=age
to use age
encryption instead or opt out of using a versioned store with --storage=fs
.
An existing store can be cloned with e.g. gopass clone [email protected]:john/passwords.git
.
Create a new secret:
$ gopass create
List all existing secrets:
$ gopass ls
Copy an existing password to the clipboard:
$ gopass show -c foo
Remove an existing secret:
$ gopass rm foo
Other examples:
# Command structure
gopass [<command>] [options] [args]
# Shortcut for gopass show [<key>]
gopass [<key>]
# Enter the gopass REPL
gopass
# Find all entries matching the search string
gopass find github
# List your store
gopass ls
# List all mounts
gopass mounts
# List all recipients
gopass recipients
# Sync with all remotes
gopass sync
# Setup a new store
gopass setup
Please ask on Slack.
We welcome any contributions. Please see CONTRIBUTING.md for more information.
gopass is licensed under the terms of the MIT license. You can find the complete text in LICENSE
.
Please refer to our Contributors page for a complete list of our contributors.