Wer einen Passwort Manager braucht, kann pass verwenden. Den gibt es kostenlos für alle Betriebssysteme. Die Passwörter werden alle mit gpg Verschlüsselt und liegen in ~/.password-store so das sie leicht verwaltet werden können. Die Passwörter können mit unix shell Kommandos so leicht verwaltet werden. Auch eine bash Auto-Vervollständigung gibt es. Auch eine Git Integration ist möglich.
Wenn noch kein gpg Key auf dem Raspberry Pi angelegt wurde oder auch sonst noch keiner vorhanden ist, diesen einmal mit
1 |
gpg --gen-key |
erzeugen. Es muss nur der Name und die E-Mail Adresse angegeben werden, nach einem O muss man ein paar Minuten warten, bis der Key erzeugt wurde:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
gpg (GnuPG) 2.1.18; Copyright (C) 2017 Free Software Foundation, Inc. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Note: Use "gpg --full-generate-key" for a full featured key generation dialog. GnuPG needs to construct a user ID to identify your key. Real name: Thomas Wenzlaff Email address: info-anfrage@wenzlaff.de You selected this USER-ID: "Thomas Wenzlaff <info-anfrage@wenzlaff.de>" Change (N)ame, (E)mail, or (O)kay/(Q)uit? O We need to generate a lot of random bytes. It is a good idea to perform some other action (type on the keyboard, move the mouse, utilize the disks) during the prime generation; this gives the random number generator a better chance to gain enough entropy. // Key wurde erzeugt: gpg: key 38277E44AC49C269 marked as ultimately trusted gpg: directory '/home/pi/.gnupg/openpgp-revocs.d' created gpg: revocation certificate stored as '/home/pi/.gnupg/openpgp-revocs.d/xxxxxxxxxxxxx.rev' public and secret key created and signed. pub rsa2048 2017-12-26 [SC] [expires: 2019-12-26] E07030F64964A8A03AFE47AB38277E44AC49C269 E07030F64964A8A03AFE47AB38277E44AC49C269 uid Thomas Wenzlaff <info-anfrage@wenzlaff.de> sub rsa2048 2017-12-26 [E] [expires: 2019-12-26] |
Eine Liste aller Key kann wie folgt angezeigt werden:
1 2 3 4 5 6 7 8 9 10 11 12 |
gpg --list-keys // Ergebnis: gpg: checking the trustdb gpg: marginals needed: 3 completes needed: 1 trust model: pgp gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u gpg: next trustdb check due at 2019-12-26 /home/pi/.gnupg/pubring.kbx --------------------------- pub rsa2048 2017-12-26 [SC] [expires: 2019-12-26] E07030F64964A8A03AFE47AB38277E44AC49C269 uid [ultimate] Thomas Wenzlaff <info-anfrage@wenzlaff.de> sub rsa2048 2017-12-26 [E] [expires: 2019-12-26] |
Nun updaten wir den Pi und installieren Pass:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
sudo apt-get update sudo apt-get upgrade sudo apt-get install pass // Checken ob pass läuft mit pass version // Ausgabe ============================================ = pass: the standard unix password manager = = = = v1.6.5 = = = = Jason A. Donenfeld = = Jason@zx2c4.com = = = = http://www.passwordstore.org/ = ============================================ |
Nun muss einmalig der eben erzeugte gpg User (die ID des Keys) mit Pass verknüpft werden:
1 |
pass init "Thomas Wenzlaff <info-anfrage@wenzlaff.de>" |
Nun kann ein Passwort-Key neu erzeugt werden mit:
1 2 3 4 |
pass insert NeuerEintrag/fürBlog mkdir: Verzeichnis '/home/pi/.password-store/NeuerEintrag' angelegt Enter password for NeuerEintrag/fürBlog: Retype password for NeuerEintrag/fürBlog: |
Abfrage geht dann mit:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
pass NeuerEintrag/fürBlog // dann kommt der Dialog lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x Please enter the passphrase to unlock the OpenPGP secret key: x x "Thomas Wenzlaff <info-anfrage@wenzlaff.de>" x x 2048-bit RSA key, ID 4D50A95A97DDF8C1, x x created 2017-12-26 (main key ID 38277E44AC49C269). x x x x x x Passphrase: __________________________________________________ x x x x <OK> <Cancel> x mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj // eingabe des gpg Key und Enter, das Passwort wird dann im Klartext ausgegeben |
Mit pass kann der ganze Store gelistet werden:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
pass Password Store ├── Generierte │ └── Passwörter ├── Kleinhirn.eu │ └── Internet ├── NeuerEintrag │ └── fürBlog ├── Raspberry │ ├── Root │ └── user.pi └── Wenzlaff.de └── Internet |
Nun löschen wir einen Eintrag (Verzeichnis) mit rm :
1 2 3 4 |
pass rm -r NeuerEintrag/ Are you sure you would like to delete NeuerEintrag/? [y/N] y '/home/pi/.password-store/NeuerEintrag/fürBlog.gpg' wurde entfernt Verzeichnis '/home/pi/.password-store/NeuerEintrag' wurde entfernt |
Es können auch Passwörter generiert werden z.B. ein 30 Zeichen langes unter Kleinhirn.eu:
1 2 3 |
pass generate Kleinhirn.eu/Zufallspasswort 30 The generated password for Kleinhirn.eu/Zufallspasswort is: kkhlyJl|yUq&7^Zg8mtP{mw'CjG<:O |
Weitere Infos auf der man pass Page oder hier.