一、搭建Java Web服务器环境
CATALINA_HOME = D:\Java\apache-tomcat-6.0.14
安装完毕,启动Tomcat ,在浏览器上 测试 http://localhost:8080/
出现上述界面,表明系统成功搭建。
二、使用Java Keytool工具为系统生成HTTPS证书,并为系统注册
- 删除已有
C:\Program Files\Java\jdk1.6.0_10\bin>keytool -delete -alias tomcat(随意起的别名) -keystore D:/Java/jdk1.6.0_33/jre/lib/security/cacerts -storepass changeit
- 生成密匙库
输入密钥密码和相应参数,(注意:第一个参数CN要输入域名sso.shipengzhi.com,其他参数就随便了),结果是在用户目录中创建了名为server.keystore的密钥文件。
C:\Program Files\Java\jdk1.6.0_10\bin>keytool -genkey -alias tomcat -keypass changeit -keyalg RSA -keystore server.keystore(密钥文件名)
在当前目录下多出一个文件server.keystore
- 导出数字证书
C:\Program Files\Java\jdk1.6.0_10\bin>keytool -export -alias tomcat -keypass changeit -file server.crt -keystore server.keystore
输入keystore密码:changeit
输入上一步中的密码,结果在当前目录生成server.crt密钥文件。(注意:这个文件是要导入客户端的JVM上的)
4.将数字认证导入jre可信任区
C:\Program Files\Java\jdk1.6.0_10\bin>keytool -import -alias tomcat -file server.crt -keypass changeit -keystore D:/Java/jdk1.6.0_33/jre/lib/security/cacerts
这里的jre地址和tomcat使用的jre必须一致
输入密码(注意:这里的密码不是上面设定的密码,而是changeit),将创建cacerts文件
- 查看可信证书列表(检查证书是否加入成功)
C:\Program Files\Java\jdk1.6.0_10\bin>keytool -list -keystore D:\Java\jdk1.6.0_33/jre/lib/security/cacerts
6.命令解释(转)
-genkey 在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias 产生别名
-keystore 指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg 指定密钥的算法
-validity 指定创建的证书有效期多少天
-keysize 指定密钥长度
-storepass 指定密钥库的密码
-keypass 指定别名条目的密码
-dname 指定证书拥有者信息例如: "CN=firstName,OU=org,O=bj,L=bj,ST=gd,C=cn"
-list 显示密钥库中的证书信息 keytool -list -v -keystore 别名 -storepass ....
-v 显示密钥库中的证书详细信息
-export 将别名指定的证书导出到文件 keytool -export -alias 别名 -file 文件名.crt
-file 参数指定导出到文件的文件名
-delete 删除密钥库中某条目 keytool -delete -alias 别名 -keystore sage
-keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias 别名 -keypass .... -new .... -storepass ... -keystore 别名
-import 将已签名数字证书导入密钥库 keytool -import -alias 别名 -keystore 证书名-file 文件名(可以加.crt 后缀)
以上是服务器端导入证书,放在tomcat用的jre下的证书库中
三、配置Tomcat的HTTPS服务
在tomcat的server.xml中添加配置信息
enableLookups="true" disableUploadTimeout="true"
acceptCount="100" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="C:/Users/shipengzhi/server.keystore" keystorePass="changeit"
truststoreFile="D:/Java/jdk1.6.0_33/jre/lib/security/cacerts"
clientAuth="false" sslProtocol="TLS"/>
keystorePass="changeit"参数,即为上面几步中涉及到的密 码,keystoreFile=".keystorePath",.keystorePath即为在第一步中生成的文件.keystore的全路径,如: C:/Users/shipengzhi/server.keystore。
启动Tomcat,访问https://localhost:8443/,出现以下界面说明HTTPS配置生效: