【问题标题】:JSSE Configuration in Tomcat - enable AES256 cipherTomcat 中的 JSSE 配置 - 启用 AES256 密码
【发布时间】:2012-08-30 08:15:10
【问题描述】:

Apache Tomcat 服务器中的 JSSE 支持哪些密码?如何启用 AES256 并重新排序密码?

【问题讨论】:

  • 对于完整的密钥长度,您可能需要为您的 JVM 安装不受限制的策略文件,请参阅 here

标签: java tomcat encryption jsse


【解决方案1】:

HOWTO:让 Tomcat 使用 256 位 AES(和其他算法密码)

1) 很可能您现在没有安装无限强度文件。

您可能需要下载此文件:

Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 7 下载 http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html

将文件安装在

${java.home}/jre/lib/security/

2) 编辑您的 server.xml 文件并仅输入 256 位密码:

示例:仅 W/256

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="keystore.p12"
keystorePass="<MY_PASSWORD>" keystoreType="PKCS12"
clientAuth="want" sslProtocol="TLS"
sslEnabledProtocols="TLSv1.2,TLSv1.1,TLSv1" 
ciphers="ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA" />

示例:W/256 和 128

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
keystoreFile="keystore.p12"
keystorePass="<MY_PASSWORD>" keystoreType="PKCS12"
clientAuth="want" sslProtocol="TLS"
sslEnabledProtocols="TLSv1.2,TLSv1.1,TLSv1" ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_RC4_128_SHA,
TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,
TLS_RSA_WITH_AES_256_CBC_SHA,SSL_RSA_WITH_RC4_128_SHA" />

3) 重启 tomcat 并点击主默认 tomcat 页面:

https://localhost:8443/

参考:

= = = = = = = = = = = = =

Java Security: Illegal key size or default parameters?

java aes 256 java.security.InvalidKeyException: Illegal key size after installation the policy

http://tomcat.apache.org/tomcat-7.0-doc/config/http.html#SSL_Support_-_BIO_and_NIO

http://www.iana.org/assignments/tls-parameters/tls-parameters.xml#tls-parameters-4

http://www.iana.org/assignments/tls-parameters/tls-parameters-4.csv

http://blog.bitmelt.com/2013/11/tomcat-ssl-hardening.html

【讨论】:

  • 只有建议的 256 个密码,Windows Server 2012x64 上的 Chrome 54.0.2840.99 抱怨“过时的连接设置 - 到此站点的连接使用强协议 (TLS 1.2)、强密钥交换 (ECDHE_RSA) ,以及一个过时的密码(AES_256_CBC 和 HMAC-SHA1)。”
  • atom88 的回答很棒。这是 2016 年秋季,安装了 Java 8 和无限制的 JCE 策略,让 Tomcat8.5 只允许 TLSv1.2 AES256_GCM:slEnabledProtocols="TLSv1.2" ciphers="TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
【解决方案2】:

如果您不使用 APR 本机连接器,Tomcat 支持 Java 支持的任何内容,其中包括 AES256,可能需要无限强度的加密 JAR。

如果您使用本机 APR,Tomcat 支持其 OpenSSL 支持的任何内容,您可以通过 OpenSSL.exe 命令以某种方式确定。

启用的密码套件应该可以在 server.xml 的 Connector 元素中进行配置。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-23
    • 2015-05-19
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    相关资源
    最近更新 更多