tomcat nginx SSL证书升级https协议

本文详细描述了如何在项目中使用Tomcat和Nginx进行HTTPS升级,包括获取SSL证书、配置Tomcatserver.xml和Nginx的nginx.conf,以确保项目的安全性并兼容HTTP请求。
摘要由CSDN通过智能技术生成

背景:项目架构比较老旧,一些项目tomcat容器部署,一些项目是springboot  jar包发布。项目要求公网暴漏域需要添加https协议以确保安全性。

关于https升级方案有多种。以tomcat添加ssl证书或者nginx添加ssl证书转发https请求至http请求。

tomcat升级方式

1.首先需要获取ssl证书,根据域名去申请ca证书,这步可自行谷歌。

2.新建目录cret并将证书以及秘钥(秘钥非必须)上传至\tomcat8\cert某个目录下。

3.修改tomcat配置文件  tomcat8\conf\server.xml

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="1000" acceptCount="1000" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" 
			   keystoreFile="/appuser/tomcat8/cert/www.XXXXX.com.pfx"  //证书放置路径
			   keystoreType="PKCS12"  //证书类型
			   keystorePass="XXXXX" //证书密码
			   ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256" />
注意的点:

port 对应的是https要部署的端口。https端口默认是443端口请求,根据业务自行确定部署端口。

keystoreFile="/appuser/tomcat8/cert/www.XXXXX.com.pfx"  //证书放置路径
keystoreType="PKCS12"                                                        //证书类型
keystorePass="XXXXX"                                                          //证书秘钥

通过上述配置,重启tomcat容器项目就可以通过https请求访问。

如需兼容http请求则需要再配置一个Connector 配置。

nginx升级方式

1.首先需要安装nginx 这块参考nginx安装

2.证书找一个目录放置,nginx需要证书秘钥一起放至目录下。(nginx证书与tomcat证书是不同类型的。这块在申请下载证书时自行区分

3.配置nginx.conf配置文件

# HTTPS server
    
    server {
        listen       2000 ssl;
        server_name  xxxxxxxxxxxx;

        ssl_certificate      /usr/local/etc/www.XXXX.com.pem;
        ssl_certificate_key  /usr/local/etc/www.XXXX.com.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location /xxx {
            proxy_pass http://IP:端口号/请求路径;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }

	
    }
注意的点:

listen                              监听的端口号
server_name                 当前服务器域名

ssl_certificate                nginx证书
ssl_certificate_key        证书秘钥

启动nginx此时就能将 https 请求在2000端口上的url通过nginx代理转发的形式把所有http的请求升级成https协议。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值