首页>最新数字证书问答>如何在同一服务器上实现多站点多域名HTTPS?

如何在同一服务器上实现多站点多域名HTTPS?

假设有这样一个场景,我们有多个站点(例如site1.marei.com,site2.marei.com和site3.marei.com)绑定到同一个IP:PORT,并区分不同的主机头。我们为每一个SSL站点申请并安装了证书。在浏览网站时,用户仍看到证书不匹配的错误。

IIS中实现HTTPS

问题原因

当一个https的请求到达IIS服务器时,https请求为加密状态,需要拿到相应的服务器证书解密请求。由于每个站点对应的证书不同,服务器需要通过请求中不同的主机头来判断需要用哪个证书解密,然而主机头作为请求的一部分也被加密。最终IIS只好使用第一个绑定到该IP:PORT的站点证书解密请求,从而有可能造成对于其他站点的请求失败而报错。

解决方案

第一种解决方案将每个https站点绑定到不同的端口。但是这样的话客户端浏览网页时必须手动指定端口,例如https://site.domain.com:444

第二种解决方案是为每个站点分配一个独立的ip,这样冲突就解决了,甚至主机头也不用添加了。

第三种解决方案是使用通配证书。我们采用通配证书颁发给.domain.com,对于我们的示例中,应该采用颁发给.marei.com的证书,这样任何访问该domain的请求均可以通过该证书解密,证书匹配错误也就不复存在了。

第四种解决方案是升级为IIS8,IIS8中添加的对于SNI(Server Name Indication)的支持,服务器可以通请求中提取出相应的主机头从而找到相应的证书。

SNI开启方式请参考http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-server-name-indication-sni-ssl-scalability

Nginx中实现HTTPS

打开Nginx安装目录下 conf目录中打开 nginx.conf文件,找到

server {
listen 443;
server_name domain1;
ssl on;
ssl_certificate 磁盘目录/订单号1.pem;
ssl_certificate_key 磁盘目录/订单号1.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}

在上述基础上,再添加另一段配置

server {
listen 443;
server_name dommain2;
ssl on;
ssl_certificate 磁盘目录/订单号2.pem;
ssl_certificate_key 磁盘目录/订单号2.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}

通过上述配置在Nginx中支持多个证书。

Apache配置HTTPS虚拟主机共享443端口

Listen 443
NameVirtualHost *:443
……
ServerName www.example1.com
SSLCertificateFile common.crt;
SSLCertificateKeyFile common.key;
SSLCertificateChainFile ca.crt
……
……
ServerName www.example2.com
SSLCertificateFile common2.crt;
SSLCertificateKeyFile common2.key;
SSLCertificateChainFile ca2.crt
……

以上,是为大家分享的“如何在同一服务器上实现多站点多域名HTTPS?”的全部内容,如果用户遇到的问题不能解决,可通过wosign官网客服寻求帮助,凡是选择wosign ssl证书的网站用户,wosign可提供免费一对一的ssl证书技术部署支持,免除后顾之忧。

相关内容

国密SM2 SSL证书全生态支持与全球信任解决方案

沃通作为国内领先的SSL证书签发CA,早在2014年就已经开始了采用国密算法签发SM2 SSL证书的研究,并取得了可喜的研究成果。我们充分认识到国密SSL证书要达到实用和大量部署使用还需要相关系统的支持,如浏览器和服务器软件。同时,还要考虑到其通用性与全球性,即网站用户可能使用各种不同的浏览器和用户来自世界各地。所以,我们一直在持续研究基于国密算法实现https网站加密的完整解决方案。

国密浏览器如何完成SM2国密SSL协议协商

国密浏览器需要遵循国密SSL协议规范GM/T 0024-2014。 GM/T 0024-2014没有单独规范 SSL协议的文件,而是在SSL VPN技术规范中定义了国密SSL协议。国密SSL协议(SSL VPN协议)包括握手协议、密码规格变更协议、报警协议、网关到网关协议和记录层协议。

最新资讯

为什么要停止使用RSA密钥交换?

什么是DNS-over-HTTPS.是如何工作的?

Apple macOS操作系统中存在三个致命漏洞

"此网站提供的安全证书不安全"的解决方法

Chrome浏览器中出现“安全连接”错误,该如何解决?

标签推荐:数字证书申请 | ssl证书验证失败 | https证书申请| 数字签名技术| 电子签名软件| ssl证书更新| 小程序证书| ca认证电子签名| 个人代码签名| 微软代码签名| 泛域名证书| java代码签名| 代码签名证书| https证书配置| PKI技术知识| SQL注入| openssl漏洞| 识别钓鱼网站