【问题标题】:Certificate signed by Intermediate shows as self-signed certificate中间人签名的证书显示为自签名证书
【发布时间】:2014-09-02 04:44:16
【问题描述】:

我目前正在将我的服务的托管从托管主机(运行 Lighspeed + Cpanel)迁移到我自己的托管主机,运行 Nginx。

在 Nginx 1.6.0 中一切正常,但我的问题是我的证书显示为自签名。我按照以下方式安装了 SSL 证书,包括链式证书 http://www.digicert.com/ssl-certificate-installation-nginx.htm

但是,即使尝试在NGinx SSL certificate authentication signed by intermediate CA (chain) 上进行配置,它也不起作用。

如果我在http://sslcheck.globalsign.com/en_US 上输入我的网站,它会显示为自签名证书。

以下是我关于 SSL 的虚拟主机配置:

server {
    listen       80;
    listen  443 ssl;

    server_name    host02.website.com *.website.com;
    root           /spacedata/website.com;
    index index.php index.html /;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-RC4-SHA:ECDHE-RSA-AES128-SHA:AES128-SHA:RC4-SHA;
    ssl_session_cache shared:SSL:10m;

    add_header Strict-Transport-Security max-age=31536000;

    ssl_certificate /etc/pki/tls/certs/bundle-alpha.crt;
    ssl_certificate_key /etc/pki/tls/certs/private.key;
    ...
}

我确认我安装了正确的证书和私钥。

请记住,我运行的是 AlphaSSL 通配符证书。

我怀疑我在配置方面缺少一些东西,因为我在其他主机中安装了相同的 .crt 文件和 .key。

【问题讨论】:

  • 服务器的 URL 是什么?将GeoTrust Global CA 用作CAfile 时,openssl s_client 连接良好。 website.com 归一个真实的组织所有。您是否通过提供不良信息让我们大吃一惊?
  • 嗨 Jww。我正在发送虚假的网站信息。该网站归我所有,它已经很好地运行了证书,但是在迁移到 Nginx 的过程中我遇到了这个问题。谢谢

标签: ssl nginx https hosting


【解决方案1】:

我之前遇到过同样的问题,与驻留在 ssl_certificate 文件中的证书的顺序有关。 您需要在此文件中包含所有中间 CA 证书,并以正确的顺序排列它们。 我所要做的就是颠倒该文件中证书的顺序,我的问题就解决了。

您的服务器证书应该在顶部,然后简单地沿着 CA 链往下走。

PS。我的配置如下:

listen 443 default ssl;
ssl_certificate /etc/nginx/ssl/server_plus.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
ssl_prefer_server_ciphers on;

【讨论】:

  • 嗨,Ikkuh,我的证书链看起来是正确的。如果我颠倒顺序,我在重启 Nginx 时会出现私钥错误。我的订单是: - 我的证书 - 中间证书 - 根证书。但是,如果我去我的网站并查看证书信息,则没有关于链的任何内容。我错过了什么吗?感谢您的帮助。
  • 这很奇怪,你确定你使用的是正确的证书,没有在任何一个文件中添加任何额外的空格或行.. ect 吗?您的日志中是否有任何可能指向您某事的内容?
  • 实际上是证书的顺序。很久过去了,但我忘了标记为已回答。谢谢。
  • 您在哪个文件中更改了顺序?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多