我目前有两台 Apache 服务器在这里和这里运行,它们都使用由 StartSSL 签名的 SSL 证书。Apache SSL 配置如下:
## SSL directives
SSLEngine on
SSLCertificateFile "/etc/certificates/thor.vikingserv.net/certificate.crt"
SSLCertificateKeyFile "/etc/certificates/thor.vikingserv.net/private.key"
SSLCertificateChainFile "/etc/certificates/intermediate/startssl-class-1.crt"
服务器证书和中间证书都是 SHA-256,但 CA 证书在我的 Linux 工作站上是 SHA-256,但在我的 MacBook 上是 SHA-1。
我可以使用SSLCACertificatePath
Apache 中的指令来强制使用 SHA-256 CA 证书,但这会覆盖随操作系统分发的根证书吗?
不,它不会,因为如果客户会信任提供给他们的随机根证书,那么信任存储的全部意义就有点没有意义了。
关于您的问题的两个注意事项:
SSLCACertificatePath
无论如何都不会帮助您,因为该指令仅在验证客户端证书时使用,这不是您正在做的。