installcert.java证书_apiclub.ssl

/**

* Class used to add the server's certificate to the KeyStore with your trusted

* certificates.

*

* Usage: java InstallCert [:port] [passphrase]

*

* java InstallCert www.test.com 或 java -jar JavaInstallCert.jar github.com

*

* Enter certificate to add to trusted keystore or 'q' to quit: [1]

*

* 输入1,回车,然后会在当前的目录下产生一个名为"jssecacerts"的证书。 将证书拷贝到$JAVA_HOME/jre/lib/security目录下

* 或者通过以下方式: System.setProperty("javax.net.ssl.trustStore","你的jssecacerts证书路径");

*

* 注意:因为是静态加载,所以要重新启动你的Web Server,证书才能生效。

*

* 生成的 jssecacerts 证书是将原JDK下的文件加入新的证书后生成的,所以之前的jssecacerts内容并不丢失

*

*/

/**

*

* 手工方式生成SSL证书

*

* 生成server.keystore,3650表示10年有效期

* keytool -genkey -alias server -keyalg RSA -validity 3650 -keystore server.keystore

* 或

* keytool -genkey -alias server -keyalg RSA -keystore server.keystore

*

* ★快捷生成证书★

* keytool -genkey -v -alias server -keyalg RSA -validity 3650 -keystore server.keystore -dname "CN=www.apiclub.cn,OU=apiclub,O=apiclub,L=CS,ST=HN,C=CN" -storepass 123456 -keypass 123456

*

* 导出server端信任证书为 server.cer

* keytool -export -alias server -keystore server.keystore -file server.cer

* 或

* keytool -export -alias server -keystore server.keystore -file server.crt

*

* 生成client.keystore

* keytool -genkey -alias server -keyalg RSA -validity 3650 -keystore client.keystore

*

* 导出client端信任证书为 client.cer

* keytool -export -alias client -keystore client.keystore -file client.cer

*

*

* ★创建truststore证书★

*

* 导入 server 端的 server.cer 到 client 端 truststore 文件 client.truststore 中,并加以别名server

* keytool -import -file server.cer -keystore client.truststore -alias server

*

* 导入 client 端的 client.cer 到 server 端 truststore 文件 server.truststore 中,并加以别名client

* keytool -import -file client.cer -keystore server.truststore -alias client

*

*

* openssl req -new -x509 -days 3650 -nodes -out server.crt -keyout server.key

*

* (注意生成域名证书的时候,CN名称 Common Name 要为域名的名称)

*

* ★查看server.keystore内容★

* keytool -list -keystore server.keystore

*

* ★keytool命令导入到JDK的信任证书中★

* keytool -import -file –keystore

*

* keytool -import -alias server-xxx -file server.cer -keystore D:\jdk6\jre\lib\security\cacerts

*

* keytool -import -alias server-xxx -file server.cer -keystore D:\jdk6\jre\lib\security\cacerts -keypass changeit

*

* keytool -import -trustcacerts -alias server-xxx -file server.cer -keystore D:\jdk6\jre\lib\security\cacerts -keypass changeit

*

* JVM中可使用的参数

*

* -Djavax.net.ssl.keyStore=clientKeys

* -Djavax.net.ssl.keyStoreType=BKS

* -Djavax.net.ssl.keyStorePassword=password

*

* -Djavax.net.ssl.trustStore=clientTrusts

* -Djavax.net.ssl.trustStoreType=BKS

* -Djavax.net.ssl.trustStorePassword=password

*

*

* Tomcat下单向认证

*

* sslProtocol="TLS" keystoreFile="server.keystore" keystorePass="changeit" keystoreType="jks" />

*

* Tomcat下双向认证(未验证)

*

* sslProtocol="TLS" keystoreFile="server.keystore" keystorePass="changeit" keystoreType="jks" truststoreFile="client.truststore"

* truststorePass="changeit" truststoreType="jks" />

*

*

* sslProtocol 中的 TLS 和 SSL 区别:TLS是SSL的扩展,TLS属于更高安全的协议

* TLS:(Transport Layer Security,传输层安全协议)

* SSL:(Secure Socket Layer,安全套接字层)

*

*/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值