Resin-3.1.6配置https双向认证

转自:http://bbs.chinaunix.net/thread-1708177-1-1.html
============================================================================
一 生成服务器证书
使用keytool为Resin生成证书,假定服务器的域名是"aa.bb.com",keystore文件存放在"/usr/resin/conf",口令为“123456”,使用下面的命令:
/usr/local/jdk/bin/keytool -genkey -v -alias resin -validity 3650 -keyalg RSA -keystore /usr/resin/conf/server.keystore -dname "CN=aaa.bb.com,OU=a,O=a,L=SH,ST=SH,C=CN" -storepass 123456 -keypass 123456
二 生成客户端证书
生成IE能使用的证书,所以其格式将是PKCS12,使用下面的命令来完成:
/usr/local/jdk/bin/keytool -genkey -v -alias resin -validity 3650 -keyalg RSA -storetype PKCS12 -keystore /usr/resin/conf/client.p12 -dname "CN=aaa.bb.com,OU=a,O=a,L=SH,ST=SH,C=CN" -storepass 123456 -keypass 123456
三 服务端信任客户端
由于是双向SSL认证,服务器必须要信任客户端证书,因此,必须把客户端证书添加为服务器的信任认证。由于不能直接将PKCS12格式的证书库导入,所以要先把客户端证书导出为一个单独的CER文件,命令如下:
/usr/local/jdk/bin/keytool -export -alias resin -keystore /usr/resin/conf/client.p12 -storetype PKCS12 -rfc -file /usr/resin/conf/client.cer
下一步是把生成的.cer文件添加到服务器的信任证书库,是其成为服务器的信任证书,命令如下:
/usr/local/jdk/bin/keytool -import -v -file /usr/resin/conf/client.cer -keystore /usr/resin/conf/server.keystore
通过list命令可以查看服务器的证书库,在里面讲看到两个证书,一个服务端的、一个客户端的。
四 将客户端证书导入cacerts密钥库
/usr/local/jdk/bin/keytool -import -v -trustcacerts -storepass changeit -alias resin -file /usr/resin/conf/client.cer -keystore /usr/local/jdk/jre/lib/security/cacerts
五 配置Resin
在Resin的配置文件中添加如下配置:
<http address="*" port="443">
<jsse-ssl>
<key-store-type>jks</key-store-type>
<key-store-file>/usr/resin/conf/server.keystore</key-store-file>
<password>123456</password>
<verify-client>required</verify-client>
</jsse-ssl>
</http>
<verify-client>required</verify-client>此项是开启双向认证。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值