jdk 服务器证书任意更换,WEB服务器上配置HTTPS环境(双向认证)教程.docx

WEB服务器上配置HTTPS环境(双向认证)教程

WEB服务器上配置HTTPS环境 双向认证[实践目的及内容] 利用Java的数据证书管理工具Keytool生成客户端和服务器端的数字证书, 以便采用HTTPS访问web应用时提供双向认证需要的客户端证书和服务器证书。Keytool工具将密钥(key)和证书(certificates)存在一个称为keystore的文件中。在keystore里,包含两种数据: (1)密钥实体(Key entity)——通常是私钥和配对公钥(采用非对称加密)? (2)可信任的证书实体(trusted certificate entries)——只包含公钥与采用HTTPS登陆一个web应用相关的另一个文件是truststore,keystore和truststore从其文件格式来看其实是一个东西,只是为了方便管理将其分开。区别在于,truststore里存放的是只包含公钥的数字证书,代表了可以信任的证书,而keystore是包含私钥的。[实践基本思路] 1、生成服务端密钥库并导出证书;2、生成客户端密钥库并导出证书;3、根据服务端密钥库生成客户端信任的证书;4、将客户端证书导入服务端密钥库;5、将服务端证书导入浏览器。[实践演示环境] JDK:1.7Tomcat:apache-tomcat-7.0.27开发工具:MyEclipse 10浏览器:Internet Explorer 9[实践步骤]一、生成密钥库和证书 可参考以下密钥生成脚本,根据实际情况做必要的修改,其中需要注意的是:服务端的密钥库参数“CN”必须与服务端的IP地址相同,否则会报错,客户端的任意。利用Keytool工具生成证书以前需要在命令行界面下进入本地jdk所在的安装目录:

1、生成服务器证书库keytool -validity 365 -genkey -v -alias server -keyalg RSA -keystore E:\ssl\server.keystore -dname "CN=,OU=icesoft,O=icesoft,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 1234562、生成客户端证书库keytool -validity 365 -genkeypair -v -alias client -keyalg RSA -storetype PKCS12 -keystore E:\ssl\client.p12 -dname "CN=client,OU=icesoft,O=icesoft,L=Haidian,ST=Beijing,c=cn" -storepass 123456 -keypass 1234563、从客户端证书库中导出客户端证书keytool -export -v -alias client -keystore E:\ssl\client.p12 -storetype PKCS12 -storepass 123456 -rfc -file E:\ssl\client.cer4、从服务器证书库中导出服务器证书keytool -export -v -alias server -keystore E:\ssl\server.keystore -storepass 123456 -rfc -file E:\ssl\server.cer5、生成客户端信任证书库(由服务端证书生成的证书库)keytool -import -v -alias server -file E:\ssl\server.cer -keystore E:\ssl\client.truststore -storepass 1234566、将客户端证书导入到服务器证书库(使得服务器信任客户端证书)keytool -import -v -alias client -file E:\ssl\client.cer -keystore E:\ssl\server.keystore -storepass 1234567、查看证书库中的全部证书keytool -list -keystore E:\ssl\server.keystore -storepass 123456

二、Tomat配置 在Eclipse下编辑tomcat的server.xml文件找到Connector port="8443"的标签,取消注释,并修改成如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值