JMeter:如何记录HTTPS流量?

发布于 2024-07-08 09:55:25 字数 200 浏览 6 评论 0 原文

我正在使用 Apache JMeter 2.3,它现在支持代理服务器元素下的“尝试 HTTPS 欺骗”。

我已经在几个不同的服务器上尝试过此操作,但没有成功。 有人能够使用此设置从 HTTPS 源成功录制吗?

或者除非成功录制,任何人都可以分享解决方法吗? 如果可用,我只需在服务器级别关闭 HTTPS,但这并不总是可行。 想法?

I'm using Apache JMeter 2.3, which now supports "attempt HTTPS spoofing" under the Proxy Server element.

I've tried this on several different servers, and have had no success.
Has anyone been able to successfully record from an HTTPS source with this setting?

Or barring successfully recording, can anyone share a work-around? When available, I simply have HTTPS turned off at the server level, but this is not always feasible. Thoughts?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

凉墨 2024-07-15 09:55:25
  1. 从 JMeter 3.0 默认端口开始 HTTP(S) 测试脚本Recorder8888

  2. 配置记录的最简单方法是使用 JMeter 模板功能。 从 JMeter 的主菜单中选择:

    文件 ->   模板->   录音->   创造 
      

录音模板

  1. 不要忘记启动录音机:

    • 在 JMeter 中
    • 4.0,展开“工作台”,如果>=4.0,则忽略此步骤
    • 选择“HTTP(S) 测试脚本记录器”
    • 点击“开始”按钮

Start Recorder

  1. 您将看到一条有关根 CA 证书. 单击“确定”:

 OK for message

  • 没关系,它通知您 JMeter 已创建一个根证书颁发机构,您需要将其导入到浏览器中才能正确记录 HTTPS 流量。

    启动代理

  • 要在 Firefox 中导入此根 CA 证书(位于 jmeter/bin 文件夹中),例如:

第 1 步

第 2 步

第 3 步

第 4 步

第 5 步

  1. 配置浏览器使用 JMeter 作为代理:

在浏览器中将 JMeter 配置为代理

现在就可以了。

  • 您可以导航到您的应用程序,采样器将在“Recording Controller”下创建,其中位于“线程组”元素下
  1. Starting from JMeter 3.0 default port for the HTTP(S) Test Script Recorder is 8888

  2. The easiest way to configure recording is using JMeter Templates feature. From JMeter's main menu select:

    File -> Templates -> Recording -> Create
    

Recording Template

  1. Don't forget to start the recorder :

    • In JMeter < 4.0, Expand "Workbench", if >= 4.0, ignore this step
    • Select "HTTP(S) Test Script Recorder"
    • Click "Start" button

Start Recorder

  1. You will see a message regarding Root CA Certificate. Click OK:

Ok for message

  • it is OK, it informs you JMeter has created a Root Certificate Authority that you need to import in your browser to be able to record correctly HTTPS traffic.

    Start proxy

    1. To Import this Root CA certificate in Firefox (it is located in jmeter/bin folder) for example:

Step 1

Step 2

Step 3

Step 4

Step 5

  1. Configure browser to use JMeter as proxy:

Configure JMeter as proxy in Browser

It is now Ok.

  • You can navigate to your application, samplers will be created under "Recording Controller" which is under "Thread Group" element
ぃ双果 2024-07-15 09:55:25

虽然 JMeter 代理已经具备记录 HTTPS 请求的能力,但最近又出现了一个创建 JMeter 脚本的 Chrome 扩展:
https://chrome.google.com/webstore /detail/blazemeter-the-load-testi/mbopgmdnpcbohhpnfglgohlbhfongabi?hl=en

它使用 BlazeMeter 作为中间人(云服务中的商业 JMeter),但您可以永远使用他们的免费服务,并且仍然使用该插件记录 JMX 脚本并将其本地下载到您自己的计算机,即使您从未使用任何付费计划。

While the JMeter proxy already has the ability to record HTTPS requests, a Chrome Extension that creates JMeter script came out recently:
https://chrome.google.com/webstore/detail/blazemeter-the-load-testi/mbopgmdnpcbohhpnfglgohlbhfongabi?hl=en

It uses a BlazeMeter as the middleman (a commercial JMeter in the cloud service) but you can use their free service forever and still use the plugin to record a JMX script and download it locally to your own machine even if you never use any of the paid plans.

扛刀软妹 2024-07-15 09:55:25

我所做的是:

  1. 使用我的网络服务器的 IP 地址访问我的网站(即 http://2.2.2.2/ login.html)
  2. 启动记录器并运行我的测试用例
  3. 停止记录
  4. 将 HTTP 请求采样器中的 IP 地址的所有值替换为域名(即,将 2.2.2.2 替换为 yoursite.com)
  5. 将协议设置为HTTP 请求采样器中的 https

如果您有多个页面,最简单的方法是创建一个 HTTP 请求默认值项,并在其中设置您的域名和协议。

仅供参考,我使用的是截至 2010 年 5 月 24 日的最新稳定版本:Jmeter 2.3.4 r785646。

What I do is:

  1. Go to my website using my web server's IP-address (i.e. http://2.2.2.2/login.html)
  2. Start the recorder and run through my test case
  3. Stop recording
  4. Replace all values of the IP address with the domain name (i.e. replace 2.2.2.2 with yoursite.com) from the HTTP Request Samplers
  5. Set the protocol to https in the HTTP Request Samplers

If you have more than a few pages, it's easiest to create an HTTP Request Defaults item, and set your domain name and protocol there.

FYI, I'm using the latest stable build as of 2010-05-24: Jmeter 2.3.4 r785646.

如痴如狂 2024-07-15 09:55:25

最新版本的Jmeter(2.4)现在支持HTTPS记录。 麾!

更多细节:
http://wiki.apache.org/jmeter/JMeterFAQ#Can_JMeter_record_HTTPS_requests_using_the_recording_proxy.3F

The newest version of Jmeter (2.4) now supports HTTPS recording. Rejoice!

More details:
http://wiki.apache.org/jmeter/JMeterFAQ#Can_JMeter_record_HTTPS_requests_using_the_recording_proxy.3F

梨涡少年 2024-07-15 09:55:25

除了Bad boy和Https欺骗之外,还有其他记录HTTPS的方法吗?

是的——使用每晚构建的 JMeter,例如版本 r922204。

Is there any other way to record HTTPS than Bad boy and Https spoofing?

Yes--use a nightly build of JMeter, e.g. version r922204.

不即不离 2024-07-15 09:55:25

截至今天,HTTPS 录制已在新版本的 Jmeter 2.9 中成功运行。 我必须导入代理证书并使用 Firefox 才能使其正常工作。

请参阅此链接了解更多信息
使用 Jmeter 进行 Https 录制

Https recording is successfully working in new version of Jmeter 2.9 as of today. I had to import proxy certificate and play around with Firefox to get this working.

Refer this link for more information
Https recording using Jmeter

余厌 2024-07-15 09:55:25

是的,我已经在“尝试 HTTPS 欺骗”的情况下使用了它。 事情很简单:

  1. 打开 HTTPS 欺骗(当然)。
  2. 确保浏览器向Jmeter发送Http请求,以便Jmeter记录下来,然后将加密的请求发送回服务器。 因此,浏览器中的 URL 应以 http:// 开头(而不是 https://)。 详细信息可以在我的博客。

请告诉我它是否适合您。

Yes, I have used it with "attempt HTTPS spoofing" on. Things are simple enough:

  1. Turn HTTPS Spoofing on (of course).
  2. Make sure that the browser sends Http request to Jmeter, so that Jmeter can record it and then send the encrypted request back to the server. So, the URL in the browser should start with http:// (and not with https://). The details could be found in my blog.

Please let me know if it works for you.

累赘 2024-07-15 09:55:25

我正在使用 Webscarab 来记录 https 和 ajax 对话。
效果很好。 我通过 Jmeter 的导出功能扩展了 Webscarab。
Bugzilla 48898。

I am using Webscarab to record https and ajax conversations.
It workd fine. I extended the Webscarab with export function for Jmeter.
Bugzilla 48898.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文