背景
由于项目需求,安全起见,需要将之前的http接口访问变成https访问,所以需要配置SSL证书。项目的架构是这样的:
基本架构是硬负载(ReadWhere)+ 软负载(Nginx)+ Tomcat集群,现在的问题是SSl证书要配置在哪里,直接配置在硬负载上?还是分别配置在Nginx和Tomcat上?还是其他的配置方法呢?
首先在硬负载上配置放弃了,然后通过在网上查找资料,发现可以只在Nginx上配置证书,就是说Nginx接入使用Https,而Nginx与Tomcat之间使用Http进行衔接,这样就游了一个整体思路。
关于SSL证书
关于SSL证书这里简单进行介绍,也是因为项目需要,进行了简单的了解。
SSL证书分为大致分为三种,域名级(DV)、企业级(OV)、增强级(EV),安全性以及价格依次增加。根据自己的需求进行选择,个人使用可以使用DV,便宜;企业用的话一般使用OV,特殊情况下使用EV。下面是几家云服务商的OV SSL证书的价格对比,Symantec和GeoTrust被选用的比较多,都属于赛门铁克旗下。
云服务商 | 证书品牌 | 价格 |
---|---|---|
阿里云 | Symantec | 4000/年 |
阿里云 | GeoTrust | 2062.4/年 |
腾讯云 | Symantec | 5000/年 |
腾讯云 | GeoTrust | 2850/年 |
西部数码 | Symantec | 3880/年 |
西部数码 | GeoTrust | 2137/年 |
SSL证书配置
由于Nginx对于SSL证书配置的支持才使得这种实现方式成为了可能,不得不感叹Nginx的强大。
证书准备
Nginx配置需要.pem/.crt证书 + .key秘钥,如果您现在拥有的是其他形式的证书,请按照相关说明转化成要求的证书类型,否则是不能完成证书的配置的。一般购买商家都会有相应的转换工具。
准备好了之后,将证书和秘钥放到Nginx的conf目录下(也就是跟配置文件nginx.conf在同一个目录),这里特别需要注意:
新闻热点
疑难解答