我有一个应用程序在Android版Chrome上获取SSL警告,事实certificate我需要从RapidSSL添加我的CA Bundle。 我没有看到用Laravel Forge做这个的方法。 我怎样才能做到这一点?
我的nginxconfiguration是由Laravel Forge自动生成的,如下所示:
# FORGE SSL (DO NOT REMOVE!) ssl on; ssl_certificate /etc/nginx/ssl/mydomain.com/1646/server.crt; ssl_certificate_key /etc/nginx/ssl/mydomain.com/1646/server.key;
我对https://cheapsslsecurity.com/中的comodo证书有同样的问题。 起初,我只通过laravel forge web界面(www_timtimer_at.crt)安装了域名特定的证书,导致一个不信任的页面。
绊倒@Citizen的答案和后Nginx没有提供中间证书帮助我解决它。 看到这个帖子也用于调试说明。
使用openssl s_client -connect www.timtimer.at:443
来检查证书链。 (正如我正在使用Windows,我只是用git bash来使用这个命令)。 它应该是一个像下面这样的真正的链(s = subject,i = issuer)。 所以你总是有一个发行人的主题。 这个发行人应该是另一个主管部门发行的下一个主题等等。 最后一个主题是本身的发行者。
起初我的证书链如下所示:
证书链
0 s:/ OU =域控制验证/ OU =正面SSL / CN = http://www.timtimer.at
i:/ C = GB / ST =更大的曼彻斯特/ L =索尔福德/ O = COMODO CA有限公司/ CN = COMODO RSA域验证安全服务器CA
验证返回码是:21(无法验证第一个证书)。
检查你的服务器配置文件(我正在使用Laravel伪造nginx,所以我的文件将是/ etc / nginx / sites-available / default来获取你正在使用的证书的位置。
# FORGE SSL (DO NOT REMOVE!) ssl_certificate /etc/nginx/ssl/default/2658/server.crt; ssl_certificate_key /etc/nginx/ssl/default/2658/server.key;
所以在我的情况下,证书存储在/etc/nginx/ssl/default/2658/server.crt中 。 现在编辑这个文件,并确保你把所有需要的证书在那里。 我按照以下顺序从zip文件中添加了证书的内容:
该文件应该如下所示
-----BEGIN CERTIFICATE----- ... (www_timtimer_at.crt) -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... (COMODORSAAddTrustCA.crt) -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... (COMODORSADomainValidationSecureserverCA.crt) -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... (AddTrustExternalCARoot.crt) -----END CERTIFICATE-----
在/etc/init.d/nginx restart
一切看起来都不错。
在执行openssl s_client -connect www.timtimer.at:443
后,我收到了以下证书链 :
证书链
0 s:/ OU =域控制验证/ OU =正面SSL / CN = http://www.timtimer.at
i:/ C = GB / ST =更大的曼彻斯特/ L =索尔福德/ O = COMODO CA有限公司/ CN = COMODO RSA域验证安全服务器CA
1 s:/ C = GB / ST =更大的曼彻斯特/ L = Salford / O = COMODO CA有限/ CN = COMODO RSA域验证安全服务器CA
i:/ C = GB / ST =更大的曼彻斯特/ L = Salford / O = COMODO CA有限公司/ CN = COMODO RSA认证机构
2 s:/ C = GB / ST =更大的曼彻斯特/ L = Salford / O = COMODO CA有限公司/ CN = COMODO RSA认证机构
i:/ C = SE / O = AddTrust AB / OU = AddTrust外部TTP网络/ CN = AddTrust外部CA根
3 s:/ C = SE / O = AddTrust AB / OU = AddTrust外部TTP网络/ CN = AddTrust外部CA根
i:/ C = SE / O = AddTrust AB / OU = AddTrust外部TTP网络/ CN = AddTrust外部CA根
验证返回码是:19(证书链中的自签名证书)。
好的,所以我通过下面的方法解决了这个问题:
https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=AR1549
https://www.digicert.com/ssl-support/pem-ssl-creation.htm
它的工作!