ssl_ciphers在nginx.conf中的含义

nginx.conf文件中以下行的含义是什么?

ssl_ciphers HIGH:!aNULL:!MD5; 

我知道SSL密码是指定使用哪种algorithm来保护服务器通信,我假设!aNULL和!MD5指定不允许使用这些密码进行通信,但我不知道什么是HIGH:指定。

高,低,出口等是一种macros,其中包括一系列的密码。 要获得实际的密码,请使用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 .... 

由于这些macros的内容在OpenSSL版本之间有所不同,因此您应该在服务器系统上使用OpenSSL运行此命令。 有关密码和macros的更多详细信息,请参阅密码命令的手册页 。