Apache“SSLCipherSuite”指令

Apache描述了SSLCipherSuite指令:

密码套件可用于SSL握手协商

假设我将这个指令configuration为HIGH ,只使用Triple DESencryption。

只有 SSL握手使用Triple DES,否则所有的stream量都会使用这种scheme?

在TLS握手过程中,传输过程中要使用的节点之间的密码套件是一致的,尽pipe“在任何时候,由于内部或外部刺激(自动或用户干预),任何一方都可能重新协商连接” 。

如您参考的文档中所述:

 _cipher-spec_中的SSL密码规范由4个主要属性和一些额外的次要属性组成:

 - 密钥交换algorithm:RSA或Diffie-Hellman变体。
 - authenticationalgorithm:RSA,Diffie-Hellman,DSS或无。
 - 密码/encryptionalgorithm:DES,Triple-DES,RC4,RC2,IDEA或无。
 MAC摘要algorithm:MD5,SHA或SHA1。

请注意,将SSLCipherSuite设置为HIGH不会将列表限制为三倍DES。 比较这些命令的输出:

 # openssl ciphers 'HIGH' # openssl ciphers '3DES' 

您可能需要考虑使用AES 。

密码套件的评估顺序非常重要,安全性强。 有关详细说明,请参阅BEAST攻击缓解文章。 这篇文章的一个例子:

 SSLHonorCipherOrder On SSLCipherSuite ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH 

该协议的详细分析可以在这篇博客文章中find。