关于解决https JDK导入安全证书方面的踩的坑
2018-04-27 20:15
295 查看
目前在研究cas sso相关的搭建知识。开始便是关于HTTPS安全证书的一些问题,简单说一下本文的目的:安全证书的生成,jdk导入安全证书。先说自己定义的域名编辑文件 C:\Windows\System32\drivers\etc\hosts 在文件末端添加下面的信息:
1:win+R 快捷键打开DOS命令窗口2:输入以下命令,生成证书
4:JDK导入证书由于是本地没有证书,证书是自己生成的,所以,务必将生成的证书导入到jre的证书链中,不然是无法支持CAS认证服务的。 在cmd窗口输入命令:
第一个红色框是我进入的JDK目录第二个我没有加""报的错,第三个是我正确输入路径之后展示的效果就是正确的接下来输入密码changeit这是默认额的密码建议不要修改,不是输入上面的keypass密码啊,不要弄错了。 紧接着输入y便可JDK导入安全证书成功。本人借鉴http://www.cnblogs.com/zhoubang521/p/5200407.html此篇博客加以补充自己踩过的坑,介绍的会更加详细,后面我会把自己真的项目的部署过程公开给大家学习。
keytool -genkey -alias ssodemo -keyalg RSA -keysize 1024 -keypass ywj123 -validity 365 -keystore G:\ywj_cas.keystore -storepass ywj123解释一下:-alias后面的ssodemo 是我生成证书的别名 ,-keypass ywj123是我要生成证书的密码,-storepass ywj123要与上面的-keypass密码相同-keystore G:\ywj_cas.keystore 指定证书的位置
【注意】:第一个让你输入的“您的名字与姓氏是什么”,请必须输入在C:\Windows\System32\drivers\etc\hosts文件中加入的服务端的域名。
我这里也就是server.ywj123.com,为何这么做?
首先cas只能通过域名来访问,不能通过ip访问,同时上方是生成证书,所以要求比较严格,所以如果不这么做的话,及时最终按照教程配置完成,cas也可以正常访问,访问一个客户端应用虽然能进入cas验证首页,但是,当输入信息正确后,cas在回调转入你想访问的客户端应用的时候,会出现No subject alternative names present错误异常信息,这个错误也就是在上面输入的第一个问题答案不是域名导致、或者与hosts文件配置的不一致导致3:导出证书在cmd窗口继续输入以下命令,导出证书:keytool -export -alias ssodemo -keystore G:\ywj_cas.keystore -file G:\ssodemo.crt -storepass ywj123
4:JDK导入证书由于是本地没有证书,证书是自己生成的,所以,务必将生成的证书导入到jre的证书链中,不然是无法支持CAS认证服务的。 在cmd窗口输入命令:
keytool -import -keystore "%JAVA_HOME%\jre\lib\security\cacerts" -file G:\ssodemo.crt -alias ssodemo这里一定要注意一点首先使用%JAVA_HOME%这个路径你是在自己系统环境变量中配置好的jdk路径的,其次一定要主要双""别忘记加了。我就是在这里采坑的,另外还有就是输入这行命令的前提路径是进入你的cd G:\ProgramFiles\Java\jdk1.7.0_17\jre\lib\security这个jdk的安装路径上图:
第一个红色框是我进入的JDK目录第二个我没有加""报的错,第三个是我正确输入路径之后展示的效果就是正确的接下来输入密码changeit这是默认额的密码建议不要修改,不是输入上面的keypass密码啊,不要弄错了。 紧接着输入y便可JDK导入安全证书成功。本人借鉴http://www.cnblogs.com/zhoubang521/p/5200407.html此篇博客加以补充自己踩过的坑,介绍的会更加详细,后面我会把自己真的项目的部署过程公开给大家学习。
附常用命令:
//查看cacerts中的证书列表:
keytool -list -keystore "%JAVA_HOME%/jre/lib/security/cacerts" -storepass changeit
//删除cacerts中指定名称的证书:
keytool -delete -alias ssodemo -keystore "%JAVA_HOME%/jre/lib/security/cacerts" -storepass changeit
//导入指定证书到cacerts:
keytool -import -alias ssodemo -file ssodemo.cer -keystore"%JAVA_HOME%/jre/lib/security/cacerts" -storepasschangeit-trustcacerts
相关文章推荐
- 关于如何取消访问https时的提示:“此网站的安全证书存在问题”的解决方法
- 导入安全证书到jdk步骤详细说明-原
- IE8访问https链接警告安全证书错误的解决办法
- IE8 访问https安全证书错误;导航阻止 解决办法 《转》
- 调用Https WebService发布后使用时报“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系”证书验证失败的解决过程(3)
- 把https网站中的安全证书导入到java中的cacerts证书库
- 关于jdk版本问题导致的eclipse导入web项目出错解决方法
- 如何把Https网站中的安全证书导入到java中的cacerts证书库?
- 关于火车票12306网站出现“此网站的安全证书存在问题”解决办法
- 解决linux netcore https请求使用自签名证书忽略安全检查方法
- 导入安全证书到jdk步骤详细说明
- 如何把Https网站中的安全证书导入到java中的cacerts证书库?
- 解决https证书导入路径有空格问题
- cordova应用在遇到https下安全证书有问题的解决方式
- IE8 访问https安全证书错误;导航阻止 解决办法 《转》
- [转载]如何把Https网站中的安全证书导入到java中的cacerts证书库?
- 解决https证书导入路径有空格问题
- 何把Https网站中的安全证书导入到java中的cacerts证书库?
- Windows, 使用https访问网页提示此网站的安全证书有问题解决方法
- xp sp3 + ie8 支付宝证书 导入出错以及安全验证身份出错 解决办法