Jmeter 发起Http请求时返回:javax.net.ssl.SSLHandshakeException: Remote host terminated the handshake

解决方案:

1.查看运行环境的网络是否开了梯子,之前一直报错后来把梯子关了后,一定要重启jmeter,再重新请求就好了

2.修改jmeter.properties文件:https.default.protocol=TLS,这个和运行环境的jdk版本有对应关系:

JDK版本HTTPS请求默认使用的TLS版本支持的协议
7TLSv1TLSv1、TLSv1.1、TLSv1.2、SSLv3
8TLSv1.2TLSv1、TLSv1.1、TLSv1.2、SSLv3
11TLSv1.3TLSv1、TLSv1.1、TLSv1.2、TLSv1.3、SSLv3

3.有帖子说:修改jmeter的http请求的高级设置

### JMeter 中 `javax.net.ssl.SSLException` 异常解决方案 当在 JMeter 测试过程中遇到 `javax.net.ssl.SSLException: Unsupported or unrecognized SSL message` 或者 `Unrecognized SSL message, plaintext connection` 的错误提示,这通常是由于客户端与服务器之间未能成功协商 SSL/TLS 协议版本或加密套件所引起的[^1]。 #### 一、确认目标站点支持的协议和算法 不同的 Web 应用程序可能会强制执行特定版本的安全传输层 (TLS) 和一组允许使用的密码学算法。因此,在测试之前应该先了解被测系统的安全策略并相应调整 JMeter 设置以匹配这些需求。 对于某些老旧系统来说,默认情况下它们可能只接受较低版本的 TLS/SSL;而对于较新的应用,则更倾向于采用更高强度的安全措施。可以通过查阅官方文档或者联系运维团队来获取确切的信息。 #### 二、修改 JVM 参数设置 Java 虚拟机(JVM)提供了几个重要的参数用于控制其内部处理 HTTPS 请求的方式: - `-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2`: 明确指定要启用哪些 TLS 版本。 - `-Djdk.tls.client.protocols=TLSv1.2`: 如果只需要单个版本的话可以这样简化设定。 - `-Dsun.security.ssl.allowUnsafeRenegotiation=true`: 对于那些仍然依赖不安全重协商特性的旧版应用程序而言可能是必要的选项之一。 以上提到的所有属性都可以直接添加到启动命令行里作为额外参数传递给 JMeter 执行环境,也可以编辑 ApacheJMeter.bat(.sh 文件取决于操作系统平台),找到对应位置加入上述配置项即可生效[^2]。 #### 三、更新 Java 开发工具包(JDK) 确保正在运行最新稳定发行版级别的 JDK 是非常重要的一步操作。因为随着间推移,Oracle 不断改进和完善了内置库函数中的网络通信组件部分,从而提高了整体安全性以及兼容性表现。特别是针对新出现的各种漏洞补丁更是及进行了修复工作。所以建议定期检查是否有可用升级,并尽快完成安装过程[^3]。 #### 四、验证证书有效性 如果是在企业内网环境下开展性能评估活动,那么很可能涉及到私有 CA 颁发的身份凭证文件。此就需要特别注意两点事项: 1. **受信根CA列表维护**: 将所有合法颁发机构签发过的公钥存入本地密钥仓库(keystore)之中; 2. **过期间管理**: 定期审查即将到期的对象清单,提前做好续订计划安排以免影响正常使用体验。 另外值得注意的一点就是浏览器插件式录制回放功能会自动创建临型自签名证书来进行流量拦截解码分析用途,而这往往会造成后续真实场景模拟阶段出现问题。为了避免这种情况发生,可以在采样器(Sampler)级别上禁用此特性开关[^4]。 ```bash -Dhttp.proxyHost=localhost \ -Dhttp.proxyPort=8080 \ -Dhttps.proxyHost=localhost \ -Dhttps.proxyPort=8080 \ -DproxySet=true \ -Djava.net.useSystemProxies=true \ -Dhttps.cipherSuites=TLS_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 \ -Dhttps.protocols=TLSv1.2 \ -Djavax.net.debug=all ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值