【问题标题】:Jetty - Any way to configure order of SSL ciphers?码头 - 任何方式来配置 SSL 密码的顺序?
【发布时间】:2018-04-11 03:37:38
【问题描述】:

我正在尝试将 Jetty 配置为更喜欢使用完美前向保密的密码,而不是那些不支持它的密码,但同时允许只支持它们的客户端使用这些旧密码。但是,我不知道如何为 Jetty 配置订单。这可能吗?

我已将服务器的 SSLContextFactory 的 setUseCipherSuitesOrder 方法设置为 true,但没有看到与在 server.xml 中设置密码列表的选项等效的选项,这似乎可以使用 Tomcat。我正在使用嵌入式 Jetty 9.4.x,目前正在运行 Java 8。

【问题讨论】:

    标签: java jetty jsse


    【解决方案1】:

    TLS 和 HTTP/2 具有严格/强制性的密码套件顺序要求。

    由于协议需要特定的行为,您无法再控制它,因此 Jetty 不提供它作为选项。

    虽然 JRE 确实有 SSLParameters.setUseCipherSuitesOrder(true),但不可能在所有现代 HTTP 连接场景中使用它。

    您可以选择在 SslContextFactory.setUseCipherSuitesOrder(boolean) 上将此 Java 选项与 Jetty 一起使用。请注意,较新的 TLS 版本(1.2 及更高版本)和 HTTP/2 将覆盖此设置以满足他们自己的需要和要求。

    【讨论】:

    • 我目前使用的是 HTTP/1.1。但是,我想我已经知道如何使用 HTTP 1.1 设置顺序 - 如果我调用 sslContextFactory.setUseCipherSuitesOrder(true),并且还使用密码套件的确切名称(例如 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384)调用 sslContextFactory.setIncludeCipherSuites ,这是尊重顺序。迁移前是否有要评估的 HTTP/2 密码顺序列表? (我还应该提交我的 HTTP 1.1 方法作为答案吗?)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-18
    • 2016-03-18
    • 1970-01-01
    • 2011-06-09
    • 2016-11-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多