【问题标题】:Https doesn't work with the SSL certificateHTTPS 不适用于 SSL 证书
【发布时间】:2014-08-07 14:02:58
【问题描述】:

我终于来寻求你的帮助了。我实际上对这个问题失去了希望。 我设置了第一个 vps,具有不同的域 (3x),都配置了 SSL mod,一切正常,从 HTTP 到 HTTPS 的永久重定向也是如此。

不幸的是,我将此配置复制/粘贴到第二个 vps 中,然后重新构建所有证书并更改所有虚拟主机设置。一切都运行良好,除了 SSL (https)。在错误或访问日志文件中,我没有发现关于此的错误...

在每个浏览器上,它都不起作用,我会超时...如果我检查了 sslChecker,一切正常,但似乎无法识别域 www.------ 的证书。是

你有什么想法可以帮帮我吗?

注意:我的默认文件(虚拟主机)也为此网站配置(就像我的第一个配置一样)

测试 openssl 连接返回以下代码: - 验证返回码:18(自签名证书)

提前谢谢你!

虚拟主机文件:

        <VirtualHost *:80>
        ServerAdmin postmaster@bubul.be
        ServerName bubul.be
        ServerAlias www.bubul.be

        DocumentRoot /var/www/bubul.be/

        Redirect permanent / https://www.bubul.be/
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/bubul.be/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

<VirtualHost *:443>
        DocumentRoot /var/www/bubul.be/
        ServerName bubul.be
        SSLEngine on
        SSLCertificateFile /etc/ssl/localcerts/bubul.pem
        SSLCertificateKeyFile /etc/ssl/localcerts/bubul.key
</VirtualHost>

【问题讨论】:

  • 编辑:我找到了解决方案,终于在阅读了你的书后,我看到为两个域制作两个证书,也用于 apache 配置,制作两次然后它就可以工作了;)非常感谢你的帮助;)

标签: ssl https apache2 debian configuration-files


【解决方案1】:

使用 s_client 检查会得到证书,我看到以下错误:

  • 证书是自签名的,所以浏览器默认不会接受并报错。
  • 证书仅适用于 bubul.be,不适用于 www.bubul.be,因此浏览器会抱怨主机名与证书不匹配。
  • 证书没有将 X509v3 Extended Key Usage 设置为 TLS Web 服务器身份验证,这意味着浏览器不会接受此证书作为服务器证书。这通常会导致浏览器挂起或给出一些奇怪的错误,因为关于证书的基本假设没有得到满足。

【讨论】:

  • “证书没有 X509v3 扩展密钥用法” - 该要求显示在 CA/Browser Forum Baseline Requirements 附录 (B)(3)(F) 中。 EKU 在RFC 5280 中是可选的。是否有人使用 CA/B 来执行策略?我通常避免使用它,因为它会导致一些 Java 验证器出现问题。
  • 根据我的经验,所有浏览器都需要此设置,如果不提供,您会收到非常奇怪的错误。另一边的编程语言的 SSL 库大多不在乎。
  • 我在命令中做错了什么导致这种错误吗?我想是的,我在文档中看到“一个证书的多个域”,对吗?
  • 您必须将适当的设置添加到 openssl 配置文件。见wiki.cacert.org/FAQ/subjectAltNameopenssl.org/docs/apps/x509v3_config.html#Extended_Key_Usage_
猜你喜欢
  • 1970-01-01
  • 2013-09-15
  • 2017-03-11
  • 1970-01-01
  • 1970-01-01
  • 2018-01-14
  • 1970-01-01
  • 2017-08-20
  • 2021-10-03
相关资源
最近更新 更多