继承了 lighttpd 服务器,我对此有点不了解。尝试使用 SNI 安装第三个 SSL 证书,而无需其他 IP。目前 lighttpd.conf 中的 SSL 配置如下所示:
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/etc/ssl/private/domain1.com.pem"
ssl.ca-file = "/etc/ssl/private/chain.cer"
$HTTP["host"] == "domain2.com" {
ssl.pemfile = "/etc/ssl/private/domain2.com.pem"
ssl.ca-file = "/etc/ssl/private/chain.cer"
}
}
尝试添加第三个证书,如下所示:
$SERVER["socket"] == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/etc/ssl/private/domain1.com.pem"
ssl.ca-file = "/etc/ssl/private/chain.cer"
$HTTP["host"] == "domain2.com" {
ssl.pemfile = "/etc/ssl/private/domain2.com.pem"
ssl.ca-file = "/etc/ssl/private/chain.cer"
}
$HTTP["host"] == "domain3.com" {
ssl.pemfile = "/etc/ssl/private/domain3.com.pem"
}
}
有些事情不起作用,当配置看起来像这样时,lighttpd 将无法启动/重新启动。
答案1
您的 domain3.com.pem 文件正确吗?
Lighttpd 使用一种不太常见的构造,其中ssl.pemfile
不仅应包含 CA 返回给您的签名证书,还应包含相关的私钥。
它看起来应该是这样的:
-----BEGIN CERTIFICATE-----
ABC...
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
ABC...
-----END PRIVATE KEY----