Ubuntu 20.04安装Intel sgx
Ubuntu 20.04安装Intel sgx安装sgx drive准备工作检查是否安装了匹配的内核头文件dpkg-query -s linux-headers-$(uname -r)安装匹配的内核头文件sudo apt-get install linux-headers-$(uname -r)生成驱动模块/linux-sgx-driver-master# make安装驱动sudo mkdir -
## Ubuntu 20.04安装Intel sgx
非常重要!!!!!!!!!
告诉大家一个安装SGX的奇技淫巧,看到这里后续无需再看!本人方向是处理器硬件安全,时常需要安装SGX以此来攻击,在研究过程中发现了这个好东西:
github:https://github.com/jovanbulck/sgx-step.git
cd kernel/
./install_SGX_driver.sh
make clean load
LOVE & PEACE
非常重要!!!!!!!!!
官网的安装连接:https://github.com/intel/linux-sgx
安装顺序:sgx dirver ->sgx sdk-> sgx psw
安装sgx driver
准备工作
- 检查是否安装了匹配的内核头文件
dpkg-query -s linux-headers-$(uname -r)
- 安装匹配的内核头文件
sudo apt-get install linux-headers-$(uname -r)
生成驱动模块
/linux-sgx-driver-master# make
安装驱动
sudo mkdir -p "/lib/modules/"`uname -r`"/kernel/drivers/intel/sgx"
sudo cp isgx.ko "/lib/modules/"`uname -r`"/kernel/drivers/intel/sgx"
sudo sh -c "cat /etc/modules | grep -Fxq isgx || echo isgx >> /etc/modules"
sudo /sbin/depmod
sudo /sbin/modprobe isgx
查询是否成功
lsmod | grep isgx
安装SGX SDK
准备工作*
- 安装编译SGX SDK要用到的工具
sudo apt-get install build-essential ocaml ocamlbuild automake autoconf libtool wget python libssl-dev git cmake perl
- 安装编译SGX PSW要用到的工具
sudo apt-get install libssl-dev libcurl4-openssl-dev protobuf-compiler libprotobuf-dev debhelper cmake reprepro unzip
- 从仓库获取源码
git clone https://github.com/intel/linux-sgx.git
#如果出现了问题:fatal: unable to access 'https://github.com/intel/linux-sgx.git/': GnuTLS recv error (-110): The TLS connection was non-properly terminated.
#命令换成:git clone git://github.com/intel/linux-sgx.git
cd linux-sgx && make preparation
- 把准备好的工具列表添加到全局变量中,方便之后编译工作的展开
sudo cp external/toolset/ubuntu20.04/{as,ld,ld.gold,objdump} /usr/local/bin
再用下面这个语句检查是不是添加成功
which as ld ld.gold objdump
编译SGX SDK和SGX SDK安装工具(installer)
1.进入./linux-sgx文件夹(其实应该也是一直在这个文件夹下),命令行执行
make sdk
再命令行执行:
make sdk_install_pkg
成功运行的话,在linux/installer/bin文件夹下会有一个sgx_linux_x64_sdk_${version}.bin文件生成
安装SGX SDK
为什么先安装SDK而不是像官网说的先去吧SGX PSW也编译好呢?别问,问就是报错。如果先去编译psw,它会返回一个…/sgxsdk不存在的错误,说明psw需要依赖SGX SDK,或者它需要根据安装好的SDK构造一些依赖关系,所以,先安装SDK吧。
安装好需要用到的工具
sudo apt-get install build-essential python
无脑运行以下命令:
cd linux/installer/bin
./sgx_linux_x64_sdk_${version}.bin
这里特别提示存在一个坑,就是它询问是否存在当前文件夹的时候,最好选择“no”,然后将SGX SDK安装在/opt/intel/ 文件夹下。
安装SGX PSW
make psw
make psw_install_pkg
cd psw/ae/le
make
成功运行的话,在linux/installer/bin文件夹下会有一个sgx_linux_x64_psw_${version}.bin文件生成
cd linux/installer/bin
./sgx_linux_x64_psw_${version}.bin
SGX PSW 提供了3个服务,分别是launch、EPID-based attestation和Algorithm agnostic attestation,从2.8版本开始,PSW整体拆分成这三个小服务,可以分别安装:
sudo apt-get install libsgx-launch libsgx-urts
sudo apt-get install libsgx-epid libsgx-urts
sudo apt-get install libsgx-quote-ex libsgx-urts
sudo apt-get install libsgx-dcap-ql
更多推荐
所有评论(0)