Passwörter mit dem Passwort-Manager pass verwalten
Zur sicheren Verwaltung von Passwörtern hat sich der Einsatz von Passwort-Managern etabliert. Diese verschlüsseln die Passwörter mit einem sogenannten Master-Passwort und ermöglichen einem die sichere Generierung, Speicherung sowie Abfrage der eigenen Passwörter. Die Passwörter werden dabei entweder lokal (z.B. bei KeePass) oder aber in der Cloud (z.B. bei LastPass) abgespeichert.
Ich selbst verwalte seit einigen Jahren meine Passwörter mit pass. Warum ich mich für pass entschieden habe und wie ihr damit eure Passwörter auf einfache Art verwalten könnt, erfahrt ihr in diesem Beitrag.
Warum pass?
Als ich mich damals auf die Suche nach einem Passwort-Manager gemacht habe, waren mir folgende Apekte bei der Auswahl wichtig:
- Meine Passwörter sollen bei mir lokal auf dem Rechner gespeichert sein.
- Bei dem Passwort-Manager soll es sich um Open-Source-Software handeln.
- Es soll ein sicherer/offener Verschlüsselungsalgorithmus zum Verschlüsseln der Passwörter zum Einsatz kommen.
- Der Passwort-Manager soll im besten Fall systemunabhängig sein.
- Das für die Speicherung der Passwörter verwendete Datei-/Datenbankformat soll unabhängig vom verwendeten Passwort-Manager sein, falls dieser nicht systemunabhängig verwendbar ist.
- Es soll ein einfacher Passwort-Manager sein, der ohne zusätzlichen Schnickschnack und "Fancy-UI" daherkommt. Bei einer Software, welcher ich meine Passwörter anvertraue, ist mein Motto "weniger ist mehr". Sprich, je weniger (unnötige) Funktionen desto besser. Je umfangreicher und komplexer, desto höher die Wahrscheinlichkeit, dass die Software eventuell sicherheitsrelevante Bugs enthält.
pass - the standard unix password manager
Bei pass handelt es sich um einen Passwort-Manager der per Kommandozeile bedient wird.
Prinzipiell ist pass nur ein einfaches Shell-Skript, dass das bewährte GnuPG zum Verschlüsseln der Passwörter verwendet.
Jedes einzelne Passwort wird in einer mit eurem GPG-Schlüssel verschlüsselten Datei gespeichert. Die Datei kann weitere Informationen, wie z.B. Benutzername, URL usw. enthalten. Ein spezielles Format ist nicht vorgegeben. In der ersten Zeile sollte allerdings immer das Passwort für sich alleine stehen. Die einzelnen Passwort-Dateien können zudem durch Unterteilung in verschiedene Verzeichnisse strukturiert abgespeichert werden.
Installation & Initialisierung des Passwort-Speichers
Unter Ubuntu findet sich pass in den offiziellen Paketquellen und kann somit ohne Weiteres per apt
installiert werden:
Verwendet ihr ein anderes Betriebssystem, so verweise ich euch auf die Dokumentation von pass für nähere Informationen.
Nach der Installation steht euch der Befehl pass
zur Verfügung, mit dem ihr nun den Passwort-Speicher unter Angabe eurer GPG-Schlüssel-ID eures GPG-Schlüssels initialisiert:
Die Konsoleausgabe zeigt es bereits: es wurde nun ein Verzeichnis namens .password-store
in eurem home
-Verzeichnis angelegt. In diesem Verzeichnis werden eure Passwörter, also die verschlüsselten Dateien, die eure Passwörter enthalten, zukünftig gespeichert.
Grundlegende Anwendung
Im Folgenden zeige ich euch die Grundlagen zur Verwaltung von Passwörtern mit pass.
Aufbau einer Passwort-Datei
Wie bereits oben erwähnt, gibt es keine Formatvorgabe für die Passwort-Datei. An erster Stelle sollte allerdings immer das Passwort ohne Zusätze eingefügt werden. Im Folgenden ein Beispiel, wie eine solche Passwort-Datei aussehen kann:
Passwörter einfügen, bearbeiten und abfragen
Um ein bestehendes Passwort zu speichern, dient das insert
-Argument:
Nach Eingabe des Passworts wird dieses in der mit eurem GPG-Schlüssel verschlüsselten Datei unter .password-store/Online-Shops/Amazon.gpg
gespeichert.
Anschließend könntet ihr die Datei nochmal bearbeiten um weitere Informationen, wie z.B. den Benutzernamen, hinzuzufügen. Dazu gibt es das Argument edit
, welches die entsprechende Datei in eurem Standard-Konsolen-Editor öffnet. Da die Datei aber verschlüsselt ist, werdet ihr nun nach der Passphrase eures GPG-Schlüssels gefragt. Erst nach erfolgreicher Eingabe der Passphrase wird die Datei entschlüsselt und kann bearbeitet werden.
Nachdem ihr die Änderungen gespeichert habt, könnt ihr euch den Inhalt mittels show
in der Konsole ausgeben lassen:
Um das Passwort in die Zwischenablage zu kopieren, kann folgender Befehl verwendet werden:
Das Passwort verbleibt standardmäßig nur 45 Sekunden in der Zwischenablage und wird danach automatisch gelöscht. Die Zeit von 45 Sekunden kann bei Bedarf angepasst werden - siehe unteren Abschnitt "Fortgeschrittene Anwendung".
Um direkt bei der Speicherung des Passworts weitere Informationen anzugeben, kann insert
mit der Multiline-Option eingesetzt werden:
Um einen Überblick über alle gespeicherten Passwörter bzw. die entsprechenden Dateien zu erhalten, kann das Argument ls
zum Einsatz kommen:
Passwörter generieren
Falls ihr euch nicht selber Passwörter ausdenken möchtet, bietet pass die Möglichkeit mittels generate
welche zu generieren. Hierbei könnt ihr auch optional direkt die Länge des zu generierenden Passworts angeben.
Passwörter löschen
Zum Löschen einer Passwort-Datei reicht folgender Befehl:
Backup des Passwort-Speichers
Unabhängig davon wie eure persönliche Backup-Strategie aussieht, müsst ihr einfach nur das Passwort-Speicher-Verzeichnis .password-store
sichern.
Fortgeschrittene Anwendung
Einstellungen via Environment-Variablen
Es besteht die Möglichkeit über Environment-Variablen (Umgebungsvariablen) einige Standard-Einstellungen von pass zu überschreiben. Ich habe beispielsweise die Zeit, wie lange ein Passwort in der Zwischenablage verweilt von 45s auf 20s angepasst. Außerdem habe ich den Verzeichnisnamen des Passwort-Speichers geändert. Hierfür habe ich in ~/.profile
folgende zwei Zeilen hinzugefügt:
Weitere mögliche Einstellungen findet ihr in der man-Hilfeseite oder hier.
Erweiterungen & UI-Clients
Für pass gibt es einige durch die Community bereitgestellte Erweiterungen und UI-Clients, um per grafischer Bedienoberfläche mit pass zu arbeiten. Eine Liste aller Erweiterungen und UI-Clients findet ihr auf der pass-Website.
Migration
Ebenso durch die Community bereitgestellt, gibt es diverse Skripte zum Migrieren von Daten, die mit anderen Passwort-Managern gespeichert wurden und nun ins pass-Format umgewandelt werden sollen.
Fazit
Wer einen einfachen und sicheren Passwort-Manager sucht und sowieso bereits mit GPG arbeitet, ist mit pass gut bedient. pass erfindet das Rad nicht neu, sondern greift auf bewährte Verschlüsselungstechnik (GnuPG) zur sicheren Verwaltung von Passwörtern zurück. Gewöhnungsbedürftig ist für einige eventuell die Handhabung per Kommandozeile, aber wie im Beitrag erwähnt, gibt es bei Bedarf auch diverse UI-Clients, um pass auch mit einer grafischen Bedienoberfläche benutzen zu können.