静态 IP 上的 SSL、Apache 和子域

静态 IP 上的 SSL、Apache 和子域

我有一个静态 IP,它通过防火墙接收路由请求。此服务器有一个通配符 SSL 证书,但由于某种原因,它决定不再工作。在我的 httpd.conf 中,我为服务器进行了以下配置:

ServerName 10.200.2.15  
NameVirtualHost 10.200.2.15:443  
Listen 10.200.2.15:443 

我已启用 mod_ssl 等。然后我配置了一个虚拟主机:

< VirtualHost 10.200.2.15:443 >  
ServerName v3.mysite.com  
ServerAdmin [email protected]  
DocumentRoot "/Library/WebServer/Documents"  
DirectoryIndex index.html index.php login.jhtml  
ErrorLog "/private/var/log/httpd/error_log"  
< IfModule mod_ssl.c >  
SSLEngine On  
SSLLog "/private/var/log/httpd/ssl_engine_log"  
SSLCertificateFile "/etc/certificates/_.mysite.com.crt"  
SSLCertificateKeyFile "/etc/certificates/private.key"  
SSLCertificateChainFile "/etc/certificates/gd_bundle.crt"  
SSLCipherSuite "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:!SSLv2:+EXP:+eNULL"  
< /IfModule >  
< /VirtualHost >  

当我重新启动 apache 时,我的 ssl 引擎日志显示:

[信息] 初始化:为 SSL 协议配置服务器 v3.mysite.com:443
[警告] 初始化:(v3.mysite.com:443)RSA 服务器证书 CommonName (CN) `*.mysite.com' 与服务器名称不匹配!?

此配置几个月来一直运行良好,但重启后服务器拒绝通过 HTTPS 为网站提供服务。尝试通过静态 IP 和 VPN 外的 DNS 在 Firefox 中访问时会超时。有什么想法吗?

答案1

“RSA 服务器证书 CommonName (CN) `*.mysite.com' 与服务器名称不匹配!?”是使用通配符证书时的正常警告,可以安全地忽略它。这不是 SSL 无法正常工作的原因。如果您在日志中没有看到任何其他错误,请确保一切都正确转发端口 443。

答案2

“RSA 服务器证书 CommonName (CN)‘*.mysite.com’与服务器名称不匹配!?”

对于“通配符”证书(即“*.domain.com”),请尝试更改虚拟主机引用

<VirtualHost (ip address of server):443>
ServerName mysite.com
<VirtualHost>

... 到:

<VirtualHost (ip address of server):443>
ServerName *.mysite.com
<VirtualHost>

要点:如果它是“通配符”证书,则虚拟服务器没有三级主机名(即,它只是“domain.com”),那么域名需要与证书“完全”匹配 - 带有星号(*.domain.com)和所有内容!;)

相关内容