Tomcat配置SSL证书

 

 

 


一、免费证书


找到一个免费提供 HTTPS 证书申请、HTTPS 证书管理和 HTTPS 证书到期提醒服务的网站,分享给大家

申请免费证书

 

 

二、申请证书

 

2.1 填写域名,点击创建免费的SSL证书

Tomcat配置SSL证书_第1张图片

 

2.2 填写邮箱,点击创建

Tomcat配置SSL证书_第2张图片

 

1)证书类型默认为 RSA

RSA 和 ECC 有什么区别呢?可以通过下面几段文字了解一下。

HTTPS 通过 TLS 层和证书机制提供了内容加密、身份认证和数据完整性三大功能,可以有效防止数据被监听或篡改,还能抵御 MITM(中间人)攻击。TLS 在实施加密过程中,需要用到非对称密钥交换和对称内容加密两大算法。

对称内容加密强度非常高,加解密速度也很快,只是无法安全地生成和保管密钥。在 TLS 协议中,应用数据都是经过对称加密后传输的,传输中所使用的对称密钥,则是在握手阶段通过非对称密钥交换而来。常见的 AES-GCM、ChaCha20-Poly1305,都是对称加密算法。

非对称密钥交换能在不安全的数据通道中,产生只有通信双方才知道的对称加密密钥。目前最常用的密钥交换算法有 RSA 和 ECDHE:RSA 历史悠久,支持度好,但不支持 PFS(Perfect Forward Secrecy);而 ECDHE 是使用了 ECC(椭圆曲线)的 DH(Diffie-Hellman)算法,计算速度快,支持 PFS。

2)验证类型默认为 DNS

DNS 和文件验证有什么区别呢?我们再来一起了解下。

首先,我们需要明白一点,CA(Certificate Authority,证书颁发机构) 需要验证我们是否拥有该域名,这样才给我们颁发证书。

文件验证(HTTP):CA 将通过访问特定 URL 地址来验证我们是否拥有域名的所有权。因此,我们需要下载给定的验证文件,并上传到您的服务器。

DNS 验证:CA 将通过查询 DNS 的 TXT 记录来确定我们对该域名的所有权。我们只需要在域名管理平台将生成的 TXT 记录名与记录值添加到该域名下,等待大约 1 分钟即可验证成功。

所以,如果对服务器操作方便的话,可以选择文件验证;如果对域名的服务器操作比较方便的话,可以选择 DNS 验证。如果两个都方便的话,请随意选啦。

3)CSR生成默认为离线生成

离线生成、浏览器生成 和 我有 CSR 又有什么区别呢?来,我们继续了解一下。

离线生成 推荐!!!:私钥在本地加密存储,更安全;公钥自动合成,支持常见证书格式转换,方便部署;支持部分 WebServer 的一键部署,非常便捷。

离线生成的时候,需要先安装 KeyManager,可以提供安全便捷的 SSL 证书申请和管理。下载地址如下:
https://keymanager.org/

Windows 的话,安装的时候要选择“以管理员身份运行”。

浏览器生成:在浏览器支持 Web Cryptography 的情况下,会使用浏览器根据用户的信息生成 CSR 文件。

Web Cryptography,网络密码学,用于在 Web 应用程序中执行基本加密操作的 JavaScript API。很多浏览器并不支持

我有 CSR:可以粘贴自己的 CSR,然后创建。

第三步,选择离线生成,打开 KeyManager

填写密码后点击「开始」,稍等片刻。

2.2.1点击创建之后弹出窗口,“打开KeyManager”

Tomcat配置SSL证书_第3张图片

 

2.2.2创建CSR成功

Tomcat配置SSL证书_第4张图片

 

2.2.3点击“继续”

 

Tomcat配置SSL证书_第5张图片

2.2.4根据提供的信息开始验证

根据信息配置完成后,先检测一下。如果成功在点击验证

配置方式

Tomcat配置SSL证书_第6张图片

2.2.5点击验证

点击验证之后,根据提示再等20s再点击验证

Tomcat配置SSL证书_第7张图片

第二次点击验证,保存到keyManage

 

Tomcat配置SSL证书_第8张图片

 

 

 

验证成功后,证书的状态会改为“已颁发”

Tomcat配置SSL证书_第9张图片

 

 

三、Tomcat配置 jks 格式证书

3.1导出证书,jks格式

注意:私钥的密码在配置 Tomcat 的时候用到。

Tomcat配置SSL证书_第10张图片

 

Tomcat配置SSL证书_第11张图片

 

 

3.2上传证书到服务器

使用Xftp软件上传文件至tomcat/conf文件夹中

Tomcat配置SSL证书_第12张图片

 

Tomcat配置SSL证书_第13张图片

3.3配置 Tomcat 的 server.xml

(1)把

    

改成

 

其中第一个80端口是为HTTP(HyperText Transport Protocol)即超文本传输协议开放的,此为上网冲浪使用次数最多的协议,第二个443端口是SSL的专用端口;

 

(2)把

 

改成

使用443端口的理由同上;

 

(3)把

    

改成

	
        
            
        
    

如果一个tomcat配置多个https,则做如下修改

	
			   
        
            
        
		
            
        
    

 

首先去掉注释,然后certificateKeystoreFile属性是让你告诉服务器需要哪个SSL证书,后面就填复制过去的那个jks文件的名字(记得带上jks后缀),然后加上certificateKeystorePassword这个属性,后面的属性值填秘钥(导出证书时填的私密加密密码)

 

四、重启Tomcat

如果显示找不到页面,那么就应该是你的云服务器的443端口被防火墙拦截了,此时就需要打开443端口。

在服务器安全组添加端口+Centos开放端口

启动成功后https://www.javaj.work域名可以访问自己的项目了

Tomcat配置SSL证书_第14张图片

 

 

 

 


 

你可能感兴趣的:(其他)