2017-04-03 64 views
1
exception Jmeter throws- 
javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake 
    at com.ibm.jsse2.qc.a(qc.java:422) 
    at com.ibm.jsse2.qc.h(qc.java:714) 
    at com.ibm.jsse2.qc.a(qc.java:831) 
    at com.ibm.jsse2.qc.startHandshake(qc.java:828) 
    at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:553) 
    at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:412) 
    at org.apache.jmeter.protocol.http.sampler.LazySchemeSocketFactory.connectSocket(LazySchemeSocketFactory.java:97) 
    at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:179) 
    at org.apache.http.impl.conn.ManagedClientConnectionImpl.open(ManagedClientConnectionImpl.java:328) 
    at org.apache.jmeter.protocol.http.sampler.MeasuringConnectionManager$MeasuredConnection.open(MeasuringConnectionManager.java:114) 

是否有任何特定的Java版本需要使用? 的JMeter版本是 - 3.1Jmeter-如何包含外部.p12 SSL證書

回答

0
  1. 下一行只需添加到system.properties文件(位於安裝Jmeter的 「bin」 文件夾)

    javax.net.ssl.keyStoreType=pkcs12  
    javax.net.ssl.keyStore=/path/to/your/certificate.p12 
    javax.net.ssl.keyStorePassword=your_certificate_password_here 
    

    另一種選擇是提供上述屬性通過-D命令行參數如:

    jmeter -Djavax.net.ssl.keyStoreType=pkcs12 -Djavax.net.ssl.keyStore=/path/to/your/certificate.p12 -Djavax.net.ssl.keyStorePassword=your_certificate_password_here 
    

    這對於無人執行的執行更爲方便,即使用Continuous Integration服務器

  2. 重啓JMeter的挑選性能高達
  3. 現在JMeter會使用您的客戶端證書的請求加密

How to Set Your JMeter Load Test to Use Client Side Certificates瞭解更多詳情。

或者,您可以使用SSL Manager,但是我個人認爲使用系統屬性更方便。

+0

thanx for response.I嘗試了您提到的步驟avax.net.ssl.keyStoreType = pkcs12 javax.net.ssl.keyStore =/path/to/your/certificate.p12 javax.net.ssl。 keyStorePassword = your_certificate_password_here ....但沒有成功仍然收到錯誤:響應代碼:非HTTP響應代碼:javax.net.ssl.SSLHandshakeException 響應消息:非HTTP響應消息:遠程主機在握手期間關閉連接。 – DB7