Pass der GPGbasierte Passwortsafe

Für mich wurde nun ein Schritt in die richtige Art des Passwortmanagements gemacht. Es ist mit pass ein Passwortmanager erschienen, welcher sich selbst als standard unix password manager bezeichnet. Mit der Untersützung von pwgen, gpg und git bietet er nicht nur Sicherheit, sondern auch als eine Besonderheit die Versionierung.

Das Werkzeug auf welches ich gewartet habe

Ich nutze für mich zwei Möglichkeiten aus einer Vielzahl zur Verfügung stehenden Mitteln für die Sicherheit und das Management meiner Passwörter.
Einmal benutze ich die Tabula recta und auf der anderen Seite nehme ich GPG. Die Lösung mit GPG und dem ent- und verschlüsseln der Passworttextdatei ist wirklich, trotz eines Scriptes, ein absoluter Graus.

Eine Idee, welche ich immer wieder selbst erweitert hatte, aber mir langsam auch den letzten Nerv raubte. Denn nicht alles kann ich mit der Tabula recta lösen, sie besitzt das Manko, dass ich mir vorgschriebenen Passwörter dort nicht einpflegen kann.

Das Programm pass von Jason A. Donenfeld schafft hier Abhilfe.

Pass der GPGbasierte Passwortsafe

Pass bietet einen mit einem GPG-Schlüssel verschlüsselten Passwortsafe.
Es nutzt pwgen um Passwörter zu erstellen und überwacht Änderungen an den Passwörtern per git.

pass speichert alle Passwörter mit Hilfe von GPG innerhalb von ~/.password-store und verfolgt auf Wunsch, wenn nach der Installation angegeben, die Änderungen per git.

Das Shellscript bietet nicht nur die logischen Operationen hinzufügen, bearbeiten, löschen und generieren von Passwörtern, sondern kann diese auch gleich, zeitgebunden, in die Zwischenablage für die weitere Benutzung kopieren.

Die Informationen können innerhalb von pass in einer Ordnerhierachie abgelegt werden, um einen besseren Überblick zu gewähren. Wobei man beachten sollte, dass alle Verzeichnisse/Dateien mit dem bei dem ersten Start angegebenen Schlüssel chiffriert werden.

Man kann einen schon vorhandenen Schlüssel nutzen, oder extra einen neuen Schlüssel für pass generieren, die geschieht mit gpg.

Beispiele

Ich habe die Beispiele aus Datenschutzgründen der Homepage entnommen

Alle gespeicherten Passwörter innerhalb von pass anzeigen:

zx2c4@laptop ~ $ pass
Password Store
├── Business
│   ├── some-silly-business-site.com
│   └── another-business-site.net
├── Email
│   ├── donenfeld.com
│   └── zx2c4.com
└── France
    ├── bank
    ├── freebox
    └── mobilephone

Passwort aus der Kategorie Email von zx2c4.com anzeigen:

zx2c4@laptop ~ $ pass Email/zx2c4.com
sup3rh4x3rizmynam3

Passwort aus der Kategorie Email von zx2c4.com in die Zwischenablage kopieren

zx2c4@laptop ~ $ pass -c Email/zx2c4.com
Copied Email/jason@zx2c4.com to clipboard. Will clear in 45 seconds.

Existierendes Passwort per insert in Kategorie Business für cheese-whiz-factory einpflegen:

zx2c4@laptop ~ $ pass insert Business/cheese-whiz-factory
Enter password for Business/cheese-whiz-factory: omg so much cheese what am i gonna do

Passwort per pwgen in Kategorie Email für asondonenfeld.com generieren und in der Kategorie Business für cheese-whiz-factory das Passwort wieder löschen:

zx2c4@laptop ~ $ pass generate Email/jasondonenfeld.com 15
The generated password to Email/jasondonenfeld.com is:
$(-QF&Q=IN2nFBx
zx2c4@laptop ~ $ pass rm Business/cheese-whiz-factory
rm: remove regular file ‘/home/zx2c4/.password-store/Business/cheese-whiz-factory.gpg’? y
removed ‘/home/zx2c4/.password-store/Business/cheese-whiz-factory.gpg’

und so weiter und so fort.

If the password store is a git repository, since each manipulation creates a git commit, you can synchronize the password store using pass git push and pass git pull, which call git-push or git-pull on the store.

Passwörter aus vorhandenen Programmen importieren

Es lassen sich Passwörter bis jetzt per Script aus folgenden Programmen importieren:

  • KeepassX
  • Keepass2
  • Figaro’s Password Manager
  • Lastpass
  • Ked Password Manager
  • Revelation Password Manager
  • Password Gorilla

Installation und setup

pass ist leider erst in Debian Jessie als Paket erhältlich und muss für Wheezy selbst kompiliert werden. Es kann dafür per git geclont, oder als tarball heruntergeladen werden.
Bei FreeBSD ist es per Portmaster erhältlich.

Vorab sollte man sich auf jeden Fall noch die ID des zu nutzenden GPG-SChlüssel anzeigen lassen (gpg –list-secret-keys), oder einen neuen Schlüssel generieren (gpg –gen-key).

Pass wird nach der Installation per pass init „GPG-SchlüsselID“ initialisiert.

Git muss nach dem Setup per pass git init initialisiert werden.

Weitere Auskunft über pass und seine Benutzung gibt die Homepage von Jason A. Donenfeld

One Comment

  1. Wow! Danke für diesen Tip! Werde ich dann mal an meiner Arch-Kiste ausprobieren/einrichten.

    Gekommen bin ich übrigens über die OSBN-Linkschleuder… :-)

Schreibe einen Kommentar

You have to agree to the comment policy.