Tomcat启用SSL 基于linux版,亦适合win版

创建本地证书


1. 切换到/usr/java/jre1.6.0_11/bin目录(也就是JAVA的bin目录)


[root@localhost bin]# ./keytool -genkey -alias tomcat -keyalg RSA (genkey创建用,删除则是delete)
输入keystore密码: changeit


您的名字与姓氏是什么?
[Unknown]: www.dic.com (这里一定要填写申请的域名)
您的组织单位名称是什么?
[Unknown]: dic
您的组织名称是什么?
[Unknown]: dic
您所在的城市或区域名称是什么?
[Unknown]: hf
您所在的州或省份名称是什么?
[Unknown]: hf
该单位的两字母国家代码是什么
[Unknown]: cn
CN=localhost, OU=mycom, O=mycom, L=zhuzhou, ST=hunan, C=cn 正确吗?
[否]: y


输入的主密码
(如果和 keystore 密码相同,按回车):


(这时会在/root目录产生证书文件.keystore 。路径为 /root/.keystore )




[root@localhost bin]# ./keytool -export -alias tomcat -keypass changeit -file casserver.crt (这步估计是把证书导出到 casserver.crt 文件)


输入keystore密码: changeit
保存在文件中的认证 




[root@localhost bin]# ./keytool -import -file casserver.crt -keypass changeit -keystore /usr/java/jre1.6.0_11/lib/security/cacerts (这步估计是把casserver.crt文件导入到cacerts中,import导入,删除则是delete)


输入keystore密码: changeit
Owner: CN=www.dic.com, OU=dic, O=dic, L=hf, ST=hf, C=cn
发照者: CN=www.dic.com, OU=dic, O=dic, L=hf, ST=hf, C=cn
序号: 44f67974
有效期间: Thu Aug 31 13:53:56 CST 2006 至: Wed Nov 29 13:53:56 CST 2006
认证指纹:
MD5: D2:A8:3A:37:96:36:97:88:42:9E:F8:9A:5B:FB:F5:5E
SHA1: 91:0E:63:82:25:E8:04:72:5F:8B:0D:6B:39:55:C2:1E:C8:77:F3:CB
信任这个认证? [否]: y
认证已添加至keystore中




[root@localhost bin]# ./keytool -list -keystore /root/.keystore
输入keystore密码: changeit


Keystore 类型: jks
Keystore 提供者: SUN


您的 keystore 包含 1 输入


tomcat, 2004-11-26, keyEntry,
认证指纹 (MD5): B8:44:A1:A2:C7:9A:09:EE:A0:CF:5B:AAC:F7:0F:80




[root@localhost bin]# ./keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr -keystore /root/.keystore (用.keystore创建CSR文件,文件名为 certreq.csr ,然后就把这个文件提交到CA网站认证就可以了)




-----------------------------------------------------------------------------------------------------------------
将认证过的证书导入到本地的证书,步骤各不一样,下面分两部记载,第一部分为百度公司的创建步骤,第二部分见相关文章


[root@localhost bin]# ./keytool -import -alias root -keystore .keystore -trustcacerts -file gd_bundle.crt (这里首先导入跟证书)


[root@localhost bin]# ./keytool -import -alias cross -keystore .keystore -trustcacerts -file gd_cross_intermediate.crt (这里导入中间证书第一个)


[root@localhost bin]# ./keytool -import -alias intermed -keystore .keystore -trustcacerts -file gd_intermediate.crt (这里导入中间证书第二个)


[root@localhost bin]# ./keytool -import -alias tomcat -keystore .keystore -trustcacerts -file www.baidu.org.tw.crt (这里导入发布的证书)


注: 首先要把/root/.keystore 文件拷贝到 /bin 目录,-file 后面的文件名视情况而定


-----------------------------------------------------------------------------------------------------------------


最后修改tomcat的相关文档


切换到tomcat目录,我这里是 /var/apache-tomcat-6.0.18/conf/ 编辑 server.xml 文件
找到以下相似段,修改为如下






maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" debug="0" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
keystoreFile="/root/.keystore" keystorePass="changeit"/>


注: keystoreFile目录貌似没效果,直接把导入好的证书放入/root/.keystore ,根本找不到地方改,此为本文最为关键精妙之处。总结了下,用什么账户启动,.keystore就得放到那个用户的家目录下,比如使用tomcat用户来启动tomcat的,那就要放到/home/tomcat这个目录(就是设置的目录)。


最后重启tomcat


打开 https://www.dic.com:8443 没有框跳出,直接显示成功,你可以查看相关证书


keytool工具java.io.IOException: Keystore was tampered with, or password was incorrect 异常的解决办法


对于很多服务器比如glassfish或者tomcat之类的,在证书过期,我们需要删除时,需要输入保护密码,默认的就是changeit,输入这个密码就可以了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值