Windows数字证书
1.生成数字证书
1.1进入[%JAVA_HOME%]路径下
cd C:\Program Files (x86)\Java\jdk1.6.0_39\bin
1.2生成证书
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore -validity 3600
注: -validity 指证书的有效期(天),缺省有效期很短,只有90天
输入参数:
您的名字与姓氏是什么?
[Unknow]: xxx.xxxx.com.cn
您的组织单位名称是什么?
[Unknow]: xxxx
您的组织名称是什么?
[Unknow]: xxxx
您所在的城市或区域名称是什么?
[Unknow]: beijing
您所在的洲或省份名称是什么?
[Unknow]: beijing
该单位的两字母国家代码是什么?
[Unknow]: 86
CN=cas.wptx.com.cn, OU=wptx, O=wptx, L=beijing, ST=beijing, C=86 正确吗?
[否]: Y
数字证书【server.keystore】储存于当前目录【C:\Program Files (x86)\Java\jdk1.6.0_39\bin】
1.3 将server.keystore文件复制到【%CATALINA_HOME%】下
如: Tomcat目录【C:\Program Files (x86)\Apache Software Foundation\Tomcat 5.5】
2.导出数字证书
2.1 进入[%JAVA_HOME%]路径下
cd C:\Program Files (x86)\Java\jdk1.6.0_39\bin
keytool -export -trustcacerts -alias tomcat -file server.cer -keystore server.keystore -storepass changeit
导出后的证书【server.cer】储存在当前目录【C:\Program Files (x86)\Java\jdk1.6.0_39\bin】
3.导入数字证书
3.1 导入证书Jdk
Setup-1: 复制证书【server.cer】到【C:\Program Files (x86)\Java\jdk1.6.0_39\jre\lib\security\】
Setup-2: cd C:\Program Files (x86)\Java\jdk1.6.0_39\bin
Steup-3: keytool -import -trustcacerts -alias tomcat -file "C:\Program Files (x86)\Java\jdk1.6.0_39\jre\lib\security\server.cer" -keystore "C:\Program Files (x86)\Java\jdk1.6.0_39\jre\lib\security\cacerts" -storepass changeit
注: 以上两行是一个命令, 中间没有换行
2> 导入证书Jre
Setup-1: 复制证书【server.cer】到【C:\Program Files (x86)\Java\jre6\lib\security\】
Steup-2:
Steup-3: keytool -import -trustcacerts -alias tomcat -file "C:\Program Files (x86)\Java\jre6\lib\security\server.cer" -keystore "C:\Program Files (x86)\Java\jre6\lib\security\cacerts" -storepass changeit
注: 以上两行是一个命令, 中间没有换行
4.删除数字证书(需要时操作)
4.1 删除证书Jdk
keytool -delete -trustcacerts -alias tomcat -keystore "C:\Program Files (x86)\Java\jdk1.6.0_39\jre\lib\security\cacerts" -storepass changeit
4.2 删除证书Jre
keytool -delete -trustcacerts -alias tomcat -keystore "C:\Program Files (x86)\Java\jre6\lib\security\cacerts" -storepass changeit
证书生成和导入密钥库以后需要修改tomcat的server.xml配置,开放8443端口。
修改C:\Program Files (x86)\Apache Software Foundation\Tomcat 5.5\conf\server.xml
<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="server.keystore" keystorePass="changeit" ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA" />
keystoreFile配置项指明keystore文件位置,当前配置是说server.keystore文件放在tomcat主目录下
keystorePass配置项指明访问密码,也就是生成证书时-storepass参数后跟的值。
ciphers配置项是希望chome流浪器也可以访问。
Linux数字证书
服务器环境说明
1、apache-tomcat. 服务器上安装的是apache-tomcat-7.0.65版本,安装在/opt目录下。
2、apache-activemq. 服务器上安装的是apache-activemq-5.10.2版本,安装在/opt目录下。
3、jdk. 服务器上安装的是jdk1.7.0_67版本,安装在/opt目录下。
4、JAVA_HOME环境变量配置: JAVA_HOME=/opt/jdk1.7.0_67
1、域名:
cas:单点登录 test.xxxx.com.cn
2、证书
2.1 生成证书
cd /opt/jdk1.7.0_67/bin
keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore -validity 3600
您的名字与姓氏是什么?
[Unknow]: test.xxxx.com.cn
您的组织单位名称是什么?
[Unknow]: xxxx
您的组织名称是什么?
[Unknow]: xxxx
您所在的城市或区域名称是什么?
[Unknow]: beijing
您所在的洲或省份名称是什么?
[Unknow]: beijing
该单位的两字母国家代码是什么?
[Unknow]: 86
CN=cas.wptx.com.cn, OU=wptx, O=wptx, L=beijing, ST=beijing, C=86 正确吗?
[否]: Y
2.2 根证书赋予tomcat使用
cp server.keystore /opt/apache-tomcat-7.0.65/
2.3 导出证书
keytool -export -trustcacerts -alias tomcat -file server.cer -keystore server.keystore -storepass changeit
2.4 导入证书
root@10-4-8-193 bin]# ls -tlar server.*
-rw-r--r-- 1 root root 2242 Mar 31 17:11 server.keystore
-rw-r--r-- 1 root root 889 Mar 31 17:12 server.cer
2.4.1 复制证书给jre
cp server.cer /opt/jdk1.7.0_67/jre/lib/security/
2.4.2 导入证书
keytool -import -trustcacerts -alias tomcat -keystore "/opt/jdk1.7.0_67/jre/lib/security/cacerts" -file "/opt/jdk1.7.0_67/jre/lib/security/server.cer" -storepass changeit
linux系统同样需要修改tomcat的server.xml文件开放8443端口,配置内容与windows下的配置相同,不再赘述。
删除数字证书(需要时操作)
1> 删除证书Jdk
keytool -delete -trustcacerts -alias tomcat -keystore "/opt/jdk1.7.0_67/jre/lib/security/cacerts" -storepass changeit