Thanks Dave...

In my test scenario, I am using a Firewall in between client and server 
machines and firewall supports SSL certificate caching. Here main thing is to 
test the firewall for SSL certificate caching. So wanted to establish multiple 
SSL connections from a single linux PC to the same server. 

That's the reason I was asking whether it's possible to send multiple SSL 
connections from single host.

Please do let me know if there are any ways to test this scenario.

Thanks,
Sharan

-----Original Message-----
From: owner-openssl-us...@openssl.org [mailto:owner-openssl-us...@openssl.org] 
On Behalf Of Dave Thompson
Sent: Thursday, October 11, 2012 1:18 AM
To: openssl-users@openssl.org
Subject: RE: SSL Certificate Caching

> From: owner-openssl-us...@openssl.org On Behalf Of Sharanagoud B D
> Sent: Tuesday, 09 October, 2012 06:39

> Is there a option to specify a source interface along with openssl 
> s_cleint option to establish multiple HTTP Connections from single 
> linux device? This is required to test certificate caching scenario 
> where need to have multiple clients trying to connect to a same 
> server.
> 
> For Ex: specify eth1:1, eth1:2..etc...
> 
0. s_client doesn't do HTTP connections. It does SSL/TLS, only.
If you feed it HTTP input (manually or from a file or program), you've got 
HTTPS. (s_server -www can do some minimal HTTPS.)

1. You can't specify an interface. You can't even specify a "bind" (local) 
address, which is how the usual socket interface (used by openssl) maps to a 
local interface.

2. You can have multiple connections from one client IP address to a given 
server IP address, because nearly all clients including s_client get unique 
port.
Does the server need to see different addresses? If so, that will cause 
problems when used with NATted clients, which many these days are, especially 
on the public net.

3. If your server listens/accepts at multiple addresses, on a different subnet 
for each interface -- and listen-all (0.0.0.0 or ::0) is usually the default -- 
your IP stack should automatically use the matching client address.

4. If you can run virtual machines for the clients, you may be able to assign 
only selected interfaces and addresses to those virtual machines. This will 
depend on the particulars of the virtual machine software and I can't help 
there.

5. Or just use multiple real machines. Simple and foolproof.

But do you really need this? If you are concerned about server behavior, you 
don't need s_client to test it; you can write a trivial program using openssl 
(which can bind), or find other client software. I've heard rumors perl or gawk 
can do such things, and I believe are standard on Linux.
Java can definitely do it with about 20 lines of code -- that's what I use -- 
and is pretty easy to install (if you can instal software at all).

If you are concerned about s_client behavior, it doesn't do any caching by 
itself. It uses exactly and only what's in static files that you can look at.

Or it occurs to me, are you thinking about *session* caching (rather than 
certificates)? openssl library does support session caching within a process, 
or through some kind of shared storage, but s_client will only re-use a session 
if you explicitly specify -sess_out and -sess_in .


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to