TLS1.1/1.2で接続確認

Macで表題を行いたい。

■ 環境

  • OpenSSL
  • Mac OSX El Capitan

■ openssl

下記コマンドでSSL2/SSL3/TLS1.0/TLS1.1/TLS1.2あたりの接続を確認しようとした。

SSL2

$ echo | openssl s_client -connect example.com:443 -ssl2

SSL3

$ echo | openssl s_client -connect example.com:443 -ssl3

TLS1

$ echo | openssl s_client -connect example.com:443 -tls1

TLS1.1をやろうとしたところでコマンドの実行エラー。`openssl`のヘルプが表示されてしまった。どうやら`-tls1_1`や`-tls1_2`というオプションが無いようである。versionを調べると下記であった。

$ openssl version
OpenSSL 0.9.8zh 14 Jan 2016
$

ちなみにAmazonLinuxでは下記のversionであった。

$ openssl version
OpenSSL 1.0.1k-fips 8 Jan 2015
$

AmazonLinuxのversionであれば、`-tls1_1`や`-tls1_2`のオプションが存在する。

そういえばHomebrewで`openssl`は入れている気がする。ので確認。

$ brew info openssl

現時点で最新の”1.0.2k“がインストールされていた。上記に記載された下記の通り、”PATH“を通す使い方が良いのだろうか。

If you need to have this software first in your PATH run:
  echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile

とりあえず必要な時はデフォルトではなくこっちの`openssl`を使うようにする。

TLS1.1

$ echo | /usr/local/opt/openssl/bin/openssl s_client -connect example.com:443 -tls1_1

TLS1.2

$ echo | /usr/local/opt/openssl/bin/openssl s_client -connect example.com:443 -tls1_1

以上。