![nginx.conf の ssl_ciphers 行の意味](https://rvso.com/image/658353/nginx.conf%20%E3%81%AE%20ssl_ciphers%20%E8%A1%8C%E3%81%AE%E6%84%8F%E5%91%B3.png)
nginx.conf ファイルの次の行の意味は何ですか?
ssl_ciphers HIGH:!aNULL:!MD5;
SSL 暗号は、サーバー通信を保護するために使用するアルゴリズムを指定していることはわかっています。また、!aNULL と !MD5 は、これらの暗号を使用した通信を許可しないように指定していると想定していますが、HIGH: が何を指定するのかはわかりません。
答え1
HIGH、LOW、EXPORTなどは、さまざまな暗号を含むマクロの一種です。実際の暗号を取得するには、openssl ciphers
コマンドを使用します。
$ openssl ciphers -V 'HIGH:!aNULL:!MD5'
0xC0,0x30 - ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD
0xC0,0x2C - ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD
0xC0,0x28 - ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384
0xC0,0x24 - ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384
....
これらのマクロの内容はOpenSSLのバージョンによって異なるため、このコマンドはサーバーシステム上のOpenSSLで実行する必要があります。暗号とマクロの詳細については、ciphers コマンドのマニュアルページ。