一个空行引起的阿里云负载均衡上部署https证书的问题
2016-07-27 19:54
615 查看
今天在阿里云上购买了WoSign的https证书,在证书签发后,在控制台下载证书文件,一共有2个文件,一个是.key文件(私钥文件),一个是.pem文件(证书文件)。
然后在阿里云负载均衡“证书管理”控制台中创建证书:
将.pem文件中的内容复制/粘贴到上面的“证书内容”文本框中,将.key文件中的内容复制/粘贴到上面的“私钥”文本框中,创建证书总是失败。
查看.pem文件中的内容发现有3个证书(3段以“-----BEGIN CERTIFICATE-----”开始以“-----END CERTIFICATE-----”结束的内容),于是试了试改为只复制/粘贴第1个证书,结果竟然创建成功了。
然后配置到对应的负载均衡上,用https访问站点,Chrome下正常,Safari下正常,IE下正常,唯独Firefox不行。
Firefox中出现如下的错误提示:
很是奇怪,以为是证书本身的问题,于是联系WoSign客服,客服说是因为证书链不完整。
接着想到要先验证一下证书文件本身是否有问题,于是将这个证书的.key与.pem文件部署到一台我们自己的nginx服务器上,Firefox中访问正常,说明证书文件本身没问题。
那问题应该与我们只用了.pem文件中3个证书中的1个有关,但是用3个证书在阿里云负载均衡上配置总是失败,于是向阿里云客服反馈了这个情况。阿里云客服说3个证书都要添加,而且证书之间不能有空行。“证书之间不能有空行”立马提醒了我们,再次查看.pem文件,发现第1个证书与第2个证书之间果然有个空行:
删除空行后进行配置,问题立马解决。
问题解决后的感想:要是阿里云直接兼容这中带空行的证书,就不用这么折腾了,而且这个证书就是在阿里云上生成的。
然后在阿里云负载均衡“证书管理”控制台中创建证书:
将.pem文件中的内容复制/粘贴到上面的“证书内容”文本框中,将.key文件中的内容复制/粘贴到上面的“私钥”文本框中,创建证书总是失败。
查看.pem文件中的内容发现有3个证书(3段以“-----BEGIN CERTIFICATE-----”开始以“-----END CERTIFICATE-----”结束的内容),于是试了试改为只复制/粘贴第1个证书,结果竟然创建成功了。
然后配置到对应的负载均衡上,用https访问站点,Chrome下正常,Safari下正常,IE下正常,唯独Firefox不行。
Firefox中出现如下的错误提示:
ing.cnblogs.com uses an invalid security certificate. The certificate is not trusted because the issuer certificate is unknown. The server might not be sending the appropriate intermediate certificates. An additional root certificate may need to be imported. Error code: SEC_ERROR_UNKNOWN_ISSUER
很是奇怪,以为是证书本身的问题,于是联系WoSign客服,客服说是因为证书链不完整。
接着想到要先验证一下证书文件本身是否有问题,于是将这个证书的.key与.pem文件部署到一台我们自己的nginx服务器上,Firefox中访问正常,说明证书文件本身没问题。
那问题应该与我们只用了.pem文件中3个证书中的1个有关,但是用3个证书在阿里云负载均衡上配置总是失败,于是向阿里云客服反馈了这个情况。阿里云客服说3个证书都要添加,而且证书之间不能有空行。“证书之间不能有空行”立马提醒了我们,再次查看.pem文件,发现第1个证书与第2个证书之间果然有个空行:
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----
删除空行后进行配置,问题立马解决。
问题解决后的感想:要是阿里云直接兼容这中带空行的证书,就不用这么折腾了,而且这个证书就是在阿里云上生成的。
相关文章推荐
- UNIX网络编程——进程间通信
- TCP服务器搭建(代码实现)及SO_REUSEADDR解析
- 一次完整的HTTP事务
- HTTP基本认证(Basic Authentication)的JAVA示例
- HTTP Basic Authentication认证
- bzoj1834(网络流+费用流)
- 网络基础
- poj1719
- HttpURLConnection 上传图片(文件)到服务器
- 模块度Q——复杂网络社区划分评价标准
- 在Rxjava+Retrofit 2中检查网络连接和显示加载框
- Android 一个改善的okHttp封装库
- 获取指定网站的网络时间
- TCP协议详解(含长连接短连接的详解)
- 在android AndroidManifest.xml文件中怎样设置访问网络的权限
- Linux 高精確的時序(sleep, usleep,nanosleep) from:http://blog.sina.com.cn/s/blog_533ab41c0100htae.html
- win7连接共享“请检查名称的拼写.否则网络可能有问题”
- UDP网络编程
- IOS使用Reachability实时检测网络连接状况
- C#利用HttpWebRequest,Stream,HttpWebResponse,StreamReader获取post返回的数据