web-dev-qa-db-ja.com

特定のOpenSSLビルドでサポートされているSSL / TLSバージョンをリストする

たとえば、LinuxシステムにOpenSSLバージョン1.0.0oがあり、このビルドでサポートされるSSL/TLSバージョンを知りたいです。

これを実現するシェルコマンドはありますか?

36
Leviathan

コマンドラインからバージョンのサポートを確認することはできません。最良のオプションは、 OpenSSL changelog をチェックすることです。

1.0.0hまでのOpensslバージョンは、SSLv2、SSLv3、およびTLSv1.0をサポートしています。 Openssl 1.0.1以降、TLSv1.1およびTLSv1.2のサポートが追加されました。

10
vaibhav magar

これを使って

openssl ciphers -v | awk '{print $2}' | sort | uniq
139
Fer

これは私のために働いた:

openssl s_client -help 2>&1  > /dev/null | egrep "\-(ssl|tls)[^a-z]"

これが間違っている場合はお知らせください。

3
S Square

不器用ですが、s_clientまたはs_serverの使用方法メッセージから取得できます。これらは、コンパイル時に#ifedされ、サポートされているプロトコルバージョンに一致します。のようなものを使用してください

 openssl s_client -help 2>&1 | awk '/-ssl[0-9]|-tls[0-9]/{print $1}' 
 # in older releases any unknown -option will work; in 1.1.0 must be exactly -help
1

次のコマンドを試してください。

openssl ciphers

これにより、ご使用のバージョンのopensslでサポートされているすべての暗号のリストが作成されます。

特定の暗号セット(たとえば、sslv3暗号のみ)を表示するには、次を試してください。

openssl ciphers -ssl3

詳細については、 https://www.openssl.org/docs/apps/ciphers.html を参照してください。

0
mti2935