maidsphere

A quantization noise whispers through the net.

OpenSSLのs_clientの使い方

Apr 4, 2015 22:19:37 JST

SSL/TLSセッションでnetcatっぽいことがしたい場合は,OpenSSLのs_clientコマンドが便利.

% openssl s_client -connect www.google.com:443

これで普通にSSL/TLS接続のセッションがはれる.

もし,相手のサーバがSNIの場合は,-servernameオプションを指定して以下のようにする.

% openssl s_client -connect www.google.com:443 -servername www.google.com

-servernameオプションを指定せずに接続して自己署名証明書が返ってきたら,SNIの可能性が高い.


ちなみに,接続直後にターミナルにいろいろ出力されるけど,その最後のあたりで

Verify return code: 0 (ok)

となっていたら,証明書の検証に成功している.

のようなメッセージの場合は,何かしらおかしい.

ただし,s_clientはデフォルトでCRLのチェックを行わないので,証明書が失効しているかどうかまでは確認できないので注意. 必要であれば,-crl_checkオプションなどを用いる.