Letsencrypt Tomcat https 整理
Posted 馥盒子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Letsencrypt Tomcat https 整理相关的知识,希望对你有一定的参考价值。
windows:
1.准备软件 Letsencrypt tomcat-native
下载Letsencrypt最新版 [https://github.com/Lone-Coder/letsencrypt-win-simple/releases]
本文使用版本 [https://pan.baidu.com/s/1nwvz1WX 包含下文tomcat-native.dll]
2.解压Letsencrypt,使用管理员方式打开cmd
1)letsencrypt.exe
2)首次会提示输入邮箱,按提示输入即可
3)
W: Generate a certificate via WebDav and install it manually.
F: Generate a certificate via FTP/ FTPS and install it manually.
M: Generate a certificate manually.
A: Get certificates for all hosts
Q: Quit
Which host do you want to get a certificate for: M 【输入M自行创建证书】
4)
Enter a host name: www.yourdomain.com 【输入域名】
5)
Enter a site path (the web root of the host for http authentication): 【输入本地路径 存储认证信息 通过www.youtdomain.com/.well-known/acme-challenge可返回生成的认证信息,如果没有web服务,自行创建即可】
6)
看到如下信息则证书已成功生成
因为只有90的期限,工具提供了自动更新证书信息的任务,选择Y
输入管理员的用户和密码 即可
3. 接下来配置Tomcat
1)把上述下载的tnative.dll 放到JRE_HOME的bin目录下
2)配置server.xml [tip: 最好先备份下你的server.xml]
8080 =》80 8443=》443
==》
<Connector port="80" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="443" />
找到 protocol="org.apache.coyote.http11.Http11AprProtocol" 去除注释
<Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol"
maxThreads="150" SSLEnabled="true" >
<UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
<SSLHostConfig>
<Certificate
certificateKeyFile="[your-path-here]-key.pem"
certificateFile="[your-path-here]-crt.pem"
certificateChainFile="[your-path-here]-chain.pem"
type="RSA" />
</SSLHostConfig>
</Connector>
your-path-here:默认在C:/Users/Administrator/AppData/Roaming/letsencrypt-win-simple/httpsacme-v01.api.letsencrypt.org
找到 pport="8009" 去除注释
==》
<Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
3)接下来修改server.xml同目录下的web.xml
添加
<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>
把80端口转为443端口
使用http://www.51mla.com会自动转为https://www.51mla.com,下面展示一下成果
以上是关于Letsencrypt Tomcat https 整理的主要内容,如果未能解决你的问题,请参考以下文章
[web建站]-简单通过letsencrypt配置HTTPS证书
LetsEncrypt : LetsEncrypt 的中间证书
免费证书申请——Let's Encrypt的申请与应用(IIS,Tomcat)