zoukankan      html  css  js  c++  java
  • jmeter制造安全证书

      对安全性有要求的网站一般使用https来加密传输的请求和响应。https离不开证书,关于证书不在多说。Apache的HttpClient支持https,

    下面是官方的样例程序,程序中使用了my.store这个文件,

    这个文件不是网站的证书,而是一份包含自己密码的自己的证书库。这个文件是需要自己生成的,使用jdk中的keytool命令可以很方便的生成my.store文件。步骤如下(以支付宝为例):

    1. 浏览器(以chrome为例)访问https://www.alipay.com/,点击域名左侧的小锁,可以查看支付宝的证书信息
    2. 将支付包的证书信息导出,证书格式有很多中,der、cer等。随便选择即可。
    3. 命令行或者shell执行 

    keytool    

    -import -alias "my alipay cert" 别名

    -file www.alipay.com.cert 导出的证书   

    -keystore my.store,自己起名

    如果keytool命令不识别,去检查一下jdk的环境变量是否设置正确。

    ”my alipay cert”是个别名,随便取。

    “www.alipay.com.cert”这个文件就是从浏览器中导出的支付宝的证书。

    “my.store”是生成的自己 的证书库文件。回车执行,效果如下:

    Jmeter是apache一款开源、小巧的性能测试工具,平时测试web http协议经常使用,其实jmeter同样支持ssl。方法如下:

    • 需要装有目标网站证书的密钥库,即filename.store(文件名随意).这个文件里包含目标网站的证书和自己的密码,这个东西需要我们自己生成,生成方法参见:CloseableHttpClient加载证书来访问https网站
    • 将生成好的filename.store放到随意目录中(比如/home/victor/filename.store)。修改jmeter配置文件,将filename.store路径和自己的密码配置进去,这里以jmeter-2.10为例。
    • 配置文件为apache-jmeter-2.10/bin/system.properties,配置如下:
      • # Keystore properties (client certificates)
      • # Location
      • javax.net.ssl.keyStore=/home/victor/filename.store //密钥库路径
      • #
      • #The password to your keystore
      • javax.net.ssl.keyStorePassword=yeetrack.com //这个是生成密钥库时,设置的密码
    • 重启jmeter,如果是自己填写请求,https的端口一般是443,不再是http的80端口(当然也不一定是443,这个是可以配置的)。构造一个https请求,应该可以发送出去了;由于添加了密钥库,jmeter也可以录制https的请求了。

            长按二维码识别关注,您的支持是我们最大的动力。        

            公众号:测试梦工厂

            QQ一群:300897805

            

  • 相关阅读:
    danci8
    禁止选择文本
    danci6
    danci5
    java 学习编译
    自动代码模板文件
    java 学习5 .io
    java 学习4 callback 回调 和泛型
    java 学习3。集合
    java 学习3。类 和 继承
  • 原文地址:https://www.cnblogs.com/testdream/p/6159933.html
Copyright © 2011-2022 走看看