如何为嵌入式 Jetty 服务器禁用 SSLv3 用于 Ring 应用程序



这个问题的Java版本答案 - 如何在Jetty中禁用SSLv3协议以防止贵宾犬攻击 - 涵盖了如何做到这一点,但是对于使用Ring的Clojure Web应用程序和使用嵌入式Jetty版本7的Ring Jetty适配器,执行相同操作的等效最小代码是什么?

以下是我添加到包含项目-main函数的命名空间文件中的内容:

(defn is-jetty-ssl-connector?
  [^org.eclipse.jetty.server.Connector c]
  (= (.getName (type c)) "org.eclipse.jetty.server.ssl.SslSelectChannelConnector"))
(defn jetty-configurator
  [jetty-server]
  (doseq [c (filter is-jetty-ssl-connector? (.getConnectors jetty-server))]
    (.addExcludeProtocols (.getSslContextFactory c) (into-array String ["SSLv3"]))))

添加到我的-main函数中jetty/run-jetty函数调用的选项图中:

:configurator jetty-configurator

我确认这似乎可以使用如下所示的 cURL 命令工作:

curl -v3 -X HEAD https://localhost:443

相关内容

  • 没有找到相关文章

最新更新