Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ssl Nginx不提供中间证书_Ssl_Nginx_Chain - Fatal编程技术网

Ssl Nginx不提供中间证书

Ssl Nginx不提供中间证书,ssl,nginx,chain,Ssl,Nginx,Chain,我正在尝试在Nginx上安装ssl证书(实际上是laravelforge)。我已经将证书与中间版本连接起来,在Nginx错误日志中没有发现任何错误。然而,它在只使用chrome的移动桌面上是不受信任的 看看Qualys ssl测试,有人说这个链是不完整的。我不知道怎么办 这是我的Nginx配置 server { listen 80; server_name **********.com; return 301 https://**********.com$request_uri; } serv

我正在尝试在Nginx上安装ssl证书(实际上是laravelforge)。我已经将证书与中间版本连接起来,在Nginx错误日志中没有发现任何错误。然而,它在只使用chrome的移动桌面上是不受信任的

看看Qualys ssl测试,有人说这个链是不完整的。我不知道怎么办

这是我的Nginx配置

server {
listen 80;
server_name **********.com;
return 301 https://**********.com$request_uri;
}

server {
listen 443 ssl;
server_name **********.com;
root /home/forge/**********.com/public;

# FORGE SSL (DO NOT REMOVE!)
ssl on;
ssl_certificate /etc/nginx/ssl/**********.com/1086/server.pem;
ssl_certificate_key /etc/nginx/ssl/**********.com/1086/server.key;

index index.html index.htm index.php;

charset utf-8;

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt  { access_log off; log_not_found off; }

access_log off;
error_log  /var/log/nginx/**********.com-error.log error;

error_page 404 /index.php;

location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
}

location ~ /\.ht {
    deny all;
}
}
有人能帮忙吗?我已经拔头发好几天了

看看Qualys ssl测试,有人说这个链是不完整的。我不知道怎么

看起来您发送了错误的中间版本:

$ openssl s_client -connect cauterypens.com:443
CONNECTED(00000003)
depth=0 C = GB, OU = Domain Control Validated, CN = cauterypens.com
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 C = GB, OU = Domain Control Validated, CN = cauterypens.com
verify error:num=27:certificate not trusted
verify return:1
depth=0 C = GB, OU = Domain Control Validated, CN = cauterypens.com
verify error:num=21:unable to verify the first certificate
verify return:1
---
Certificate chain
 0 s:/C=GB/OU=Domain Control Validated/CN=cauterypens.com
   i:/C=BE/O=GlobalSign nv-sa/CN=AlphaSSL CA - SHA256 - G2
 1 s:/O=AlphaSSL/CN=AlphaSSL CA - G2
   i:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
 ...
证书0的主题是
CN=cauterypens.com
。证书0的颁发者是
CN=AlphaSSL CA-SHA256-G2

中间证书应该是链中的下一个证书。但是,您发送的不是
CN=alphasslca-SHA256-G2
,而是
CN=alphasslca-G2
。注意名称中缺少
SHA256

要解决此问题,您应该从中获取
alphasslca-SHA256-G2
。它有thumprint指纹
ae:bf:32:c3:c8:32:c7:d7:bc:55:99:b1:aa:05:fb:6c:f4:d9:29:4c


相关:CA是
CN=GlobalSign根CA
。这是
GlobalSign根目录R1
下载。下载它并将其保存到文件中(其名称为
Root-R1.crt
)。它已经在PEM编码中了。然后,您应该能够通过以下方式验证链:

$ openssl s_client -connect cauterypens.com:443 -CAfile Root-R1.crt
...
Verify OK (0)
如果没有验证,那么您还有其他问题。在继续之前解决问题

看看Qualys ssl测试,有人说这个链是不完整的。我不知道怎么

看起来您发送了错误的中间版本:

$ openssl s_client -connect cauterypens.com:443
CONNECTED(00000003)
depth=0 C = GB, OU = Domain Control Validated, CN = cauterypens.com
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 C = GB, OU = Domain Control Validated, CN = cauterypens.com
verify error:num=27:certificate not trusted
verify return:1
depth=0 C = GB, OU = Domain Control Validated, CN = cauterypens.com
verify error:num=21:unable to verify the first certificate
verify return:1
---
Certificate chain
 0 s:/C=GB/OU=Domain Control Validated/CN=cauterypens.com
   i:/C=BE/O=GlobalSign nv-sa/CN=AlphaSSL CA - SHA256 - G2
 1 s:/O=AlphaSSL/CN=AlphaSSL CA - G2
   i:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
 ...
证书0的主题是
CN=cauterypens.com
。证书0的颁发者是
CN=AlphaSSL CA-SHA256-G2

中间证书应该是链中的下一个证书。但是,您发送的不是
CN=alphasslca-SHA256-G2
,而是
CN=alphasslca-G2
。注意名称中缺少
SHA256

要解决此问题,您应该从中获取
alphasslca-SHA256-G2
。它有thumprint指纹
ae:bf:32:c3:c8:32:c7:d7:bc:55:99:b1:aa:05:fb:6c:f4:d9:29:4c


相关:CA是
CN=GlobalSign根CA
。这是
GlobalSign根目录R1
下载。下载它并将其保存到文件中(其名称为
Root-R1.crt
)。它已经在PEM编码中了。然后,您应该能够通过以下方式验证链:

$ openssl s_client -connect cauterypens.com:443 -CAfile Root-R1.crt
...
Verify OK (0)

如果没有验证,那么您还有其他问题。在继续之前解决问题。

您完全正确。在读了你的答案大约3分钟后,它被修复了。非常感谢。这个在线工具为您下载所有中间证书:您完全正确。在读了你的答案大约3分钟后,它被修复了。非常感谢。此在线工具为您下载所有中间证书: