nginx.conf 上 ssl_ciphers 行的含义

nginx.conf 上 ssl_ciphers 行的含义

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 命令的手册页

相关内容