ssl - 从 Java 6 使用 TLS 1.2

标签 ssl java tomcat

我们有一个在 java 6 下的 tomcat 中运行的遗留 Web 应用程序,升级到 7 或 8 是不可行的,因为该应用程序需要大量工作才能实现这一点,并且所需的修复太大而无法在遗留应用程序中实现。我们现在需要通过 TLS 1.2 连接出站(即作为客户端),但是 java 6 仅支持 1.0。我们使用 Apache 作为我们的网络服务器,并使用 OpenSSL 进行传入连接,这很高兴地支持 TLS 1.2 等。

有没有人必须解决类似的问题,或者您能否评论以下可能的解决方法:

  • 环回本地主机(或以其他方式重定向)并使用 OpenSSL 创建 TLS 1.2 连接,
    • 有效的内部代理
    • openssl 可以作为客户端吗?
    • 我们需要 s_client 吗?
  • 使用我们当前的防火墙升级连接
    • 这需要有选择性
    • 显然实现这将取决于防火墙
  • 使用“充气城堡”( https://www.bouncycastle.org/ )

最佳答案

不要为此使用 openssl 的 s_client - 它很慢,并且更多用于调试/测试。

尝试使用 stunnel .它专为像您这样的用例而设计,您可以找到大量示例配置来帮助您入门。您需要确保在配置中包含 sslVersion = TLSv1.2 指令以强制使用 TLS 1.2。

关于ssl - 从 Java 6 使用 TLS 1.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36433731/

相关文章:

ssl - 如何将 SSL 证书与 Bluemix 自定义域相关联?

java - 为什么默认的java最大堆是物理内存的1/4?

java - 从 Tomcat 7 迁移到 Tomcat 9 后的 "Too many open files"

带有 https loadUrl 的 Android WebView 显示空白/空白页面

PostgreSQL : SSL certificate error unable to get local issuer certificate

maven - tomcat-maven-plugin 中的 truststoreFile 参数是什么意思/做什么?

java - Tomcat 上下文资源不会加载 h2 驱动程序

java - 我可以从 java 层访问存储在 React Native 的 AsyncStorage 中的数据吗?

c# - 匿名事件

java - 在 intellij-run jrebel tomcat 服务器上通过 ssh 重新加载类