Passwörter verwalten mit Gpgpwd

Aus LinuxUser 05/2015

Passwörter verwalten mit Gpgpwd

© Dmytro Demianenko, 123RF

Kleiner Tresor

Das Kommandozeilenprogramm Gpgpwd verwaltet eine Liste mit Passwörtern und den zugehörigen Benutzernamen. Zudem schlägt es automatisch sichere Passwörter vor.

Das neue Elektronikspielzeug bestellt man auf Amazon, die Freunde warten bei Facebook, während ein Google-Kalender Termine abstimmt. Diese und viele weitere Internetdienste setzen alle eine Anmeldung mit Benutzernamen und Passwort voraus. Die Passwörter sollten nicht nur möglichst lang und kryptisch ausfallen, für jeden Dienst empfiehlt sich auch ein anderer Benutzername. Das erschwert Angreifern die Arbeit, führt aber auch dazu, dass man sich zahlreiche Anmeldedaten einprägen muss. Wechselt man auch noch regelmäßig die Passwörter, kommt man selbst als Gedächtnisathlet in Bedrängnis.

Hier verspricht die Passwortverwaltung Gpgpwd [1] Abhilfe: Sie merkt sich für Sie alle Passwörter und die zugehörigen Benutzernamen. Registrieren Sie sich bei einem neuen Dienst, dann müssen Sie sich noch nicht einmal ein neues Passwort ausdenken: Gpgpwd schlägt automatisch ein per Zufall erzeugtes, sicheres Exemplar vor. Sämtliche Anmeldedaten speichert es in einer verschlüsselten Datei. Somit bleiben Ihre Anmeldedaten auch dann geheim, wenn jemand die Datei erbeutet oder gar den kompletten Rechner stiehlt.

Tresoreinbau

Um Gpgpwd in Betrieb zu nehmen, installieren Sie über den Paketmanager eine Perl-Umgebung mindestens in der Version 5.10, die Perl-Module JSON und Try::Tiny sowie die Programme GnuPG, Git und Xclip.

Perl liegt bei den meisten Distributionen standardmäßig auf der Festplatte. Unter Ubuntu spielt der Befehl aus Listing 1 alle benötigten Pakete ein. Laden Sie anschließend das Archiv mit der aktuellen Version von Gpgpwd herunter [2] und entpacken Sie es in einen beliebigen Ordner auf der Festplatte. Wechseln Sie im Terminal in das dabei neu entstandene Verzeichnis und rufen Sie dort sudo make install auf. Damit können ab sofort alle Benutzer des Systems Gpgpwd verwenden.

Listing 1

$ sudo apt-get install libjson-perl libtry-tiny-perl gnupg xclip git

Schlüsselschmiede

Die Datei mit den Passwörtern verschlüsselt Gpgpwd nicht selbst, sondern delegiert diese Arbeit an das Programm GnuPG. Ähnlich wie bei einem echten Vorhängeschloss verwendet GnuPG dabei einen Schlüssel. Diesen müssen Sie zunächst einmal mit dem Befehl gpg --gen-key anfertigen, der einige Einstellungen abfragt.

Die erste Frage beantworten Sie mit der Eingabetaste, bei der zweiten tippen Sie 4096 ein, bei der dritten übernehmen Sie die Voreinstellung wieder mit der Eingabetaste, während Sie die vierte mit j bestätigen (Abbildung 1). Geben Sie Ihren vollständigen Namen und dann Ihre E-Mail-Adresse ein. Den Kommentar bestätigen Sie mit der Eingabetaste und tippen schließlich f für “fertig”.

Abbildung 1: Mit dem hier erzeugten Schlüssel chiffriert GnuPG später die Datei mit den Passwörtern. Die <code srcset=

Passphrase ist dabei das Passwort, mit dem Sie die Chiffrierung und Dechiffrierung von GnuPG legitimieren.” width=”243″ height=”300″ /> Abbildung 1: Mit dem hier erzeugten Schlüssel chiffriert GnuPG später die Datei mit den Passwörtern. Die Passphrase ist dabei das Passwort, mit dem Sie die Chiffrierung und Dechiffrierung von GnuPG legitimieren.

Den Schlüssel stecken Gpgpwd und GnuPG erst dann ins Vorhängeschloss der Datei, wenn Sie ihnen ein zuvor vereinbartes Passwort nennen. Nur wer dieses Passwort kennt, kann die Datei aufschließen und die darin abgelegten Anmeldedaten einsehen beziehungsweise verändern. Daher spricht man auch von einem Master-Passwort. Es ist das einzige Passwort, das Sie sich zukünftig merken müssen. Da es aber auch den Zugriff auf Ihre anderen Passwörter ermöglicht, sollten Sie es weise und möglichst kryptisch wählen. Darüber hinaus darf es unter keinen Umständen in die Hände Dritter gelangen.

Überlegen Sie sich ein geeignetes Master-Passwort und geben Sie es ein. Unter Umständen geschieht dies in einem neuen Fenster, das unter Ubuntu gerne rechts oben in der Ecke erscheint. Um Tippfehler auszuschließen, müssen Sie das Passwort noch einmal eingeben. Abschließend benötigt GnuPG noch ein paar Zufallszahlen. Sie können deren Sammeln beschleunigen, indem Sie eine Weile mit Ihrem System normal weiterarbeiten.

Haben Sie mit GnuPG [3] schon zuvor gearbeitet und weitere Schlüssel erzeugt, dürfen Sie gleich nicht einfach den passenden auswählen: Gpgpwd weist stattdessen GnuPG stupide an, die Passwort-Datei mit dem Standardschlüssel zu chiffrieren. Sie müssen daher den neu erstellten Schlüssel noch explizit in der Datei ~/.gnupg/gpg.conf zum Standard küren. Die dazu notwendigen Schlüssel-IDs zeigt das Kommando gpg --list-keys an.

Eingepackt

Damit kann Gpgpwd endlich Ihre Passwörter verwalten. Um die Zugangsdaten beispielsweise für Amazon.de zu speichern, tippen Sie gpgpwd set amazon.de. Wie in Abbildung 2 schlägt Gpgpwd jetzt ein per Zufall erzeugtes Passwort vor. Sofern Sie sich gerade erst bei Amazon registrieren, können Sie dieses Passwort verwenden; mit einem Druck auf die Eingabetaste speichert Gpgpwd es direkt ab.

Besitzen Sie bei Amazon bereits ein Benutzerkonto, tippen Sie stattdessen einfach das derzeit gültige Passwort ein. In jedem Fall möchte Gpgpwd noch den Benutzernamen wissen. Im Beispiel wäre das die E-Mail-Adresse, mit der Sie sich bei Amazon registriert haben. Abschließend müssen Sie noch das Master-Passwort preisgeben.

Abbildung 2: Hier merkt sich Gpgpwd das Passwort <code srcset=

/5@dI/rQL7W~VH und den Benutzernamen tim@example.com.” width=”300″ height=”184″ /> Abbildung 2: Hier merkt sich Gpgpwd das Passwort /5@dI/rQL7W~VH und den Benutzernamen tim@example.com.

Gpgpwd speichert die Benutzernamen und Passwörter in der Datei ~/.config/gpgpwd.db, die GnuPG nach jeder Aktion mit dem zuvor generierten Schlüssel chiffriert. Sagt Ihnen dieser Speicherort nicht zu, geben Sie mit dem Parameter -p einen beliebigen anderen an.

Ausgepackt

Um bei Amazon etwas zu bestellen, rufen Sie ab jetzt mit gpgpwd get den passenden Benutzernamen und das zugehörige Passwort ab. Nach dem Absenden des Kommandos müssen Sie wieder das Master-Passwort eintippen. Wie Abbildung 2 belegt, verzeiht das Werkzeug dabei sogar Tippfehler. Das gefundene Passwort kopiert Gpgpwd zudem automatisch im Klartext in die Zwischenablage (Abbildung 3). Um dies zu unterbinden, hängen Sie dem entsprechenden Gpgpwd-Befehl noch ein -C an.

Abbildung 3: Das Passwort müssen Sie nicht abtippen, sondern lediglich über die Zwischenablage in das entsprechende Feld einfügen – entweder wie hier über das Kontextmenü oder via <code srcset=

Strg+V.” width=”300″ height=”230″ /> Abbildung 3: Das Passwort müssen Sie nicht abtippen, sondern lediglich über die Zwischenablage in das entsprechende Feld einfügen – entweder wie hier über das Kontextmenü oder via Strg+V.

Nach dem gleichen Prinzip speichern Sie die Anmeldedaten für beliebige weitere Dienste. Anstelle des Domainnamens dürfen Sie auch einen beliebigen anderen Bezeichner verwenden. Der Befehl gpgpwd set tresor würde etwa ein Passwort unter dem Namen tresor speichern. Mit rename ändern Sie gegebenenfalls nachträglich den Bezeichner und korrigieren auf diese Weise beispielsweise amzn.de in amazon.de:

$ gpgpwd rename amzn.de amazon.de

Um ein Passwort zu löschen, verwenden Sie den Befehl remove. Mit gpgpwd remove amazon.de vergisst das Werkzeug beispielsweise die Anmeldedaten für Amazon. Sobald Sie das letzte Passwort löschen, beschwert sich GnuPG, dass die Datei leer sei. Diese Meldung dürfen Sie getrost ignorieren. Das Passwort für Amazon ändern Sie, indem Sie es einfach mit gpgpwd set amazon.de neu setzen beziehungsweise überschreiben.

Fazit

Dank der nützlichen kleinen Passwortverwaltung Gpgpwd müssen Sie Anmeldedaten nicht mehr in den kleinen grauen Zellen oder auf Zetteln in der Schublade verstauen. Bei einem Festplattendefekt oder einem Diebstahl geht die Liste mit den Passwörtern jedoch verloren. Zwar kann dank Verschlüsselung ein Langfinger nicht an die gespeicherten Passwörter gelangen, Sie selbst bleiben dann jedoch erst einmal von den gespeicherten Konten ausgesperrt.

Sie sollten daher regelmäßig ein Backup der Passwortdatei und der GnuPG-Schlüssel (im Verzeichnis ~/.gnupg) anlegen. In wichtigen Fällen sollten Sie zudem die Passwörter auf einem Zettel notieren und in einem Bankschließfach deponieren. Des Weiteren läuft Gpgpwd nur auf Linux, ein Abgleich der Passwortlisten auf andere Rechner gelingt zudem nur umständlich über Git-Repositories (siehe Kasten “Git”). 

Git

Kenner der Versionsverwaltung Git können mit ihr die gespeicherten Passwörter auf mehreren Rechnern synchronisieren. Dazu stecken Sie zunächst mit dem Befehl gpgpwd git init die Passwort-Datei in ein neues Git-Repository. Bevor gpgpwd zukünftig Änderungen an der Datei vornimmt, setzt es im Hintergrund erst ein git pull ab, schreibt dann die Änderungen und führt abschließend ein git commit gefolgt von git push aus. Über die Befehle gpgpwd git pull, gpgpwd git fetch und gpgpwd git push gleichen Sie die Git-Datei mit anderen Git-Repositories ab. Analog klont gpgpwd git clone git://example.com/gpgpwd/ das unter git://example.com/gpgpwd/ lagernde gpgpwd-Repository.

Infos

[1] Gpgpwd: http://random.zerodogg.org/gpgpwd/

[2] Gpgpwd herunterladen: http://random.zerodogg.org/gpgpwd/download/

[3] E-Mails mit GnuPG verschlüsseln: Peter Kreußel, “Ausgezapft”, LU 09/2013, S. 36, https://www.linux-community.de/30105

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 05/2015 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben