最近开始学习tpm的相关知识,需要使用tpm模拟器,查看了网上的很多教程。现在将自己的配置过程写个备注,方便自己查看。
查看的相关教程有https://blog.csdn.net/gscsnm/article/details/71192113;https:
//www.cnblogs.com/10087622blog/p/7840163.html。
1.实验环境:内核版本为 4.4.0-53
2.安装cmake:
有两种方式,一个是下载源码,一个是使用apt-get,因为本人比较懒,所以直接使用了apt-get。
sudo apt-get install cmake
3.安装gmp和gtk
3.1可以使用
apt-cache search libgmp来查看gmp的库
3.2我安装的是libgmp-dev
(如果不安装m4,可能会出现提示说缺少m4,所以我提前安装,因此并未出现错误)
sudo apt-get install m4
sudo apt-get install libgmp-dev
3.3安装gtk
我不知道这个在后期是否有用,我并没有全部安装,只安装了前几个,但并未有错误发生。
参考:http://www.linuxidc.com/Linux/2008-09/15955.htm
apt-get install build-essential #这将安装gcc/g++/gdb/make 等基本编程工具
apt-get instal gnome-devel gnome-devel-docs#这将安装 libgtk2.0-dev libglib2.0-dev 等开发相关的库文件
apt-get install pkg-config #用于在编译GTK程序时自动找出头文件及库文件位置
apt-get install devhelp #这将安装 devhelp GTK文档查看程序
apt-get install libglib2.0-doc libgtk2.0-doc #这将安装 gtk/glib 的API参考手册及其它帮助文档
apt-get install glade libglade2-dev #这将安装基于GTK的界面GTK是开发Gnome窗口的c/c++语言图形库
apt-get install libgtk2.0*, gtk+2.0所需的所有文件统通下载安装完毕
--------------------- 本文来自 zhangnn5 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/zhangnn5/article/details/6767230?utm_source=copy
4.安装tpm-emulator
因为并没有真实的tpm芯片,所以需要安装模拟ls器。
下载地址https://github.com/PeterHuewe/tpm-emulator,下载的版本是tpm-emulator-0.7.5,下载好之后将其解压。安装步骤在readme中。
4.1 可以在下载目录上先创建一个tpm-emulator-0.7.5的文件夹
mkdir tpm-emulator-0.7.5
4.2安装步骤。(请注意权限问题)
tar -xvzf tpm-emulator-0.7.5tar.gz -C tpm-emulator-0.7.5
cd tpm-emulator-0.7.5
mkdir build
cd build
cmake ../
make
make install
4.3初始化和启动tpm模拟器守护程序。(请注意权限问题)
4.3.1 初始化
tpmd deactivated
killall tpmd
tpmd clear
4.3.2 启动
modprobe tpmd_dev
tpmd -f -d
4.4可能出现的错误
(1)错误:Module tppmd_dev not found
解决:运行命令 depmod -a
(2)错误:failed: address already in use
解决:运行命令 rm /var/run/tpm/tpmd_socket:0
如果成功,则会在尾部一直显示:Debug: waiting for connections…
5 安装TSS协议栈
安装地址:https://sourceforge.net/projects/trousers/files/trousers/,我安装的是最新的版本trousers-0.3.14.tar.gz
下载好之后首先解压到 下载目录所在的trousers-0.3.14
5.1解压到指定目录
mkdir trousers-0.3.14
tar -xvzf trousers-0.3.14.tar.gz -C trousers-0.3.14
5.2看readme 安装依赖
apt-get install automake
apt-get install autoconf
apt-get install pkgconf
apt-get install pkg-config
apt-get install libtool
apt-get install gtk2-engines
apt-get install openssl
apt-get install libssl-dev
apt-get install glibc-doc
5.3安装过程(在trousers-0.3.14文件夹中)
sh ./bootstrap.sh
./configure
make
make instal
5.4注:
网上的教程说要你更改一些文件的内容,我在更改之后运行make的时候会一直报错,但如果不改则会直接通过,并不需要修改,可能是由于版本不同。
6.安装tpm-tools
apt-get install tpm-tools
7.检测是否安装成功(开三个不同的终端分别运行)
7.1先开一个终端,启动TPM_emulator。
sudo modprobe tpmd_dev
sudo tpmd -f -d
7.2再开一个终端,启动tcsd(启动之前必须先启动tpm)。
tcsd -e -f
7.3运行以下命令
cd /usr/sbin
./tpm_version #查看版本号
./tpm_getpubek #查看ek公钥
./tpm_takeownership #获取owner
如果成功,则表明tpm模拟环境构建成功。
tpm:
tcsd: