Lorsque vous avez un lecteur LUKS
sur votre ordinateur, Nautilus
ou Nemo
apparaîtra sous Devices
en tant que lecteur avec un petit verrou.
Lorsque vous cliquez dessus, vous devez entrer un mot de passe. Si vous choisissez de remember this password forever
, il sera enregistré dans votre trousseau de clés. Prochain démarrage, en cliquant sur le lecteur va immédiatement le monter.
Comment "monter immédiatement" un tel lecteur pour lequel la phrase secrète est stockée dans le trousseau de clés, à partir du terminal? Je souhaite disposer d'un script de démarrage automatique qui monte mon lecteur LUKS lorsque je me connecte. Je ne souhaite pas stocker ma phrase secrète dans le script. Je souhaite utiliser la phrase secrète du trousseau de clés:
Si vous allez à Passwords And Keys
, il y a un tas de clés sans nom. Dans leurs propriétés, vous pouvez trouver une description telle que gvfs-luks-uuid=xxxxxxxxxxxx
ainsi que le mot de passe de ce lecteur LUKS. C'est ce que Ubuntu utilise.
Une option à laquelle j'ai pensé est python-gnomekeyring
mais elle ne peut obtenir que le nom de clé et le mot de passe. J'ai besoin de ce que l'interface graphique appelle "Détails techniques" pour obtenir le mot de passe pour un uuid
car le nom clé est toujours vide.
Je pense que la seule réponse est python
, mais il y a deux bogues qui rendent les choses difficiles.
Si vous travaillez avec des scripts et des trousseaux de clés, veuillez mentionner que ces bogues vous concernent également.
En ce qui concerne la partie python
, voici un exemple:
#!/usr/bin/env python
import gnomekeyring as gk
keyring = 'login'
keyItems = gk.list_item_ids_sync(keyring)
for keyItem in keyItems:
key = gk.item_get_info_sync(keyring, keyItem)
if key.get_display_name() == 'KeyName you are looking for':
# Your script here using key.get_secret()
print "Password:", key.get_secret()
Si vous connaissez un autre moyen, par exemple par de simples commandes bash, veuillez nous le faire savoir.
Vous pouvez utiliser secret-tools pour stocker et récupérer le mot de passe du trousseau de clés.
Pour stocker un nouveau mot de passe:
secret-tool store --label='Password for mydrive' drive mydrive
Je vous laisse vérifier dans le trousseau comment il apparaît. Pour le rechercher (cette commande peut facilement être insérée dans votre script):
secret-tool lookup drive mydrive
Utilisez Python Keyring Lib
Il possède une interface de ligne de commande pratique à utiliser dans les scripts Shell.
pip install keyring
$ keyring set system username
Password for 'username' in 'system':
$ keyring get system username
password