文章目录
- 背景
- 证书放在负载均衡交换机上
- 证书由交换机生成。
- 应用部分的改造
- 证书放在tomcat上
- 1 使用keytool制作临时证书
- 2 tomcat的server.xml开放SSL访问
背景
项目有两个模块要放公网上,并且需要采用https安全加密的方式。 域名由局方提供,我们负责应用层面的改造。
证书放在负载均衡交换机上
证书由交换机生成。
应用部分的改造
仅仅在Host节点下 增加虚拟路径
代码语言:javascript复制<Context path="" docBase="../webapps/entel-self/WEB-INF/classes/static/entel-self" debug="0" reloadable="true" crossContext="true" />
访问单个节点,输入 http://ip:port 就可以访问到首页了。
证书放在tomcat上
我们的组网图,在应用的server前面有 DP的负载均衡交换机,在这里仅仅让交换机做转发,不负责https部分,仅仅是分发到tomcat的https
1 使用keytool制作临时证书
代码语言:javascript复制$JAVA_HOME/bin/keytool -genkey -v -alias tomcat -keyalg RSA -keystore /drm/drm/webserver/tomcat.keystore -validity 36500 -keysize 2048
- 默认的证书有效期时90天 -validity修改有效期
- 为了方便迁移环境,我们把证书和应用放在一起 通过-keystore参数
这个证书仅仅是不受信任的证书,如果商用,请购买证书,提供域名和企业许可证。
2 tomcat的server.xml开放SSL访问
这里仅仅是做了个单向认证。
代码语言:javascript复制<Connector
protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="/drm/drm/webserver/tomcat.keystore" keystorePass="whateveruwant"
clientAuth="false" sslProtocol="TLS"/>
同时Host节点下 增加虚拟路径
代码语言:javascript复制<Context path="" docBase="../webapps/drmselfservice" debug="0" reloadable="true" crossContext="true" />
重启tomcat , 如果输入 https://IP:8443 能访问到对应的页面,说明配置成功.
注意: 如果访问不到,请确认防火墙是否开放了8443端口的访问权限
集成同事在交换机上修改了配置,开放了HTTPS的访问方式,然后直接访问域名就可以访问首页了