SSL站点和浏览器警告

nat*_*ape 2 ssl https

我有一个使用wordpress的电子商务网站naturalvape.us.hostgator是托管的地方.

我已经安装了ssl认证.我的问题是我的网站显示了一个警告标志并说它没有安全保障.hostgator的人给了我一个链接到这个网站强制ssl/https.显然,需要某种类型的代码才能重定向到安全站点.

为什么我在浏览器中有警告?

如何将网站重定向到https?

jww*_*jww 11

为了扩展Boan的评论,您的证书链条格式不正确.

您只发送最终实体(服务器)证书; 并且您需要发送最终实体证书和Comodo所需的两个中间证书.

您需要发送中间证书以避免"哪个目录"问题.它是PKI中众所周知的问题.这就是客户所经历的 - 他们不知道去哪里获得缺少的中间证书.

以下是检查方法:

$ openssl s_client -connect naturalvape.us:443 -showcerts
CONNECTED(00000003)
depth=0 OU = Domain Control Validated, OU = PositiveSSL, CN = naturalvape.us
verify error:num=20:unable to get local issuer certificate
verify return:1
...
---
Certificate chain
 0 s:/OU=Domain Control Validated/OU=PositiveSSL/CN=naturalvape.us
   i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
-----BEGIN CERTIFICATE-----
MIIFUDCCBDigAwIBAgIRAOIeCA8uCx0hLc8AQSHiak8wDQYJKoZIhvcNAQELBQAw
gZAxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO
...
t3d8prtVxlUd9xp0AEXPOLI1uKQlDKNCOQlHFrINkZbwwg6hmomiFXx5IpfVSb9U
XIqr/cZP7xtD2oiYCJ2giJ7dHLU=
-----END CERTIFICATE-----
---
Server certificate
subject=/OU=Domain Control Validated/OU=PositiveSSL/CN=naturalvape.us
issuer=/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
---
No client certificate CA names sent
---
...
Run Code Online (Sandbox Code Playgroud)

请注意,有一个证书的主题是CN=naturalvape.us(主题是显示屏中的"s:").发行人是CN=COMODO RSA Domain Validation Secure Server CA,但缺少中间证书(发行人是显示器中的"i:"部分).

为了解决这个问题,你需要获取COMODO RSA域验证安全服务器CA[中间体#2(SHA-2)的Comodo RSA域验证安全服务器CA.

中间证书已经过PEM编码.获取服务器证书,并附加COMODO RSA域验证安全服务器CA中间件.这意味着文件中将有两个证书.它们看起来像:

-----BEGIN CERTIFICATE-----
<server certificate>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<intermediate certificate>
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)

在服务器证书下将其插入您的站点.


不幸的是,仅仅添加COMODO RSA域验证安全服务器CA还不够.您还需要添加COMODO RSA证书颁发机构.它的另一个缺少中间证书.你可以得到COMODO RSA认证机构[中间体#1(SHA-2)] COMODO RSA认证机构.

所以它们看起来像:

-----BEGIN CERTIFICATE-----
<end entity/server certificate>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<intermediate certificate #2>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<intermediate certificate #1>
-----END CERTIFICATE-----
Run Code Online (Sandbox Code Playgroud)

用户(依赖方)仍然需要/信任最后丢失的中间件的发行者(最后丢失的中间件是COMODO RSA域验证安全服务器CA).最后丢失的中间件的发行者是CN=AddTrust External CA Root,它应该内置于浏览器或其中一个cacerts.pem包.


将两个缺少的中间证书与服务器证书连接(并上传)后,可以按如下方式进行测试.

首先,下载信任锚.它CN=AddTrust External CA Root,它可以在[KMCS] AddTrust外部CA根目录中找到.

第二,运行openssl s_client验证.注意添加CAfile选项和"验证结果OK(0)".

$ openssl s_client -connect naturalvape.us:443 -CAfile addtrustexternalcaroot_kmod.crt 
CONNECTED(00000003)
...
Start Time: 1407558078
Timeout   : 300 (sec)
Verify return code: 0 (OK)
Run Code Online (Sandbox Code Playgroud)