Nginx

nginx.conf 上 ssl_ciphers 行的含義

  • May 14, 2015

nginx.conf 文件中的以下行是什麼意思?

ssl_ciphers HIGH:!aNULL:!MD5;

我知道 ssl 密碼正在指定使用哪種算法來保護伺服器通信,我假設 !aNULL 和 !MD5 指定不允許使用這些密碼進行通信,但我不知道 HIGH: 指定了什麼。

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 執行此命令。有關密碼和宏的更多詳細資訊,請參見密碼命令的手冊頁

引用自:https://serverfault.com/questions/692119