我需要在 Ubuntu 操作系统中使用 TPM 芯片来保护基于 AD 机器的证书(.cert、.pem、.key 文件)。
要求如下:
从 AD 下载到特定目录的证书需要加密或防止用户访问。
1)从Active Directory下载证书到Ubuntu机器(使用桥接工具,如centrify)
2)使用私钥签署证书并将私钥存储在TPM芯片上(libtpm engine-openssl如果可用)
3) 使用签名证书和密钥配置 WiFi/VPN 以建立连接
需要对此主题有所了解。我能够毫无问题地执行第一步。挑战从在 Ubuntu 机器中使用 TPM 的第二步开始。
目前在 ubuntu 存储库中没有可用的 libengine-tpm-openssl 包。并且在尝试使用 libtpm 引擎时 openssl 给出了错误
**139927887963808:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(/usr/lib/x86_64-linux-gnu/openssl-1.0.0/engines/libtpm.so): /usr/lib/x86_64-linux-gnu/openssl-1.0.0/engines/libtpm.so: cannot open shared object file: No such file or directory
139927887963808:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
139927887963808:error:260B6084:engine routines:DYNAMIC_LOAD:dso not found:eng_dyn.c:450:
139927887963808:error:2606A074:engine routines:ENGINE_by_id:no such engine:eng_list.c:417:id=tpm
139927887963808:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libtpm.so): libtpm.so: cannot open shared object file: No such file or directory
139927887963808:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244:
139927887963808:error:260B6084:engine routines:DYNAMIC_LOAD:dso not found:eng_dyn.c:450:**
此外,即使我能够完成将密钥存储在 TPM 中的第二步。是否可以使 wpa_supplicant/openconnect vpn 客户端能够读取密钥以便成功建立连接?