web-dev-qa-db-fra.com

Est-il possible de supprimer une clé inscrite à l'aide de mokutil sans le fichier .der d'origine?

Tout en luttant avec ma carte graphique discrète, j'ai réinstallé Ubuntu à plusieurs reprises. Les deux premières fois, j'ai fait très attention de déplacer les clés .priv et .der que j'utilisais pour signer mes modules de noyau dkms sur une autre partition. Malheureusement, comme je devenais de plus en plus frustré, je suis devenu moins prudent, j'ai apparemment coupé et collé accidentellement à partir de la sauvegarde (plutôt que copier/coller), puis reformaté sur la seule clé restante lors de la prochaine réinstallation. J'ai utilisé photorec pour essayer de récupérer les fichiers, mais malheureusement, aucun fichier * .der ou * .priv n'a été récupéré.

Il semble que le moyen prévu pour désinscrire des clés de propriétaire de machine (MOK) est

mokutil --delete keyname.der

Étant donné que je n'ai plus la clé publique, y a-t-il un autre moyen pour moi de la désinscrire?

7
adempewolff

Pour ne supprimer qu'une clé spécifique de la base de données, vous pouvez d'abord utiliser l'indicateur --export, comme suit:

$ mokutil --export

Ceci exportera toutes les clés du propriétaire de la machine vers le répertoire actuel:

$ ls -1 MOK*
MOK-0001.der
MOK-0002.der
...

Ils sont numérotés selon la liste donnée par

$ mokutil --list-enrolled
[key 1]
SHA1 Fingerprint:....
...
[key 2]
SHA1 Fingerprint:....

ce qui devrait alors vous permettre de supprimer une seule clé spécifique, par exemple. clé 1:

# mokutil --delete MOK-0001.der
10
nodonttakethose

Deviner. Le paramètre --reset fait l'affaire.

Sudo mokutil --reset

Si vous avez plusieurs MOK inscrits et que vous voulez seulement en supprimer un, cela n’est peut-être pas idéal.

Si quelqu'un propose une meilleure option, j'accepte cette réponse.

2
adempewolff

Je me rends compte que c’est une vieille question, mais j’ai eu des problèmes avec ce problème concernant VirtualBox et les clés du propriétaire de la machine - au point que j’en ai reconstruit une à chaque fois que VirtualBox ne voulait pas démarrer une session.

Voici ce que j'ai fini par faire:

  1. Création d'un sous-répertoire appelé mokkeys.
  2. Est-ce qu'un cd est entré dans ce répertoire?.
  3. Exécute la commande mokutil --export pour lister tous les MOK * .der.
  4. Exécute la commande mokutil -l | less pour comparer le répertoire répertorié avec les détails répertoriés par clé et identifier les clés supplémentaires que je souhaitais supprimer.
  5. Exécute la commande Sudo mokutil --delete pour chaque MOK * .der individuellement. (Toujours demandé à deux fois le mot de passe MOK, Sudo était la seule façon dont cela fonctionnait pour moi - j'essayais de les supprimer depuis trop longtemps).
  6. Redémarré et parcouru l'invite du simulateur pour supprimer les clés (elles étaient numérotées séquentiellement ici et ne correspondaient pas (par leur numéro) à celles que j'avais marquées pour suppression).
  7. Redémarré à la fin de ce processus.
  8. exécuté la commande 'mokutil -l | less 'pour voir si des clés étrangères ont été supprimées (elles l'étaient)
  9. Est-ce que ma danse joyeuse privée --- :-)
0
ray