补坑:HTTPS在tomcat服务器上的部署

栏目: Java · 发布时间: 7年前

内容简介:从今天起,开坑补坑这个模块。这里的坑指的是问题或一些bug,在编程开发的过程中有着数不尽的坑等着我们去跳,要是不把这些坑给填了的话,过几天可能还会再掉坑里。好了,话不多说,开始补坑环节。今天写的是如何在tomcat服务器上配置HTTPS协议,也就是将HTTP访问转变成HTTPS访问。

从今天起,开坑补坑这个模块。这里的坑指的是问题或一些bug,在编程开发的过程中有着数不尽的坑等着我们去跳,要是不把这些坑给填了的话,过几天可能还会再掉坑里。

好了,话不多说,开始补坑环节。

今天写的是如何在tomcat服务器上配置HTTPS协议,也就是将HTTP访问转变成HTTPS访问。

首先我们来了解一下HTTP和HTTPS两个协议的含义和区别。

补坑:HTTPS在tomcat服务器上的部署

HTTP即超文本传输协议(HyperText Transfer Protoco)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。而HTTPS即安全套接字层超文本传输协议(Hyper Text Transfer Protocol over Secure Socket Layer)是以安全为目标的HTTP通道,简单讲是HTTP的安全版。

HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等。

HTTPS相对于HTTP具有更高的安全性。为了数据传输的安全,HTTPS是在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。

对于HTTP和HTTPS两者的区别大致如下:

一、HTTPS协议需要到ca申请证书,一般免费证书很少,需要交费。

二、HTTP是超文本传输协议,信息是明文传输,HTTPS 则是具有安全性的SSL加密传输协议。

三、HTTP和HTTPS使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

四、HTTP的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比HTTP协议安全。

以下以我的博客网站配置HTTPS为例,讲一下tomcat服务器上配置HTTPS协议的过程。

首先,申请SSL证书。由于我的博客网站服务器是腾讯的,我的SSL证书是在腾讯云上申请的。

补坑:HTTPS在tomcat服务器上的部署

申请流程较为简单,输入你SSL证书所要帮定的域名(比如我的域名是www.wrebuild.cn)并填上私钥密码即可。

补坑:HTTPS在tomcat服务器上的部署

申请成功之后,等待审核完成,一般审核很快,我申请的审核时间是不到半小时。审核成功后,将你所申请域名对应的SSL证书下载下来。解压后如下:

补坑:HTTPS在tomcat服务器上的部署

由于申请证书时我有填写私钥密码,而且我博客网站用的是tomcat的服务器,所以我用的是tomcat文件夹里面的密钥库 www.wrebuild.cn.jks(一般格式为 www.domain.com.jks)。

进入服务器终端tomcat的conf目录,并将密钥库 www.wrebuild.cn.jks放到该目录下

补坑:HTTPS在tomcat服务器上的部署

然后配置该目录下的server.xml文件

<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" 
    maxThreads="150" scheme="https" secure="true" 
    keystoreFile="conf/www.domain.com.jks" 
    keystorePass="changeit" 
    clientAuth="false" sslProtocol="TLS" /> 

补坑:HTTPS在tomcat服务器上的部署

再把原本HTTP协议80端口的redirectPort改成ssl的connector的端口443(HTTPS端口),配置效果如下:

补坑:HTTPS在tomcat服务器上的部署

接着配置在同目录下的web.xml。在</welcome-file-list>后面,</web-app>,也就是倒数第二段里,加上这样一段

<login-config> 
    <!-- Authorization setting for SSL --> 
    <auth-method>CLIENT-CERT</auth-method> 
    <realm-name>Client Cert Users-only Area</realm-name> 
    </login-config> 
    <security-constraint> 
    <!-- Authorization setting for SSL --> 
    <web-resource-collection> 
    <web-resource-name>SSL</web-resource-name> 
    <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <user-data-constraint> 
    <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint> 
    </security-constraint> 

这一步目的是让非ssl的connector跳转到ssl的connector去,配置效果如下

补坑:HTTPS在tomcat服务器上的部署

完成上面的操作后,重启一下服务器。

在浏览器访问配置好的域名。

补坑:HTTPS在tomcat服务器上的部署

跳转后如下:

补坑:HTTPS在tomcat服务器上的部署

到此 ,tomcat服务器上配置HTTPS协议完成。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

部落:一呼百应的力量

部落:一呼百应的力量

高汀 (Godin.S.) / 刘晖 / 中信出版社 / 2009-7 / 26.00元

部落指的是任何一群人,规模可大可小,他们因追随领导、志同道合而相互联系在一起。人类其实数百万年前就有部落的出现,随之还形成了宗教、种族、政治或甚至音乐。 互联网消除了地理隔离,降低了沟通成本并缩短了时间。博客和社交网站都有益于现有的部落扩张,并促进了网络部落的诞生——这些部落的人数从10个到1000万个不等,他们所关注的也许是iPhone,或一场政治运动,或阻止全球变暖的新方法。 那么......一起来看看 《部落:一呼百应的力量》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器