Jmeter进行HTTPS接口压测及SSL证书验证

一、前言

  使用JMeter压测HTTPS接口比较简单,只需要预先处理SSL证书认证,后面就是压测HTTP接口的通用步骤。

HTTPS连接证书来验证浏览器和WEB服务器之间的连接。通过HTTP连接时,服务器会将证书提供给浏览器。为

了对证书进行身份验证,浏览器会检查服务器证书是否链接到其内置根CA之一的证书颁发机构(CA)签名。

  今天这篇文章,介绍进行SSL证书验证和不进行SSL证书验证两种方法。

二、证书验证

  1、证书下载

  使用浏览器打开被测地址,点击地址栏左侧的小锁图标。不同浏览器显示的样式可能不一样,建议使用Chrome

浏览器打开。在详细信息界面导出证书,导出格式选择der,文件名自定义。

  2、证书生成

  这里利用JDK中自带的keytool.exe工具,重新生成证书。在命令行中进入JDK的bin目录下,执行下面命令

复制代码
keytool.exe -import -alias singlewindow.store -file D:\singlewindow.der -keystore D:\singlewindow.keystore

  singlewindow.der:浏览器导出的证书

  singlewindow.keystore:重新生成的证书

  过程中的口令:用户自定义

  是否信任证书:y

  3、导入Jmeter

  打开Jmeter工具,在Options/SSL Manager中刚刚重新生成的证书。然后运行配置好的HTTPS接口请求,需要输入

生成证书时设置的密码,在 View Results Tree 中查看运行结果。

三、绕过SSL验证

  通过修改Jmter配置文件,来达到这一目的。jmeter.properties文件路径一般如下

复制代码
E:\Jmeter\apache-jmeter-5.5\bin\jmeter.properties

找到下面这个配置,将false改为true,并将前面默认的"#"去掉。修改完成,重启Jmeter再运行脚本即可。

复制代码
server.rmi.ssl.disable=false
相关推荐
春天花会开13112 小时前
内网 HTTPS 部署实战:私有 CA + Nginx 反向代理全流程复盘
运维·nginx·https
2501_916007476 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
Lsetea6 天前
证书没到期却报certificate has expired:OpenSSL定位中间证书与系统时间
运维·https·ssl证书·openssl·证书链
2501_916008896 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
SDWAN_Cheap6 天前
HTTPS到底加密了什么?
https·数据加密
2501_916008896 天前
怎么用 Godot 导出 iOS 应用并上架 App Store?签名字段该填什么?
android·ios·小程序·https·uni-app·iphone·webview
Lsetea7 天前
Nginx报No required SSL certificate was sent:mTLS客户端证书排查
运维·nginx·https·ssl·openssl
ZeroNews内网穿透7 天前
内网部署 Halo 建站,用 ZeroNews 免费内网穿透安全发布到公网(无公网 IP 也能 HTTPS 访问)
docker·https·内网穿透·nas·反向代理·halo·zeronews
szephyr8 天前
HTTPS 证书申请与自动续期:acme.sh + Let‘s Encrypt 完整记录
nginx·https·acme.sh·证书续期
Lsetea8 天前
部署证书后提示“证书名称与输入不匹配”:Safari 报错的三层排查
nginx·https·safari·ssl证书·openssl