grepを試してみる

grepを試してみる

ライブ Web サイトの SSL 証明書の暗号を確認するために openssl コマンドを使用することは可能ですか?

たとえば、次のようなものを使用します。 openssl s_client -connect example.com:443 -crlf

上記のコマンドは、暗号とともに多くの情報を返します。 Cipher : TLS_AES_256_GCM_SHA384

暗号値のみを返す openssl コマンドを探しています。

答え1

grepを試してみる

$ echo -n '' | openssl s_client -connect example.com:443 2>&1 | grep -Po "(?<=Cipher is ).*$"
TLS_AES_256_GCM_SHA384

または、次のように関数にラップすることもできます...

$ function get-s_clientCipher {
    echo -n '' | 
    openssl s_client -connect $1 2>&1 | 
    grep --perl-regexp --only-matching -- "(?<=Cipher is ).*$";
}

...そして、次のように使用します...

$ get-s_clientCipher example.com:443
TLS_AES_256_GCM_SHA384

しかし、それがあなたにとって非常に役立つかどうかはわかりません。なぜなら、結果はローカル環境に大きく依存するからです。したがって、一般的な意味はほとんどありません。-- したがって、サーバーの暗号のより一般的な診断を取得したい場合は、次のようなものを使用してください。https://testssl.sh/シェルスクリプト。(または、サーバーがインターネットからアクセス可能な場合は、https://www.ssllabs.com/ssltest/

関連情報