相关疑难解决方法(0)

基于主机头的 SSL 证书选择:可能吗?

Web 服务器是否可以根据传入连接的主机标头选择要使用的 SSL 证书,或者该信息是否仅在建立 SSL 连接后可用?

也就是说,我的网络服务器是否可以在端口 443 上列出并在请求https://foo.com 时使用 foo.com 证书,如果请求https://bar.com或我正在尝试使用 bar.com 证书不可能的事情,因为服务器必须在知道客户端想要什么之前建立 SSL 连接?

ssl web-hosting https ssl-certificate

17
推荐指数
2
解决办法
2617
查看次数

如何防止从没有证书的域访问 https://?

我有这个设置

Server version: Apache/2.2.22 (Ubuntu)
OpenSSL 1.0.1c 10 May 2012
Run Code Online (Sandbox Code Playgroud)

一个 IP 连接多个域。因为example1.com我有一个签名的 SSL 证书,因此example1.com可以通过https://secure.example1.com

这也适用于example2.com(使用有效证书签名并通过 访问https://secure.example2.com

但是,example3.com没有绑定任何 SSL 证书,并且不应通过https(SSL 端口 443)访问。但是,当用户转到https://example3.com警告时会显示。在 Chrome 中它看起来像这样

您试图访问 example3.com,但实际上您访问了一个将自身标识为 secure.example1.com 的服务器。这可能是由服务器上的错误配置或更严重的事情引起的。您网络上的攻击者可能试图让您访问 example3.com 的虚假(并且可能有害)版本

如果你不理会警告,用户实际上会看到 secure.example1.com

VirtualHost 设置如下所示

<VirtualHost *:443>
        ServerName secure.example1.com
        DocumentRoot /var/www/blahblah
        SSLEngine on
        SSLCertificateFile /blahblah.crt
        SSLCertificateKeyFile /blahblah.key
        SSLCertificateChainFile /blahblah.pem
</VirtualHost>

<VirtualHost *:443>
        ServerName secure.example2.com
        DocumentRoot /var/www/blahblah
        SSLEngine on
        SSLCertificateFile /blahblah.crt
        SSLCertificateKeyFile /blahblah.key
        SSLCertificateChainFile /blahblah.pem …
Run Code Online (Sandbox Code Playgroud)

ssl https openssl apache-2.2

2
推荐指数
1
解决办法
232
查看次数

标签 统计

https ×2

ssl ×2

apache-2.2 ×1

openssl ×1

ssl-certificate ×1

web-hosting ×1