Passwort Manager

The Standard Unix Password Manager: Pass

Passwortverwaltung sollte einfach sein und der Unix-Philosophie folgen.

Mit pass als Passwort Manager lebt jedes Passwort in einer gpg-verschlüsselten Datei, deren Dateiname der Titel der Website oder Ressource ist, die das Passwort benötigt. Diese verschlüsselten Dateien können in sinnvollen Ordnerhierarchien organisiert, von Computer zu Computer kopiert und im Allgemeinen mit Hilfe von Standard-Befehlszeilenprogrammen zur Dateiverwaltung bearbeitet werden.

Weitere Informationen zu pass gibt es auf passwordstore.org.

apt update
apt install pass qtpass

GnuPG

Pass verwendet gpg als Methode zur Verschlüsselung. GPG funktioniert normalerweise mit asymetrischer Kryptografie. Es gibt also öffentliche und private Schlüssel. Die öffentlichen Schlüssel werden zum verschlüsseln genutzt und nur die dazu passenden privaten Schlüssel können die Nachricht wieder entschlüsseln.

Wie man einen GPG Schlüssel erstellt ist auf vielen Seiten schon gut erklärt:

# generate key
gpg2 --full-gen-key 

# list secret keys
gpg2 --list-secret-keys

Um den Passwort Manager zu iniziieren, verwendet man den Befehl:

pass init "My password store" my-gpg-id-or-gpg-mail-address

Mehrere Benutzer

In der Datei .gpg-id (~/.passwordstore/.gpg-id) stehen alle UIDs, die auf die hier gespeicherten Passwörter zugriff haben sollen. Dies könnte so aussehen:

alice@acme.org
jane@acme.org
bob@acme.org
212FC4D1C64D1DE9FF4D6DD35215C3441797AB2B

Wichtig hierbei ist, dass die öffentlichen GPG Schlüssel der Personen lokal verfügbar sind und als vertrauenswürdig signiert wurden. Das geht mit einem grafischen Client (z.B. gpa or seahorse) oder per Komandozeile.

$ gpg --edit-key jane@acme.org

gpg> lsign
gpg> y
gpg> save

Nach dem ändern der Liste muss pass die keys neu verschlüsseln um den neuen usern auch zugriff zu geben:

pass init -p $(cat ~/.password-store/.gpg-id)

Protipp:

Es gibt womöglich Passwörter, die du auf dem Handy haben willst. Aber du willst deinen überall verwendeten GPG Key nicht aufs Handy kopieren? Mach dir einen zweiten nur fürs Handy! Pass gibt es auch für mobile Plattformen!

browser support

Es gibt für alle gängigen Browsers passende Plugins. Zum Beispiel. passff für Firefox.

synchronisierung

pass unterstützt die integration mit git. So können Passwörter nicht nur lokal gespeichert werden, sondern auch über git auf jede beliebige Plattform synchronisiert werden. Da die Passwörter verschlüsselt gespeichert sind, ist es auch kein großes Risiko seine Passwörter an anderen orten zu speichern, als an seinem eigenen Computer.

Wer (aus guten gründen) nicht github.com oder gitlab.com als git Server verwenden möchte, kann auch den von der see-base gehosteten git server verwenden: gitea.see-base.de

zx2c4@laptop ~ $ pass git init
Initialized empty Git repository in /home/zx2c4/.password-store/.git/
zx2c4@laptop ~ $ pass git remote add origin kexec.com:pass-store

Protipp:

Es können auch mehrere Repos verwendet werden. Hierbei ist zwar etwas handarbeit beim synchronisieren fällig. Hierfür einfach nicht ~/.password-store/ als git Repo einrichten sondern die Unterordner. ZB. ~/.password-store/foo/