jdk为tomcat配置ssl证书及安装——(安装失败后分析)

这近在因工作需要要制作一个ssl证书。本人在网上也看到了一下资料。但大多数都是摘抄别人,没有结合自己实际情况就胡乱发表。本人根据自己实际操作和参照他人资料编写一个配置ssl证书文档。
配置前提:1.本地机器上安装过java(jdk)。在dos界面敲javac出现如下界面

证明本地jdk已经成功安装。
2:启动tomcat。看自己机器能不能访问tomcat的管理界面(就是那只猫)。这点很重要,我在网上参照别人的资料,好多没有提只一点。自己走了不少歪路。
如果以上都具备,就可以开发了。

1.具体步骤。
A.服务器生成证书。

B.客服端生成证书。

C.服务器信任客户端证书

D.配置tomcatserver.xml文件。及相关程序启动文件web.xml.

E.安装SSL证书。

1》方案一。生成单向证书

第一步:为服务器生成证书。(在安装jdk环境下的dos操作界面进行生成证书)

keytool -genkey -v -alias tomcat -keyalg RSA -validity 3650  -keystore c:\zlx\tomcat.keystore -dname "CN=localhost,OU=cn,O=cn,L=cn,ST=cn,c=cn" -storepass password -keypass password

注解:keytool表示工具。

genkey:创建一个证书。

alias:证明别名(此时我们叫tomcat,也可以取别的名字)。

validity:表示证书的有效期(3650表示十年,默认90天)。

keystore:表示证书存放物理路径(c:\zlx\tomcat.keystore。我们此时放在c盘的tomcat文件夹下)。

dname:里面是一些证书说明。其中CN=localhost。和最后的C=cn很重要。本机测试就是localhost或者是本地ip。如果不是就要相对应的域名,如:(CN=www.baidu.com)。C=cn表示所在国家。其余的OUOLST表示所在省份,市,公司。

storepass:表示服务器证书私钥口令,此时为password

keypass:表示存储文件验证口令。此时为password。(注:私钥口令储文件验证口令必须一致

如图在dos执行上面命令图:

此时服务器证书就在c:\zlx目录下就建好了。

 

第二步:配置tomcatserver.xml文件

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

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

         clientAuth="false" sslProtocol="TLS"

        keystoreFile="c:\zlx\tomcat.keystore" keystorePass="password "/>

注:clientAuth=false”表示,单向配置。clientAuth=true”表示双向配置。

 

 

《1》方案二。生成双向证书

第一步:生成服务器证书。

命令:

     keytool -genkey -v -alias tomcat -keyalg RSA -keystore tomcat.keystore -dname "CN=localhost,OU=sy,O=sy,L=sy,ST=ln,C=cn" -validity 3650 -storepass 123456 -keypass 123456

     (名字解释同配置单向证书一样)

 

 

第二步:生成客户端证书。

 

命令:

     keytool -genkey -v -alias ceshi -keyalg RSA -storetype PKCS12 -keystore ceshi.p12 -dname "CN=ceshi,OU=sy,O=sy,L=sy,ST=ln,C=cn " -validity 3650 -storepass ceshi -keypass ceshi"

 

 

第三步:让服务器信任客户端证书(此操作分两步,第一步将票p12文件转换成cer文件)

 

命令:(转换文件)

             

      keytool -export -alias ceshi -keystore ceshi.p12 -storetype PKCS12 -storepass ceshi -rfc -file ceshi.cer

 

命令:(信任)

           keytool -import -alias ceshi -v -file ceshi.cer -keystore tomcat.keystore -storepass 123456

 

 

第四步:配置tomcat服务器server.xml文件

 

Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"

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

           clientAuth="true" sslProtocol="TLS"

           keystoreFile=" c:\zlx\tomcat.keystore" keystorePass="password"

           truststoreFile=" c:\zlx\tomcat.keystore " truststorePass="password "

            truststoreType="JKS"/>

 

注:(1) 双向认证需要设置clientAuth="true",则需要强制验证客户端证书。客户端必须安装“ceshi.p12”,导入ceshi.p12导入IE。

(2)访问地址:https://localhost:8443/

总结:其实用jdk生成ssl生成证书过程不是很麻烦,就是在安装证书的时候有点困难。这是和操作系统有关。如图所示有一个案例仅供参考。

 

(1)       在安装p12文件时,会经常出现这样的问题,这是因为操作系统出现漏洞,不妨先把补丁打上,然后再试!

(2)       在安装好证书,一切准备工作都做好后,测试ssl后,页面会出现此证书不被浏览器信任。这是需要把该证书添加到浏览器的“受信任的根证书颁发机构”

注:以上就是本人在自己电脑上用jdk为tomcat配置ssl证书的过程。 还有jdk为jboss其他服务器配置ssl证书,其实道理都是一样的。
其次关于ssl我会在下节说明一下。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值