tomcat6配置https (双向认证/单向认证)

tomcat6配置双向认证

1
、生成服务器端证书

keytool -genkey -keyalg RSA -dname "cn=localhost,ou=sango,o=none,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password -validity 3650


2
、生成客户端证书

keytool -genkey -keyalg RSA -dname "cn=sango,ou=sango,o=none,l=china,st=beijing,c=cn" -alias custom -storetype PKCS12 -keypass password -keystore custom.p12 -storepass password -validity 3650


客户端的CN可以是任意值。
3
、由于是双向SSL认证,服务器必须要信任客户端证书,因此,必须把客户端证书添加为服务器的信任认证。由于不能直接将PKCS12格式的证书库导入,我们必须先把客户端证书导出为一个单独的CER文件,使用如下命令,先把客户端证书导出为一个单独的cer文件:

keytool -export -alias custom -file custom.cer -keystore custom.p12 -storepass password -storetype PKCS12 -rfc


然后,添加客户端证书到服务器中(将已签名数字证书导入密钥库)

keytool -import -v -alias custom -file custom.cer -keystore server.jks -storepass password


4
、查看证书内容

keytool -list -v -keystore server.jks -storepass password


5
、配置tomcat service.xml文件

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true"
    clientAuth="true" sslProtocol="TLS"
    keystoreFile="D:/server.jks" keystorePass="password"
    truststoreFile="D:/server.jks" truststorePass="password"
/>


clientAuth="true"
表示双向认证
6
、导入客户端证书到浏览器
双向认证需要强制验证客户端证书。双击“custom.p12”即可将证书导入至IE

tomcat6
配置单向认证

1
、生成服务器端证书

keytool -genkey -keyalg RSA -dname "cn=localhost,ou=sango,o=none,l=china,st=beijing,c=cn" -alias server -keypass password -keystore server.jks -storepass password -validity 3650


2
、由于是单向认证,没有必要生成客户端的证书,直接进入配置tomcat service.xml文件

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
    maxThreads="150" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS"
    keystoreFile="D:/server.jks" keystorePass="password"    
/>


clientAuth="false"
表示单向认证,同时去掉truststoreFile="D:/server.jks" truststorePass="password"2

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Tomcat是一种开源的Java Web服务器,Tomcat 9.0.62是其较新的版本之一。双向认证是指在建立通信连接时,双方彼此验证对方的身份,确保安全性和可靠性。 在Tomcat 9.0.62中实现双向认证,需要进行以下步骤: 1. 生成服务器端证书:首先,需要在服务器上生成一个自签名的服务器端证书。这可以使用Java的“keytool”命令来完成。该证书包含服务器的公钥和私钥。 2. 安装服务器端证书:生成证书后,需要将其安装在Tomcat的“conf”目录下,例如“server.crt”和“server.key”文件。 3. 配置Tomcat Connector:在Tomcat的“conf”目录中的“server.xml”文件中,找到“Connector”元素并配置其属性。添加“sslProtocol”属性,设置为“TLS”,以便启用SSL/TLS协议。另外,添加“keystoreFile”属性和“keystorePass”属性,分别指定服务器证书的路径和密码。确保设置“clientAuth”属性为“true”,以启用双向认证。 4. 生成客户端证书和密钥:在生成服务器端证书时,还可以生成用于客户端的证书和密钥。这可以通过Java的“keytool”命令和类似的步骤来完成。 5. 安装客户端证书:生成证书后,需要将其安装在客户端的信任库中。这可以通过将证书导入到客户端的“cacerts”文件中来完成,该文件位于JDK的“lib/security”目录下。 6. 配置客户端连接:在客户端的代码中,需要配置SSL/TLS连接以使用客户端证书。这可以通过设置Java系统属性来完成,例如“javax.net.ssl.keyStore”和“javax.net.ssl.keyStorePassword”的值分别为客户端证书和密码。 完成上述步骤后,双向认证就已经配置好了。当客户端向服务器发出请求时,服务器将验证客户端的身份,并使用客户端证书进行其验证。在通信过程中,双方都可以相互验证对方的身份,确保通信的安全性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值