Comment déterminer si un module TPM (Trusted Platform Module) est disponible sur l'ordinateur

9

Voulant jouer avec les trucs Trusted Platform Module , j'ai installé TrouSerS et essayé de démarrer tcsd, mais j'ai eu cette erreur:

TCSD TDDL ERROR: Could not find a device to open!

Cependant, mon noyau a plusieurs modules TPM chargés:

# lsmod | grep tpm
tpm_crb                16384  0
tpm_tis                16384  0
tpm_tis_core           20480  1 tpm_tis
tpm                    40960  3 tpm_tis,tpm_crb,tpm_tis_core

Alors, comment puis-je déterminer si mon ordinateur manque de TPM vs TrouSerS a un bug?

Ni rien dmidecodeni cpuidsortie sur "tpm" ou "trust". En regardant dedans /var/log/messages, d'une part je vois rngd: /dev/tpm0: No such file or directory, mais d'autre part je vois kernel: Initialise system trusted keyringset selon cette documentation de noyau, les clés de confiance utilisent TPM.

EDIT : les menus de configuration du BIOS de mon ordinateur ne mentionnent rien du TPM.

En regardant également /proc/keys:

# cat /proc/keys 
******** I--Q---     1 perm 1f3f0000     0 65534 keyring   _uid_ses.0: 1
******** I--Q---     7 perm 3f030000     0     0 keyring   _ses: 1
******** I--Q---     3 perm 1f3f0000     0 65534 keyring   _uid.0: empty
******** I------     2 perm 1f0b0000     0     0 keyring   .builtin_trusted_keys: 1
******** I------     1 perm 1f0b0000     0     0 keyring   .system_blacklist_keyring: empty
******** I------     1 perm 1f0f0000     0     0 keyring   .secondary_trusted_keys: 1
******** I------     1 perm 1f030000     0     0 asymmetri Fedora kernel signing key: 34ae686b57a59c0bf2b8c27b98287634b0f81bf8: X509.rsa b0f81bf8 []
Matthew Cline
la source
Existe-t-il une option dans votre configuration du BIOS pour activer / désactiver le TPM? Même si vous ne pouvez pas le désactiver, il peut y avoir des informations ici sur le TPM.
airhuff
Ah, non, j'ai vérifié et le BIOS n'avait rien sur le TPM. Je vais ajouter ça.
Matthew Cline
1
Le TPM est généralement décrit par les tables ACPI mises en place par le bios. Si dmesg | grep -w tpmne donne pas de messages sur l'initialisation d'un tpm alors vous n'en avez pas qui soit reconnu par le noyau. La plupart des ordinateurs portables et des ordinateurs de bureau n'ont pas de module de plateforme sécurisée, ils sont assez standard sur les machines vendues comme serveurs (c'est-à-dire des choses assez grandes pour exécuter IPMI), ainsi que sur les Chromebooks où ils font partie de l'histoire de la sécurité.
icarus
1
Pour jouer, ibm a développé un soft tpm que vous pouvez compiler et exécuter, et il y a aussi cet émulateur plus facile à utiliser.
meuh

Réponses:

12

Les TPM n'apparaissent pas nécessairement dans les tables ACPI, mais les modules affichent un message lorsqu'ils trouvent un module pris en charge; par exemple

[  134.026892] tpm_tis 00:08: 1.2 TPM (device-id 0xB, rev-id 16)

C'est donc dmesg | grep -i tpmun bon indicateur.

L'indicateur définitif est l'outil de configuration de votre firmware: les TPM impliquent des procédures de propriété qui sont gérées à partir de la configuration du firmware. Si votre configuration ne mentionne rien lié au TPM, vous n'avez pas de TPM.

Les TPM se trouvent généralement sur les serveurs et les ordinateurs portables professionnels (et ChromeBooks, comme expliqué par icarus ), ils sont rares sur les ordinateurs de bureau ou les ordinateurs portables "non professionnels". Tout ce qui prend en charge Intel TXT a un TPM.

Stephen Kitt
la source
Mise à jour de l'an 2020: la plupart des PC nouvellement fabriqués, même les modèles grand public, sont désormais livrés avec un TPM. Microsoft les recommande officiellement sur tous les nouveaux PC, et un nombre croissant de fonctionnalités Windows l'exigent.
Lily Finley