tomcat 配置
一,单向认证
1.生成证书
使用 JDK自带的keytool工具来生成证书,可以用任意一台安装jdk的主机来生成,不需要去机构申请。
keytool -genkey -alias tomcat -keyalg RSA -keypass 123456 -storepass 123456 -keystore tomcat.jks -validity 3650 -dname "CN=127.0.0.1,OU=localhost,O=localhost,L=localhost,ST=localhost,C=localhost"
keytool -certreq -alias tomcat -keyalg RSA -keypass 123456 -storepass 123456 -keystore tomcat.jks -file tomcat.pem
keytool -export -trustcacerts -alias tomcat -file tomcat.cer -keystore tomcat.jks -storepass 123456
参数解释:
-genkeypair 表示生成密钥
-keyalg 指定密钥算法,这里指定为RSA算法。
-keysize 指定密钥长度,默认1024位,这里指定为2048位。
-sigalg 指定数字签名算法,这里指定为SHA1withRSA算法。
-validity 指定证书有效期,这里指定为3650天。
-alias 指定别名,这里是tomcat
-keystore 指定密钥库存储位置
-certreq 表示数字证书申请操作
-alias 指定别名,这里tomcat
-keystore 指定密钥库文件,这里为tomcat.jks
-file 指定导出文件路径这里为tomcat.csr
-exportcert 表示证书导出操作。
-alias 指定导别名,这里为tomcat
-keystore 指定密钥库文件,这里为tomcat.jks
-file 指定导出文件路径,这里为tomcat.cer
-rfc 指定以Base64编码格式输出
输入以上命令后出现交互窗口输入相关信息即可
修改server.xml文件
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="/home/dn/ca/tomcat.jks" keystorePass="123456" />
通过https:localhost:8443访问即可
附:配置http重定向到https。在应用程序中web.xml中加入:
<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
weblogic配置
生成证书步骤和tomcat 一致
需要注意的是生成证书需要使用weblogic 支持的版本生成,否则会报错。
进入控制台
http://localhost:7001
选中即可
保存配置,重启服务
访问地址变为https:localhost:7002