![nginx.conf 中 ssl_ciphers 行的意義](https://rvso.com/image/658353/nginx.conf%20%E4%B8%AD%20ssl_ciphers%20%E8%A1%8C%E7%9A%84%E6%84%8F%E7%BE%A9.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 指令的手冊頁。