你们好,最近小时发现有诸多的小伙伴们对于https:www.fqlook.com/,https这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。
1、 为服务器生成证书
2、 运行控制台,进入%JAVA_HOME%/bin目录,并使用以下命令进入该目录:
3、 CD " c:\ Program Files \ Java \ JDK 1。6 .0 _ 11 \ bin "
4、 使用keytool为Tomcat生成证书,假设目标机器的域名为“localhost”,keystore文件存储在“D:\home\tomcat.keystore”中,密码为“password”。
5、 使用以下命令生成:
6、 keytool-genkey-v-alias Tomcat-keyalg RSA-keystore D:\ home \ Tomcat。密钥库有效性36500(参数简要说明:" D:\home\tomcat.keystore "含义是将证书文件的保存路径,
7、 在命令行填写必要的参数:
8、 A.输入密钥库密码:这里,您需要输入一个超过6个字符的字符串。
9、 b,“你的名和姓是什么?”这是必需的,并且必须是TOMCAT部署主机的域名或IP[例如,gbcom.com或10.1.25.251](即您以后在浏览器中输入的访问地址)。
10、 否则,浏览器会弹出一个警告窗口,提示用户证书与域不匹配。在本地做开发测试时,要填写“localhost”。
11、 C.您的组织单位名称是什么?“您的组织名称是什么?”"你所在的城市或地区的名称是什么?""你所在的州或省的名称是什么?""这个单位的两个字母的国家代码是什么?"可以根据需要填写,也可以不填直接输入。
12、 在系统里问“对不对?”如果符合要求,用键盘输入字母“Y”,否则输入“N”重新填写上述信息。
13、 D.输入tomcat的主密码,这个密码更重要,将在tomcat配置文件中使用。建议输入与密钥库密码一致的密码,或者设置其他密码。完成以上输入后,直接回车,在第二步定义的位置找到生成的文件。
14、 为客户端生成证书
15、 为浏览器生成一个证书,以便服务器可以验证它。为了将证书顺利导入IE和Firefox,证书格式应该是PKCS12,所以使用下面的命令来生成它:
16、 keytool-genkey-v-alias mykey-keyalg RSA-storetype PKCS12-keystore D:\ home \ mykey . p12为了自定义会员国。
17、 对应的证书库存放在“D:\home\mykey.p12”,客户端的CN可以是任意值。双击mykey.p12文件,将证书导入浏览器(客户端)。
18、 让服务器信任客户端证书
19、 因为是双向SSL认证,所以服务器必须信任客户端证书,所以必须添加客户端证书作为服务器的信任认证。由于无法直接导入PKCS12格式的证书存储,您必须首先将客户端证书导出为单独的CER文件,并使用以下命令:
20、 keytool -export -alias mykey -keystore D:\home\mykey.p12 -storetype PKCS12 -storepass password -rfc -file D:\home\mykey.cer
21、 (mykey与客户端定义的mykey相同,password是您设置的密码)。通过上面的命令,将客户端证书导出到“D:\home\mykey.cer”文件中。
22、 下一步是将文件导入到服务器的证书存储中,并将其添加为信任证书。使用以下命令:
23、 keytool -import -v -file D:\home\mykey.cer -keystore D:\home\tomcat.keystore
24、 通过list命令查看服务器的证书库,可以看到两个证书,一个是服务器证书,一个是可信客户端证书:
25、 keytool-list-keystore D:\ home \ Tomcat。密钥库(Tomcat为你设置服务器端的证书名)。
26、 让客户端信任服务器证书
27、 因为是双向SSL认证,客户端还需要验证服务器证书,所以服务器证书必须添加到浏览器的“可信根证书颁发机构”中。因为您不能直接导入密钥库格式的证书存储,
28、 必须先把服务器证书导出为一个单独的CER文件,使用如下命令:
29、 keytool -keystore D:\home\tomcat.keystore -export -alias tomcat -file D:\home\tomcat.cer (tomcat为你设置服务器端的证书名)。
30、 通过以上命令,服务器证书就被我们导出到“D:\home\tomcat.cer”文件了。双击tomcat.cer文件,按照提示安装证书,将证书填入到“受信任的根证书颁发机构”。
31、 配置Tomcat服务器
32、 打开Tomcat根目录下的/conf/server.xml,找到Connector port='8443'配置段,修改为如下:
33、 Connector port='8443' protocol='org.apache.coyote.http11.Http11NioProtocol'
34、 SSLEnabled='true' maxThreads='150' scheme='https'
35、 secure='true' clientAuth='true' sslProtocol='TLS'
36、 keystoreFile='D:\\home\\tomcat.keystore' keystorePass='123456'
37、 truststoreFile='D:\\home\\tomcat.keystore' truststorePass='123456' /
38、 (tomcat要与生成的服务端证书名一致)
39、 属性说明:
40、 clientAuth:设置是否双向验证,默认为false,设置为true代表双向验证
41、 keystoreFile:服务器证书文件路径
42、 keystorePass:服务器证书密码
43、 truststoreFile:用来验证客户端证书的根证书,此例中就是服务器证书
44、 truststorePass:根证书密码
45、 测试
46、 在浏览器中输入:https://localhost:8443/,会弹出选择客户端证书界面,点击“确定”,会进入tomcat主页,地址栏后会有“锁”图标,表示本次会话已经通过HTTPS双向验证,
47、 接下来的会话过程中所传输的信息都已经过SSL信息加密。
以上就是https这篇文章的一些介绍,希望对大家有所帮助。