Red Hat Training

A Red Hat training course is available for RHEL 8

6.4. 在 Apache 中使用 HSM 保护私钥

Apache HTTP 服务器可以使用硬件安全模块(HSM)中存储的私钥,这有助于防止密钥泄漏和中间人攻击。请注意,这通常需要高性能的 HSM 用于繁忙的服务器。

对于 HTTPS 协议形式的安全通信,Apache HTTP 服务器(httpd)使用 OpenSSL 库。OpenSSL 不支持 PKCS #11 natively。要使用 HSM,您必须安装 openssl-pkcs11 软件包,它通过引擎接口提供对 PKCS #11 模块的访问。您可以使用 PKCS #11 URI 而不是常规文件名在 /etc/httpd/conf.d/ssl.conf 配置文件中指定服务器密钥和证书,例如:

SSLCertificateFile    "pkcs11:id=%01;token=softhsm;type=cert"
SSLCertificateKeyFile "pkcs11:id=%01;token=softhsm;type=private?pin-value=111111"

安装 httpd-manual 软件包以获取 Apache HTTP 服务器的完整文档,包括 TLS 配置。/etc/httpd/conf.d/ssl.conf 配置文件中的指令在 /usr/share/httpd/manual/mod_ssl.html 中有详细介绍。