tomcat配置证书
[size=x-small][size=xx-large][size=medium]
1、利用java 生成一个.keystore文件
进入命令行(假设已经设定了环境变量)
执行 keytool -genkey -alias tomcat -keyalg RSA 结果如下
(1)
C:\Users\Administrator>keytool -genkey -alias tomcat -keyalg RSA
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: Ted
您的组织单位名称是什么?
[Unknown]: home
您的组织名称是什么?
[Unknown]: home
您所在的城市或区域名称是什么?
[Unknown]: GZ
您所在的省/市/自治区名称是什么?
[Unknown]: 广东省广州市
该单位的双字母国家/地区代码是什么?
[Unknown]: CN
CN=Ted, OU=home, O=home, L=GZ, ST=广东省广州市, C=CN是否正确?
[否]: 是
输入 <tomcat> 的密钥口令
(如果和密钥库口令相同, 按回车):
C:\Users\Administrator>
此时在C:\Users\Administrator目录则会生成一个.keystore文件。
(2)
在tomcat的conf文件夹中的server.xml修改一下代码:
将注释代码
<!--
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
改为:
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" minSpareThreads="5" maxSpareThreads="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100"maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="C:\Users\Administrator\.keystore"
keystorePass="XXX"/>
注意:keystoreFile是文件放置的路径,你可以将文件放在任何位置。
keystorePass是文件的密码,这是你在用java生成文件的时候你设置的密码。
。
以上两个步骤,就可以为你的web应用添加证书。
但是,如果你希望你的web应用只需要部分需要证书,则可以继续下一步。
(3)在你的web应用中的web.xml添加如下代码:
<security-constraint>
<web-resource-collection>
<web-resource-name>securedapp</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
留意以上代码中<url-pattern>/*</url-pattern>,此时也是整个应用拥有证书,修改一些这个url-pattern,根据你需要的url来修改。则可以实现部分证书功能。
转自:http://m.blog.csdn.net/blog/Ted526200/8499473
[/size][/size][/size]
1、利用java 生成一个.keystore文件
进入命令行(假设已经设定了环境变量)
执行 keytool -genkey -alias tomcat -keyalg RSA 结果如下
(1)
C:\Users\Administrator>keytool -genkey -alias tomcat -keyalg RSA
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
[Unknown]: Ted
您的组织单位名称是什么?
[Unknown]: home
您的组织名称是什么?
[Unknown]: home
您所在的城市或区域名称是什么?
[Unknown]: GZ
您所在的省/市/自治区名称是什么?
[Unknown]: 广东省广州市
该单位的双字母国家/地区代码是什么?
[Unknown]: CN
CN=Ted, OU=home, O=home, L=GZ, ST=广东省广州市, C=CN是否正确?
[否]: 是
输入 <tomcat> 的密钥口令
(如果和密钥库口令相同, 按回车):
C:\Users\Administrator>
此时在C:\Users\Administrator目录则会生成一个.keystore文件。
(2)
在tomcat的conf文件夹中的server.xml修改一下代码:
将注释代码
<!--
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
改为:
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8443" minSpareThreads="5" maxSpareThreads="75"
enableLookups="true" disableUploadTimeout="true"
acceptCount="100"maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="C:\Users\Administrator\.keystore"
keystorePass="XXX"/>
注意:keystoreFile是文件放置的路径,你可以将文件放在任何位置。
keystorePass是文件的密码,这是你在用java生成文件的时候你设置的密码。
。
以上两个步骤,就可以为你的web应用添加证书。
但是,如果你希望你的web应用只需要部分需要证书,则可以继续下一步。
(3)在你的web应用中的web.xml添加如下代码:
<security-constraint>
<web-resource-collection>
<web-resource-name>securedapp</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
留意以上代码中<url-pattern>/*</url-pattern>,此时也是整个应用拥有证书,修改一些这个url-pattern,根据你需要的url来修改。则可以实现部分证书功能。
转自:http://m.blog.csdn.net/blog/Ted526200/8499473
[/size][/size][/size]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端