记录一次https的调试
2017-06-21 11:52
183 查看
前言:最近公司b2b,b2c生产环境更换了http协议为https,随之而来就是所有内外部通讯通知,都要更换,所以有了这次https的调试。
注释:这里面Java https发送的代码就不展示了,网上也可以找到很多,如果有需要我可以后续粘贴出来。
启动服务,第一次发送带参数的POST的HTTPS 请求。
问题:提示SSLv3协议错误,服务器选择sslv3但是本地环境不支持。
为啥不支持SSLv3协议?这里我搜索了下相关问题。原来是SSLv3有安全漏洞,JDK1.7以后已经把SSLv3默认禁止了。
但是此时,我需要使用到SSLv3在已有的环境中怎么办?更换JDK试试?于是有了第二次调试。
因为项目是以JDK1.7环境开发的所以更换为1.6以后项目很多报错,所以只能以main函数的方式进行测试。
结果为通讯正常。终于通了,验证了这个问题。
**1.JDK1.6 SSLv3协议可以使用。
2.JDK1.7 因为安全问题应该是禁止或是移除了SSLv3协议。**
这样就有了眉目,如果JDK1.7是禁止了协议,应该会有方法找回来,如果是移除掉了就不好办了。
鉴于前两次的调试,有了些解决的思路。既然是安全问题使JDK1.6以后不能再使用SSLc3协议,那我就去看看JDK1.7的安全配置文件有没有线索。\jre\lib\security\java.security
打开java.security 文件,试着搜索一下SSLv3,结果查找出一条这样的信息。
disabled禁止了SSLv3协议,尝试注掉这行配置。
再次运行,成功运行!这次https的调试终于暂时结束了。
ps:jdk里面会有两个文件夹jre的,以jdk1.7 为例,里面就有jre 和 jre7,修改配置文件只需要修改jre中的java.security 文件就可以。还有注掉这行配置可能有安全问题的隐患,我的这次调试只是有一个解决这个问题的思路。希望能有个更好的解决这个问题的方法。
注释:这里面Java https发送的代码就不展示了,网上也可以找到很多,如果有需要我可以后续粘贴出来。
第一次调试 语言:Java 环境:JDK1.7
启动服务,第一次发送带参数的POST的HTTPS 请求。
问题:提示SSLv3协议错误,服务器选择sslv3但是本地环境不支持。
为啥不支持SSLv3协议?这里我搜索了下相关问题。原来是SSLv3有安全漏洞,JDK1.7以后已经把SSLv3默认禁止了。
但是此时,我需要使用到SSLv3在已有的环境中怎么办?更换JDK试试?于是有了第二次调试。
第二次调试 语言:Java 环境:JDK1.6
因为项目是以JDK1.7环境开发的所以更换为1.6以后项目很多报错,所以只能以main函数的方式进行测试。
结果为通讯正常。终于通了,验证了这个问题。
**1.JDK1.6 SSLv3协议可以使用。
2.JDK1.7 因为安全问题应该是禁止或是移除了SSLv3协议。**
这样就有了眉目,如果JDK1.7是禁止了协议,应该会有方法找回来,如果是移除掉了就不好办了。
第三次调试 语言:Java 环境:JDK1.7
鉴于前两次的调试,有了些解决的思路。既然是安全问题使JDK1.6以后不能再使用SSLc3协议,那我就去看看JDK1.7的安全配置文件有没有线索。\jre\lib\security\java.security
打开java.security 文件,试着搜索一下SSLv3,结果查找出一条这样的信息。
jdk.tls.disabledAlgorithms=SSLv3
disabled禁止了SSLv3协议,尝试注掉这行配置。
#jdk.tls.disabledAlgorithms=SSLv3
再次运行,成功运行!这次https的调试终于暂时结束了。
ps:jdk里面会有两个文件夹jre的,以jdk1.7 为例,里面就有jre 和 jre7,修改配置文件只需要修改jre中的java.security 文件就可以。还有注掉这行配置可能有安全问题的隐患,我的这次调试只是有一个解决这个问题的思路。希望能有个更好的解决这个问题的方法。
相关文章推荐
- 记录一次给网站服务器添加SSL(https)的过程
- geotrellis使用(七)记录一次惨痛的bug调试经历以及求DEM坡度实践
- 记一次网站访问慢的调试记录
- 一次miniSQL调试记录
- Java虚拟机学习笔记-记录一次编译OpenJDK8与调试的过程
- 记录一次升级https走过的坑
- 记录一次并未读源码调试程序的经历
- 记录一次阿里云部署https的大致经过
- 记录一次http切换成https,并修改域名过程的坑自己的经历
- 一次调试c++ bug的记录
- geotrellis使用(十二)再记录一次惨痛的伪BUG调试经历(数据导入以及读取瓦片)
- 记录一次core文件调试
- 一次C++调试记录
- HTTPS传送文件的打包方式(为一个朋友调试的过程)
- 嵌入式编程中调试问题全记录
- VS2005 Winform程序不能启动调试,别忘了启动Terminal Services服务[记录]
- asp.net中一次更新DATAGRID中所有记录
- sql2000 一次删除数据库表中所有记录的sql语句
- 解决问题全记录(五)-不能单步调试webservice
- 批量更新与逐条更新分块提交的一次实例:修改客户信息表700万条中50万条记录