Search code examples
httpsopensslsslsni

Openssl TLS extension support configuration (Server Name Indication)


I want to configure openssl client-server to support TLS extensions specifically server name indication (SNI).

I have build the latest openssl 1.0.0e on ubuntu linux without giving any additional config parameter.

 
./config
make
make install

Not sure if I need to give any additional config parameters while building for this version.

Now I have set up server and connecting to it through openssl client using the standard command line tool provided by openssl, viz s_client and s_server.

My question is: how do I specify the host name to be sent as extension in s_client? Does openssl have the provision to specify server name using some parameter in commandline?

Thanks!


Solution

  • This has been lying dormant for some time. Since I figured this out long back, it would be logical to write the answer and put a closure to this.

    The command-line option servername is available to specify SNI.

    openssl s_client -connect myweb.address.com:443 -servername myweb.address.com
    

    The above command will trigger TLS client with the given server name present in SNI extension of client hello.