Web服务器群集:Tomcat配置https证书

文章详细介绍了SSL的概念和优势,HTTPS与HTTP的区别,以及如何在Tomcat中配置HTTPS证书和强制使用HTTPS。通过生成JKS格式证书,修改Tomcat的server.xml配置文件,并调整web.xml以实现HTTP到HTTPS的重定向,确保了数据传输的安全性和服务器的可信度。
摘要由CSDN通过智能技术生成

目录

一、理论

1.SSL

2.HTTPS协议和HTTP协议的区别

3.https证书配置

4.tomcat强制使用https

二、实验

1.https证书配置过程

 2.tomcat强制使用https

三、总结


一、理论

1.SSL

(1)概念

SSL是网络加密传输协议,是支持在网络服务器(主机)与网页浏览器(客户端)间建立加密连接的标准技术。当网站安装SSL数字证书之后,可通过https访问网站,浏览器地址栏显示“锁的标识”,点击锁型标识显示单位/个人认证信息,这种证书也是类似于驾驶证、护照和营业执照的电子副本,因为配置在服务器上,也称为SSL服务器证书。

(2)优势

提升企业形象当企业网站安装了一个权威证书签发机构签发的ssl证书,能够突显网站的专业性,而且还能提升网站访问者的信任度,大大提升企业的形象和可信度。
提升网站访问者的信任度若你的网站需要使用个人信息来登录,那就必须要安装ssl证书,访问者看到他们的个人信息能够被很好地保护,肯定会加深对网站的信任。
吸引更多的顾客当线销售网站安装了ssl证书之后,那么肯定会吸引更多的顾客前来购买并且付款,因为对于他们来说,ssl证书也算是一重保障。

2.HTTPS协议和HTTP协议的区别

(1)http
http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。http的连接很简单,是无状态的 。

(2)https

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

(3)不同点
http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。
HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议, 要比http协议安全。

3.https证书配置

(1)环境准备
为了成功配置https,你需要具备以下环境:
java jdk
tomcat

(2)JKS格式证书生成

JAVA中有自带的证书生成工具keytool,使用keytool来生成tomcat的证书

keytool -genkeypair -alias 'tomcat' -keyalg 'RSA' -keystore '/usr/local/tomcat/conf/tomcat.keystore'

命令解释:
alias: 别名 这里我起名testKey
keyalg: 证书算法,RSA
validity:证书有效时间,10年
keystore:证书生成的目标路径和文件名

(3)修改tomcat主配置文件server.xml

去掉注释,并将keystoreFile和keystorePass处替换成自己的证书路径和生成证书时的口令即可.
<Connector port="8443" protocol="HTTP/1.1"

              maxThreads="150" SSLEnabled="true" scheme="https" secure="true"

              clientAuth="false" sslProtocol="TLS" keystoreFile="本机的keystore路径" keystorePass="生成证书时的口令"  />

4.tomcat强制使用https

Tomcat既支持使用http协议,又支持使用https协议。https协议是一种不安全的传输协议,内容会以明文的形式进行传输,因此,在生产环境中,我们通常设置强制tomcat使用https协议,当有人使用http协议访问8080端口时,将该访问请求强制性重定向到8443端口上去。
要实现Tomcat对http协议的强制性重定向,我们需要打开conf目录下的web.xml文件,在文件的下方,添加如下内容:

<login-config>
	<auth-method>CLIENT-CERT</auth-method>
	<realm-name>Client Cert Users-only Area</realm-name>
</login-config>
<security-constraint>
	<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>  

二、实验

1.https证书配置过程

(1)JKS格式证书生成
① 打开终端或者命令行输入命令,回车,然后输入信息,其中秘钥库口令和秘要口令最好输入同一个,并且记下这个口令,其他按需填

 (2)在tomcat中配置https
把keystore证书上传到tomcat服务器上(tomcat在本地可以不移动),并记下证书所在路径。

/usr/local/tomcat/conf/tomcat.keystore

 
 ② 配置tomcat使用该证书,并开放8443端口,支持https。打开tomcat的主配置文件,找到8080端口的connector元素,在下面添加如下内容:

③ 关闭并重启tomcat

 监听端口

其中keystoreFile参数指定的是证书文件的位置,而keystorePass参数指定的是生成该证书的密码。tomcat就支持使用https了,并且监听端口为8443。重启Tomcat,发现Tomcat在启动后会监听8443端口,如下所示:

用浏览器进行访问

 2.tomcat强制使用https

(1)配置conf目录下的web.xml文件

(2)测试

启Tomcat服务,再次尝试使用HTTP协议访问Tomcat的8080端口,就会被重定向到8443端口,使用https协议。

三、总结

http和https使用的是完全不同的连接方式用的端口也不一样,前者是80,后者是443。
HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议, 要比http协议安全。

JAVA中有自带的证书生成工具keytool,用来生成tomcat的证书。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值