Voici comment installer et configurer le script gnome-keyring-unlock sur Fedora avec GNOME, en utilisant ton lecteur d'empreinte digitale :
Clone le dépôt ou télécharge directement le fichier unlock.py depuis codeberg.org/umglurf/gnome-keyring-unlock.
Par exemple, avec wget :
bashwget https://codeberg.org/umglurf/gnome-keyring-unlock/raw/branch/main/unlock.py -O ~/bin/unlock.py
Rends-le exécutable :
bashchmod +x ~/bin/unlock.py
Sur Fedora, installe les paquets nécessaires :
bashsudo dnf install python3-secretstorage python3-dbus clevis clevis-dracut clevis-luks
Si tu veux utiliser le TPM pour stocker ton mot de passe chiffré (plus sécurisé) :
Crée un fichier chiffré avec ton mot de passe :
bashread -s password echo "$password" | sudo -u tss /usr/bin/clevis-encrypt-tpm2 '{"pcr_ids":"7"}' > ~/.config/gnome-keyring.tpm2
Configure doas (ou sudo) pour permettre à ton utilisateur d'utiliser clevis sans mot de passe :
Édite /etc/doas.conf (ou crée-le) et ajoute :
textpermit nopass TON_UTILISATEUR as tss cmd /usr/bin/clevis-encrypt-tpm2 permit nopass TON_UTILISATEUR as tss cmd /usr/bin/clevis-decrypt-tpm2
Ajoute le script suivant à ton ~/.bash_profile (ou ~/.zprofile si tu utilises zsh) :
bashif [ -f ~/.config/gnome-keyring.tpm2 ]; then if ! [ -S /run/user/$UID/keyring/control ]; then gnome-keyring-daemon --start --components=secrets fi sudo -u tss /usr/bin/clevis-decrypt-tpm2 < ~/.config/gnome-keyring.tpm2 | ~/bin/unlock.py fi
Redémarre ta session ou exécute manuellement la commande pour vérifier que le keyring se déverrouille bien :
bashsudo -u tss /usr/bin/clevis-decrypt-tpm2 < ~/.config/gnome-keyring.tpm2 | ~/bin/unlock.py
unlock.py.gnome-keyring-daemon est bien installé et fonctionnel sur Fedora.Si tu as des questions ou des erreurs, dis-moi où ça bloque !
Configure doas (ou sudo) pour permettre à ton utilisateur d'utiliser clevis sans mot de passe :
Si tu utilises sudo au lieu de doas, voici comment configurer les permissions pour que ton utilisateur puisse exécuter clevis-encrypt-tpm2 et clevis-decrypt-tpm2 sans mot de passe :
Ouvre le fichier de configuration de sudo avec la commande suivante :
bashsudo visudo
À la fin du fichier, ajoute cette ligne (remplace TON_UTILISATEUR par ton nom d'utilisateur réel) :
bashTON_UTILISATEUR ALL=(ALL) NOPASSWD: /usr/bin/clevis-encrypt-tpm2, /usr/bin/clevis-decrypt-tpm2
Exemple pour l'utilisateur louis :
bashlouis ALL=(ALL) NOPASSWD: /usr/bin/clevis-encrypt-tpm2, /usr/bin/clevis-decrypt-tpm2
Appuie sur Ctrl + X, puis Y pour sauvegarder, et enfin Entrée.
Vérifie que tu peux exécuter les commandes sans mot de passe :
bashsudo -u tss /usr/bin/clevis-decrypt-tpm2 < ~/.config/gnome-keyring.tpm2
Si tout est correct, la commande ne devrait pas te demander de mot de passe.
~/.config/gnome-keyring.tpm2 existe et est correctement chiffré avant de tester.sudo dans le script d'automatisation, remplace doas par sudo dans les commandes.Si tu as besoin d'aide pour une autre étape, fais-moi signe !