Debian / Ubuntu上的TPM 2.0

我们正在使用TPM 2.0芯片运行最新的英特尔NUC之一(供应商是什么,我一直无法弄清楚)。 目前我只是尝试加载驱动程序以使其对系统可见,但到目前为止还没有骰子

我试过Linux Kernels 3.2,3.16和4.2。 根据kernelnewbies内核4.0是在引入TPM 2.0驱动程序时。

我目前加载驱动程序的步骤:

  • ls -la /lib/modules/`uname -r`/kernel/drivers/char/tpm列出可用的tpm驱动程序
  • modprobe 。 很多人说tpm_tis是他们唯一需要的东西,但对我来说没有骰子
  • 检查4. *和/sys/class/misc/ on 3. *上的/sys/class/tpm是否为tpm0硬件
  • 运行tcsd -f只会给我一个通信错误
  • 三重检查BIOS以查看是否已启用TPM。 它实际上是开箱即用的,显然它不应该是?

输出ls -la /lib/modules/`uname -r`/kernel/drivers/char/tpm

 total 248 drwxr-xr-x 3 root root 4096 Dec 10 18:38 . drwxr-xr-x 7 root root 4096 Dec 10 18:38 .. drwxr-xr-x 2 root root 4096 Dec 10 18:38 st33zp24 -rw-r--r-- 1 root root 10984 Nov 18 05:26 tpm_atmel.ko -rw-r--r-- 1 root root 11760 Nov 18 05:26 tpm_crb.ko -rw-r--r-- 1 root root 11160 Nov 18 05:26 tpm_i2c_atmel.ko -rw-r--r-- 1 root root 14904 Nov 18 05:26 tpm_i2c_infineon.ko -rw-r--r-- 1 root root 20816 Nov 18 05:26 tpm_i2c_nuvoton.ko -rw-r--r-- 1 root root 24808 Nov 18 05:26 tpm_infineon.ko -rw-r--r-- 1 root root 66552 Nov 18 05:26 tpm.ko -rw-r--r-- 1 root root 15784 Nov 18 05:26 tpm_nsc.ko -rw-r--r-- 1 root root 31624 Nov 18 05:26 tpm_tis.ko -rw-r--r-- 1 root root 14072 Nov 18 05:26 xen-tpmfront.ko 

任何额外的步骤/方向/提示将不胜感激。

更新

我设法安装了4.4内核,它设法加载驱动程序(我现在在/sys/class/tpm/tpm0看到tpm0)。 但是运行tcsd -f会给我以下错误:

 TCSD TDDL ioctl: (25) Inappropriate ioctl for device TCSD TDDL Falling back to Read/Write device support. TCSD TCS ERROR: TCS GetCapability failed with result = 0x1e 

另外为了确保我有最新版本的Trousers,我也从源代码编译过,但仍然没有骰子。 我注意到的一件事是在tpm0内部没有pcrs文件

我认为你的tpm正常工作(用dmesg | grep -i tpm )但是tpm-tools只与tpm 1.2设备(源)兼容。

一些新项目存在,它们可以帮助我们:

  • IBM: http : //sourceforge.net/projects/ibmtpm20tss/
  • 英特尔: https : //github.com/01org/TPM2.0-TSS
  • 基于TSS2的tpm2-tools: https : //github.com/01org/tpm2.0-tools