前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >nginx+tomcat配置ssl实现https

nginx+tomcat配置ssl实现https

作者头像
WindCoder
发布于 2018-09-20 07:57:15
发布于 2018-09-20 07:57:15
4.6K00
代码可运行
举报
文章被收录于专栏:WindCoderWindCoder
运行总次数:0
代码可运行

前言

本文主体为单向认证的配置方式,生成证书的方式放于最后附录里面。

实例中tomcat版本为tomcat9。

纯tomcat篇

仅为tomcat时,进入tomcat目录/conf/server.xml中,添加如下代码(具体参数请根据实际情况修改),并重启tomcat即可。若使用自定义的证书查看时使用ie为佳,chrome会直接屏蔽域名访问的链接(提示"此网站无法提供安全连接",以致纠结好长时间以为自己配置失败了呢= =),ip访问一般都会提示非安全链接,点击忽略继续就好。

关键代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true"  
       maxThreads="150" scheme="https" secure="true"  
       clientAuth="false" sslProtocol="TLS"   
       keystoreFile="C:\00Work\01Programming\01Java\JavaEE\localhost.keystore" keystorePass="123456"/>

clientAuth     false(单向认证)/true(双向认证)

keystoreFile    证书所在目录

keystorePass    创建证书“keystore”的密码

nginx+tomcat篇

nginx中在conf目录下的 nginx.conf文件中添加如下代码,tomcat目录/conf/server.xml中设置好相应domain即可。

关键代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 server {
      listen 443; 
      server_name domain;#要访问https的域名
      ssl on;
      root html;
      index index.html index.htm;
      ssl_certificate   C:/zhonya/keytool/ssl/domain.crt;
      ssl_certificate_key  C:/zhonya/keytool/ssl/domain.key;
      ssl_session_timeout 5m;
      ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
      ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
      ssl_prefer_server_ciphers on;
      location  / {
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		proxy_set_header Host $http_host;
		proxy_set_header X-Forwarded-Proto https;
		proxy_redirect off;
		proxy_connect_timeout      240;
		proxy_send_timeout         240;
		proxy_read_timeout         240;
		# note, there is not SSL here! plain HTTP is used
		proxy_pass http://domain

		proxy_set_header Upgrade $http_upgrade;  
		proxy_set_header Connection "upgrade";
      }
    }

附录

Java的keytool生成证书

方法一:

1、CMD命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "D:\wind\tomcat\keytool\tomcat.keystore"   -validity 36500

2.输入密码等相应内容

此处暂时不再过多叙述,具体的可查看:

http://lixor.iteye.com/blog/1532655

方法二:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
keytool -genkeypair -alias "server"  -keyalg "RSA" -keysize 1024 -keypass "windtomcat" -keystore D:\wind\tomcat\keytool\server.jks -storepass windtomcat -validity 36500 -dname "CN=域名1,CN=域名2,CN=域名3,OU=wind,O=SJ,L=test,ST=HB,C=CN"

据说这种方法可以生成多域名证书,由于当初在chrome中测试始终出现错误提示(本文开始时说的情况),最终没做过多验证。

参考地址:

http://www.xuebuyuan.com/371801.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-12-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
CAS Service 部署流程(包含hppts的配置)
一,通过maven 命令打成 war 包 然后部署到tomcat 这步直接跳过了 很简单 百度搜索一样就可以
全栈程序员站长
2022/11/10
9140
CAS Service 部署流程(包含hppts的配置)
CAS单点登录-https配置(三)
把tomcat.keystore拷贝到sso-server\src\main\resources下
用户1212940
2022/04/13
1.3K0
CAS单点登录-https配置(三)
应用域名改造-https证书部分
项目有两个模块要放公网上,并且需要采用https安全加密的方式。 域名由局方提供,我们负责应用层面的改造。
小小工匠
2021/08/16
8950
Tomcat配置https方式访问
收假回来发现Oa在企业微信工作台跳转失败,首先抓包发现跳转https正常,http异常,自以为找到问题所在,开始干活配置Https
高久峰
2023/10/07
3720
tomcat服务的简单部署
1.tomcat安装 安装JDK wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a
陪你听风
2021/03/31
4620
https协议配置
前言:https协议配置,一般用于针对政府部门的终端有网络防火墙、网络过滤器等,使系统中的一些请求被拦截(劫持),原因一般为在请求头中有存在敏感信息,被网络过滤的监听器发现即拦截,可能会造成强退、强制刷新等现象;改为https协议后,请求里的通讯信息进行过加密处理,进而不会被拦截。
陈哈哈
2020/07/06
8050
https协议配置
【Tomcat】Tomcat配置https(免费证书)
记一次因各种需求在Linux中配置tomcat的https自签发证书过程: SSL证书简介 1.公开可信认证机构 例如CA,但是申请一般是收费的,一般几百到几千一年. 在这里可以给你们介绍一下腾讯云截止到目前还有免费一年的CA证书服务,可以用一下。 2.自己生成 虽然安全性不是那么高,但胜在成本低,我目前只是做个测试,所以这篇文章里讲的是自生成的。 证书配置过程 1.环境准备 为了成功配置https,你需要具备以下环境: java jdk tomcat 2.JKS格式证书生成 1).打开你的终端或者命令行,输入:
Java架构师必看
2021/06/10
2.5K0
【Tomcat】Tomcat配置https(免费证书)
Tomcat 配置局域网内的Https
Tomcat 配置局域网内的Https 1、生成证书 可以使用jdk自带的keytool生成证书 keytool -genkeypair -alias "tomcat" -keyalg "RSA"
季鸟猴
2022/11/14
1.1K0
Tomcat 配置局域网内的Https
【Tomcat】Tomcat配置https(免费证书)
记一次因各种需求在Linux中配置tomcat的https自签发证书过程: SSL证书简介 1.公开可信认证机构 例如CA,但是申请一般是收费的,一般几百到几千一年. 在这里可以给你们介绍一下腾讯云截止到目前还有免费一年的CA证书服务,可以用一下。 2.自己生成 虽然安全性不是那么高,但胜在成本低,我目前只是做个测试,所以这篇文章里讲的是自生成的。 证书配置过程 1.环境准备 为了成功配置https,你需要具备以下环境: java jdk tomcat 2.JKS格式证书生成 1).打开你的终端或者命令行,输入:
全栈程序员站长
2022/06/29
1.7K0
【Tomcat】Tomcat配置https(免费证书)
tomcat https 证书生成与配置
到tomcat的安装目录,找到conf下的server.xml文件,配置https信息
用户2923249
2022/11/22
2.2K0
Tomcat服务器配置Https协议
修改Tomcat配置文件: 打开Tomcat安装目录/conf/server.xml,修改如下配置,并取消注释 注:这里以Tomcat8.0为例,8.5以上配置请另行百度
sr
2019/05/23
4.2K1
Tomcat开启SSL 8443端口的方法
TOMCAT_HOME:/usr/local/tomcat7,安装方法参考:windows和linux 下将tomcat注册为服务
云知识Online
2018/05/03
4.3K0
Tomcat开启SSL 8443端口的方法
tomcat配置https | 自签发证书配置
PS F:\开发工具\apache-tomcat-9.0.11\conf> keytool -genkeypair -keyalg RSA -keysize 2048 -sigalg SHA1withRSA -validity 36
WindWant
2020/09/11
1.5K0
tomcat配置https | 自签发证书配置
Windows 环境 Tomcat 的 HTTPS 单向认证和双向认证的配置
单向认证,说的是浏览器验证服务器的真实性,双向认证是服务器也验证浏览器用户的真实性。 1、使用keytool生成keystore,命令如下:
前Thoughtworks-杨焱
2021/12/08
1.5K1
Tomcat的原理与用法初步使用
Tomcat 是一个开源的 Java Servlet 容器,由 Apache 软件基金会(ASF)开发并维护。它实现了 Java Servlet、JavaServer Pages (JSP)、Java Expression Language (JSTL) 和 Java WebSocket 技术,广泛用于开发和部署 Java Web 应用程序。
炒香菇的书呆子
2024/09/28
1760
自己使用keytool生成证书 和 购买 商业SSL证书,然后并配置Tomcat 的 https
目前证书有以下常用文件格式:JKS(.keystore),微软(.pfx),PEM(.key + .crt)。其中,tomcat使用JKS格式,nginx使用PEM格式.
HaC
2020/12/30
2.4K0
自己使用keytool生成证书 和 购买 商业SSL证书,然后并配置Tomcat 的 https
Tomcat, Jre 证书相关
1. Tomcat中的证书 1.1 生成keystore # 口令在生成证书时,需要使用 ➜ keytool -genkeypair -alias cas.example.org -keyalg RS
lpe234
2020/07/27
1.1K0
Nginx——ubuntu安装Nginx并配置https
介绍: 我们在部署应用时,希望用到 Nginx ,并配置上 https 。我在网上看了很多文章,感觉都不是很系统。因此写下此文,以备日后使用。
凡人飞
2020/09/21
4.8K3
Nginx——ubuntu安装Nginx并配置https
Nginx+SSL+Tomcat配置SSL证书(Nginx+SSL做前端,后端使用tomcat)
下面解决方案是浏览器和 Nginx 之间使用 HTTPS 通讯,而 Nginx 到 Tomcat 通过 proxy_pass 使用标准 HTTP 连接。
BUG弄潮儿
2022/06/30
1.8K0
Nginx+SSL+Tomcat配置SSL证书(Nginx+SSL做前端,后端使用tomcat)
HTTPS环境下Nginx反向代理Tomcat的正确配置方法
如图,很多应用场景下,我们都会选择nginx作为tomcat的前端,进行后端服务器的负载均衡以及一些流量处理工作,同时,HTTPS的配置也一般放在Nginx上完成,而Nginx和后端服务器采用HTTP通信。
你的明明呐丶
2022/06/27
2.2K0
HTTPS环境下Nginx反向代理Tomcat的正确配置方法
相关推荐
CAS Service 部署流程(包含hppts的配置)
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验