I'm having trouble getting certificate-based user auth
to work with jmeter.
1) JSSE is installed, and appears to function properly
(ver 1.02)
2) keys are in a pkcs12 file, and have a (>6)
character passphrase
I'm trying to hit an apache+modssl web server
(confirmed working with browser). Here's what apache
says:
attempting to aim jmeter at mod_ssl apache server:
apache ssl_engine_log:
[30/Jan/2002 00:09:31 01613] [info] Connection to
child 5 established (server
drake1.netopsgroup.com:443, client 192.168.1.15)
[30/Jan/2002 00:09:31 01613] [info] Seeding PRNG with
1160 bytes of entropy
[30/Jan/2002 00:09:33 01613] [error] SSL handshake
failed (server drake1.netopsgroup.com:443, client
192.168.1.15) (OpenSSL library error follows)
[30/Jan/2002 00:09:33 01613] [error] OpenSSL:
error:140890C7:SSL
routines:SSL3_GET_CLIENT_CERTIFICATE:peer did not
return a certificate [Hint: No CAs known to server for
verification?]
apache error_log:
[Wed Jan 30 00:14:04 2002] [error] mod_ssl: SSL
handshake failed (server drake1.netopsgroup.com:443,
client 192.168.1.15) (OpenSSL library error follows)
[Wed Jan 30 00:14:04 2002] [error] OpenSSL:
error:140890C7:SSL
routines:SSL3_GET_CLIENT_CERTIFICATE:peer did not
return a certificate [Hint: No CAs known to server for
verification?]
apache access_log:
<nothing of interest>
Here's what jmeter is logging on (stderr?) during all
of this:
jmeter output (tail end of it):
Server write key:
0000: 98 0C 8D 00 B2 E9 5C 19 F4 2F CC 2F A7 0E 1A
FD ......\.././....
... no IV for cipher
Thread-1, WRITE: SSL v3.1 Change Cipher Spec, length
= 1
*** Finished, v3.1
verify_data: { 232, 248, 93, 191, 6, 2, 82, 176, 4,
167, 168, 147 }
***
[write] MD5 and SHA1 hashes: len = 16
0000: 14 00 00 0C E8 F8 5D BF 06 02 52 B0 04 A7 A8
93 ......]...R.....
Plaintext before ENCRYPTION: len = 36
0000: 14 00 00 0C E8 F8 5D BF 06 02 52 B0 04 A7 A8
93 ......]...R.....
0010: 82 DB A9 06 0D F3 12 96 62 1A D0 06 8D DF 32
DD ........b.....2.
0020: CA 4C D0 70
.L.p
Thread-1, WRITE: SSL v3.1 Handshake, length = 36
java.io.IOException: Broken pipe
at java.net.SocketOutputStream.socketWrite(Native
Method)
at
java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at
com.sun.net.ssl.internal.ssl.OutputRecord.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.HandshakeOutStream.flush([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.Handshaker.sendChangeCipherSpec([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.ClientHandshaker.e([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.ClientHandshaker.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.ClientHandshaker.processMessage([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.Handshaker.process_record([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.ssl.AppOutputStream.write([DashoPro-V1.2-120198])
at java.io.OutputStream.write(OutputStream.java:61)
at
com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.doConnect([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.NetworkClient.openServer([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpClient.l([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpClient.<init>([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.<init>([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpsClient.a([DashoPro-V1.2-120198])
at
com.sun.net.ssl.internal.www.protocol.https.HttpsURLConnection.connect([DashoPro-V1.2-120198])
at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.java:437)
at
org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.java:164)
at
org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:275)
at java.lang.Thread.run(Thread.java:484)
-----------------------
I really hope it's something stupid that I'm
missing...please help if you can.
Regards,
LS
__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions!
http://auctions.yahoo.com
--
To unsubscribe, e-mail: <mailto:jmeter-user-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:jmeter-user-help@jakarta.apache.org>
|