SDDM/KWallet

Aus Foxwiki
Version vom 7. Juni 2022, 12:06 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „Kategorie:Linux:Plasma5“ durch „Kategorie:Plasma5“)

KWallet beim Login entsperren

Voraussetzungen

  • Benutzerpasswort und KWallet-Passwort müssen identisch sein.
  • TODO: apt mit relevanten Paketen

Konfiguration

/etc/pam.d/sddm

auth optional pam_kwallet5.so 
session optional pam_kwallet5.so auto_start

Verschlüsselte Home-Verzeichnisse

  • Verschieben der kwallet-Dateien mit Symlinks außerhalb des Zuhauses eines Benutzers
  • Auf diese Weise wird es pam_kwallet zur Verfügung stehen
  • KWallet-Dateien sind verschlüsselt, daher sollt es unschädlich sein, sie außerhalb des verschlüsselten Home-Verzeichnisses zu speichern.

Beispiel

/home/.kwallet/[username]

/home/.kwallet/joe/
  • Für joe ist es /home/.kwallet/joe/ im Besitz von joe.
  • /home/.kwallet/joe/ hat zwei Unterverzeichnisse kde4 und kde5.
  • /home/joe/ hat solche Symlinks sowohl im ecryptfs-gemounteten als auch im nicht gemounteten Zustand erstellt (die Wallet-Dateien werden entsprechend verschoben):
    • .local/share/kwallet -> ../../../_kwallet/joe/kde5

Jetzt spielt es keine Rolle, ob Joes Zuhause gemountet ist oder nicht. In beiden Fällen gibt es Symlinks, die auf die gleichen Kwallet-Verzeichnisse außerhalb von Zuhause verweisen.

Anwendung

KeepassXC öffnen

kwallet-query -f 'keepass' -r 'keepass' kdewallet | keepassxc –pw-stdin ~/.pwd.kdbx

Verschlüsseltes Volume mit SiriKali öffnen

kwallet-query -f 'volumes' -r 'daten' kdewallet | sirikali -b stdin -d ~/.daten/ -z ~/daten/

Anwendungen beim Login öffnen

/usr/local/bin/kwalletOpen.sh

#!/usr/bin/env bash

## Fehlersuche
#set -xv
#exec 1>~/.openKwallet.log 2>&1

echo KeepassXC öffnen
kwallet-query -f 'keepass' -r 'keepass' kdewallet | keepassxc –pw-stdin ~.pwd.kdbx &

echo Volume Daten öffnen
kwallet-query -f 'volumes' -r 'daten' kdewallet | sirikali -b stdin -d ~/.daten/ -z ~/daten/ &


Plama5-Systemeinstellungen

Starten und Beenden -> Autostart -> Skript hinzufügen -> Ausführungszeitpunkt: Anmeldung