Tomcat配置SSL支持单向认证和双向认证
keytool -genkey -alias test1 -keystore server.keystore -keyalg RSA -validity 3650
执行以上命令后,提示以下:
输入keystore密码:
您的名字与姓氏是什么?
[Unknown]: 这里填写域名或者ip
您的组织单位名称是什么?
[Unknown]: GDPOST
您的组织名称是什么?
[Unknown]: Server
您所在的城市或区域名称是什么?
[Unknown]: Guangzhou
您所在的州或省份名称是什么?
[Unknown]: Guangdong
该单位的两字母国家代码是什么
[Unknown]: CN
CN=dsjkzj.gdpost.com.cn, OU=GDPOST, O=Server, L=Guangzhou, ST=Guangdong, C=CN 正确吗?
[否]: y
输入<dsjkzj.gdpost.com.cn>的主密码
(如果和 keystore 密码相同,按回车):
参数含义:
- genkey:告诉keytool应用程序生成新的公钥/私钥对。
- alias:用于引用密钥的名称。记住,.keystore文件可包含多个密钥。
- Keyalg:使用RSA算法生成公钥/私钥对。
- Storepass:访问.keystore文件所需的口令。
- Keypass:管理密钥所需的口令。
- dname:该值非常重要。.我使用了localhost,因为该示例被设计为本地运行。如果一个Web应用程序被注册http://www.myserver.com,那么该值就必须是www.myserver.com。如果名称不匹配,证书就会自动被拒绝
- keystore: 指定文件名,则文件生成到当前目录下,如果不指定该参数就会在HOME目录下生成一个.keystore文件,建议指定。
配置单项认证
add Connector
<Connector port="8443" enableLookups="false"
protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" secure="true"
keystoreFile="/path/name.keystore" keystorePass="12345678"
sslEnabledProtocols="TLSv1.1,TLSv1.2"
clientAuth="false" >
</Connector>
浏览器打开http://127.0.0.1:8443,浏览器会提示此网站的安全证书有问题,是否继续访问