JMeter通过外部代理密钥库配置

时间:2018-03-11 19:29:12

标签: ssl proxy jmeter keystore mitmproxy

我即将使用JMeter测试Web应用程序。我已经记录和参数化脚本,这些似乎工作正常。 问题是,其中一个要求是通过mitmproxy重定向流量。 我已经找到了如何将流量重定向到所需代理的解决方案: How to set proxy for JMeter from behind another proxy?

要手动浏览方案,我在Firefox浏览器中设置手动代理配置,然后导航到mitm.it,如果启用了代理,我将获得客户端证书下载。一旦受信任,所有流量都将通过此代理实例。 问题是从这里下载的证书是.crt扩展名,这是唯一的身份验证形式 - 没有签名,没有密码等等。 我只是想知道如何使这个代理信任JMeter请求? 将此证书添加到现有密钥库中会没问题吗?如果是这样,我找不到关于如何使用没有密码和密钥的证书扩展密钥库的明确教程。 有什么建议? PS。我尝试了http://www.middlewareguru.com/mw/?p=478 - 但它声明:“密钥存储区必须至少有一个x509证书和私钥” - >问题是我只有证书,没有私钥,它适用于Firefox,但不知道密钥库在这种情况下会如何表现(我的代理现在已经失效了,但我想在它之前准备好这个方法)再次启动并运行。

1 个答案:

答案 0 :(得分:0)

  1. 您需要将.crt文件转换为.p12文件,JMeter可以使用ie OpenSSL“理解”该文件:

    openssl pkcs12 -export -in certificate.crt -inkey inkey.key -out certificate.p12
    
  2. 完成后,您可以将以下行添加到 system.properties 文件(位于JMeter安装的“bin”文件夹中)

    javax.net.ssl.keyStore=/path/to/certificate.p12
    
  3. 重新启动JMeter以选择更改
  4. 您也可以使用SSL Manager代替步骤2和3,但使用系统属性会更方便。

    参考文献: