Ich möchte kurz beschreiben, wie man seine Datenbank von KeePass2 unter Linux automatisch beim Login entsperren lassen kann. Die Anleitung, wie man KeePass installiert und einrichtet, findet sich auch hier im Blog.

Bei jedem Login KeePass eigens zu starten, die Datenbank mit den Passwörtern zu öffnen und das Haupt-Passwort einzugeben kann ziemlich nervig sein. Passwörter abzuspeichern ist aber in den meisten Fällen eine schlechte Idee, solange sie nicht besonders geschützt (also verschlüsselt) sind. Um beim Login automatisch KeePass zu entsperren, kann man aber auch das Kennwort dafür im Schlüsselbund des Systems hinterlegen. Dieser ist wiederum mit dem Login-Kennwort verschlüsselt. Die Einrichtung bleibt also relativ sicher, ein komplexes Login-Kennwort vorausgesetzt.

Dazu braucht man einige Scripte, in denen natürlich Pfade anzupassen sind (alles mit florian).

[Desktop Entry]
Name=KeePass
GenericName=Passwortspeicher
Comment=Autostart KeePass with password from keyring
Exec=/home/florian/.bin/keepass.sh
Terminal=false
Type=Application
Icon=keepassx
Categories=Network;FileTransfer;
StartupNotify=false

#/bin/bash

# start up keepass with passwort from gnome keyring
/home/florian/.mutt/scripts/kr.py get keepass|keepass2 -pw-stdin /home/florian/Keepass/KP.kdbx

Das Shellscript kommt in ein Verzeichnis freier Wahl und muss mit chmod +x keepass.sh ausführbar gemacht werden, die .desktop-Datei kommt nach ~/.config/autostart, wo sie von den meisten Desktop-Umgebungen automatisch beim Login ausgeführt wird.

Um Passwörter aus dem Keyring von GNOME/Unity zu holen, braucht man noch eine kleine Hilfsanwendung. Wer meine Anleitung zum Betrieb von mutt befolgt hat, hat es schon, alle anderen finden das Script auf github.

Das Passwort für die KeePass-Datenbank lässt sich dort wie folgt hinterlegen:

/home/florian/.mutt/scripts/kr.py add keepass

Beim nächsten Login öffnet sich KeePass2 dann automatisch, mit dem Kennwort entsperrt, was im Schlüsselring des Systems hinterlegt wurde.