tomcat开发环境配置启用https

一、概念简介

Tomcat服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。

HTTP超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。

HTTPS和HTTP的区别

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

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

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

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

二、自签名(不安全)

网站出现"https证书不受信任"可能是网站使用了自签名证书。自签名证书是一种自己生成的https证书,没有通过合法第三方CA机构审核签发,任何人都可以生成(包括钓鱼网站),很容易被仿冒和伪造,容易受到中间人攻击,存在较大的安全风险,同时浏览器也不信任自签名证书,故部署了自签名证书的网站会出现"https证书不受信任"。(参考:自签名证书的安全隐患),如:

废话不多说,直接看怎么做:

1、新生成一个密钥库

1) D盘根目录新建winning文件夹

2)  cmd 找到jdk安装目录/bin如下图所示:

tomcat开发环境配置启用https_第1张图片

3)输入如下命令后回车

keytool -genkeypair -alias winningSafe -keyalg RSA -validity 36500 -storepass 123456 -keystore d:/winning/winning.keystore -v

-alias winningSafe :证书项的名字,必填项

-keyalg RSA:证书签名算法,tomcat建议RSA

-validity 36500:证书有效期,36500天,即100年

-storepass 123456:密钥库密码,也就是等下要生成的test.keystore的访问密码,妥善保管

-keystore ./test.keystore:要生成的文件的位置,d:/winning/winning.keystore表示存储在当前目录下

-v:该选项会显示比较详细的信息 

tomcat开发环境配置启用https_第2张图片

如上图所示第一项必须写你测试用的网址。至于图中提示的密钥口令,没什么用,就是将来访问那条密钥时要输入的口令,直接回车就行。

2、查看密钥库中的项

执行:keytool -list -keystore d:/winning/winning.keystore -v

tomcat开发环境配置启用https_第3张图片

3、导出证书

keytool -exportcert -alias winningSafe -file d:/winning/winning.cer -storepass 123456 -keystore d:/winning/winning.keystore -v

-alias winningSafe:要导出的证书的名字,即刚才创建的密钥的名字,即keytool -list时显示的名字

-file d:/data/winning.cer:要导出的证书的存储位置,这里我放在当前目录下

-keystore ./winning.keystore:刚才创建的密钥库的位置 

上述所有步骤所生成的2个文件如下

tomcat开发环境配置启用https_第4张图片

5、copy密钥库文件

将刚才生成的密钥库文件copy到你tomcat的conf目录,跟server.xml同级。注意:这里一定要放在你实际运行的tomcat的conf目录下。

tomcat开发环境配置启用https_第5张图片

6、修改tomcat配置文件

注意:以上配置是老版本tomcat的配置,从tomcat8.5开始tomcat更改了配置形式,如上配置估计在tomcat10的时候会完全废弃,在tomcat9.0下测试成功的配置如下:


要修改的配置文件是tomcat的server.xml文件。仔细看上面的配置,第一个Connector是默认就有的,这里只是把8080端口改成了公认的80端口,把8443端口改成了公认的443端口。第二个Connector默认是注释掉的,搜索8443就能找到,直接把上述第二个Connector粘贴到server.xml中第一个Connector的下面,方便管理。keystoreFile=”/conf/winning.keystore”就是刚才copy的文件的位置,可以自己改到其他位置。keystorePass=”123456”就是刚才创建密钥库时使用的口令。

7、重新启动tomcat,做收尾工作

  如果没启作用,需要重启电脑(服务器)

你可能感兴趣的:(tomcat开发环境配置启用https)