1、证书查看与删除
查看是否已创建过同名的证书
keytool -list -v -alias ssotest -keystore "%JAVA_HOME%/JRE/LIB/SECURITY/CACERTS" -storepass changeit
删除已创建的证书
keytool -delete -alias
ssotest
-keystore "%JAVA_HOME%/JRE/LIB/SECURITY/CACERTS"
-storepass changeit
以上的ssotest为证书名
2、生成服务端密钥文件
打开cmd窗体,输入下面命令:
keytool -genkey -alias
ssotest
-keypass 123456 -keyalg RSA -keystore
test
.keystore -validity 365
-genkey
在用户主文件夹中创建一个默认文件".keystore",还会产生一个mykey的别名。mykey中包括用户的公钥、私钥和证书
-alias
-keypass 指定私钥password
-keyalg
指定密钥的算法
-keystore
指定密钥库的名称(产生的各类信息将不在.keystore文件里
-validity
指定创建的证书有效期多少天
另外提示的输入keystorepassword应与-keypass指定的同样;您的名字与姓氏是CASserver使用的域名(不能是IP。也不能是localhost),其他项任意填。
3、
生成服务端证书
依据以上生成的服务端的密钥文件能够导出服务端证书,运行下面命令:
keytool
-export -alias
ssotest
-storepass 123456 -file test.cer -keystore
test
.keystore
-export
将别名指定的证书导出到文件
-alias
指定别名为
ssotest
-storepass
指定私钥为123456
-file
指定导出证书的文件名称为
test.cer
-keystore
指定之前生成的密钥文件的文件名称
test
.keystore
4、导入证书
运行下面命令:
keytool
-import -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -file
test.cer
-alias
ssotest
之后会要求输入密钥库口令,默觉得:changeit
5、配置tomcat
打开tomcat下的conf/server.xml,找到下面片段:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
替换成:
<Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
disableUploadTimeout="true" enableLookups="false" maxThreads="25"
port="8080" keystoreFile="keystore证书路径" keystorePass="123456"
protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
secure="true" sslProtocol="TLS" />