Tomcat, Jre 证书相关

时间:2022-07-22
本文章向大家介绍Tomcat, Jre 证书相关,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1. Tomcat中的证书

1.1 生成keystore

# 口令在生成证书时,需要使用
➜ keytool -genkeypair -alias cas.example.org -keyalg RSA -keystore ~/tomcat-8.5.keystore
输入密钥库口令: (123456)
再次输入新口令:
您的名字与姓氏是什么?
  [Unknown]:  cas.example.org
您的组织单位名称是什么?
  [Unknown]:  szl
您的组织名称是什么?
  [Unknown]:  zkld
您所在的城市或区域名称是什么?
  [Unknown]:  bj
您所在的省/市/自治区名称是什么?
  [Unknown]:  bj
该单位的双字母国家/地区代码是什么?
  [Unknown]:  bj
CN=cas.example.org, OU=szl, O=zkld, L=bj, ST=bj, C=bj是否正确?
  [否]:  y

输入 <cas.example.org> 的密钥口令
	(如果和密钥库口令相同, 按回车):

1.2 添加至Tomcat

conf/server.xml

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
           maxThreads="150" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS"
           keystoreFile="<path_to>/tomcat-8.5.keystore"
           keystorePass="123456" />

1.3 生成证书

# 使用alias 跟keystore 想对应(关联)起来
➜ keytool -export -alias cas.example.org -keystore ~/tomcat-8.5.keystore -storepass 123456 -rfc -file ~/tomcat-8.5.cer
存储在文件 <tomcat-8.5.cer> 中的证书

1.4 查看证书

➜ keytool -printcert -v -file ~/tomcat-8.5.cer
所有者: CN=cas.example.org, OU=szl, O=zkld, L=bj, ST=bj, C=bj
发布者: CN=cas.example.org, OU=szl, O=zkld, L=bj, ST=bj, C=bj
序列号: 54095411
有效期开始日期: Wed Nov 15 11:52:28 CST 2017, 截止日期: Tue Feb 13 11:52:28 CST 2018
证书指纹:
	 MD5: A5:35:3D:E9:CC:EB:F2:31:A2:65:D1:C4:3D:C3:B3:FD
	 SHA1: 56:1B:44:E5:12:21:8B:7B:17:70:38:77:29:7F:50:B7:32:FC:D1:B9
	 SHA256: CE:61:6E:4A:AB:CC:85:39:E0:DE:F2:F4:6E:62:7E:9C:3F:C3:90:19:CE:B9:67:24:E8:43:B9:FE:25:0B:A6:5A
	 签名算法名称: SHA256withRSA
	 版本: 3

扩展:

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 30 38 A9 1E 44 11 8C 5E   D6 98 4B EB B8 C0 DA 61  08..D..^..K....a
0010: F5 87 DA AE                                        ....
]
]

2. jre中的证书

2.1 添加证书

➜ sudo keytool -import -alias cas.example.org -file ~/tomcat.cer -keystore ~/jre/lib/security/cacerts -storepass changeit
所有者: CN=cas.example.org, OU=szl, O=zkld, L=bj, ST=bj, C=bj
发布者: CN=cas.example.org, OU=szl, O=zkld, L=bj, ST=bj, C=bj
序列号: 2dbfdc8e
有效期开始日期: Wed Nov 15 09:22:12 CST 2017, 截止日期: Tue Feb 13 09:22:12 CST 2018
证书指纹:
	 MD5: A3:51:27:7A:D6:35:F3:D9:A4:10:9D:FA:1E:81:30:EC
	 SHA1: 37:96:A6:6B:35:5F:89:B3:CD:B0:58:21:99:05:CE:F5:DE:5C:72:7E
	 SHA256: 04:56:06:3E:BB:28:2F:CB:1D:F7:D5:5E:41:89:34:30:76:DD:2F:18:27:54:4C:3E:C4:BD:EF:8F:73:12:72:DE
	 签名算法名称: SHA256withRSA
	 版本: 3

扩展:

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 0D 9F 95 4C B9 8F CA 53   B7 A8 F9 1E E8 45 55 56  ...L...S.....EUV
0010: 9E 96 FA 0E                                        ....
]
]

是否信任此证书? [否]:  y
证书已添加到密钥库中

2.2 查看证书

➜ sudo keytool -list -keystore ~/jre/lib/security/cacerts -storepass changeit

密钥库类型: JKS
密钥库提供方: SUN

您的密钥库包含 106 个条目

cas.example.org, 2017-11-15, trustedCertEntry,
证书指纹 (SHA1): 37:96:A6:6B:35:5F:89:B3:CD:B0:58:21:99:05:CE:F5:DE:5C:72:7E
...

2.3 删除证书

➜ sudo keytool -delete -alias tomcat -keystore ~/jre/lib/security/cacerts -storepass changeit