当前位置: 首页 > 知识库问答 >
问题:

使用TLSv1制作Geode

长孙知
2023-03-14

出于向后兼容的原因,我需要一个Geode Jetty服务器来使用TLSv1,而不是1.1或1.2

在< code>gemfire.properties中设置了< code > ssl-enabled-components = web 和< code > SSL-protocols = tlsv 1.0 后,当我启动Geode并使用SSL实验室检查HTTPS连接时,我会得到一个TLS结果:

我正在寻找TLS 1.1和TLS 1.0检查也说而不是

Geode SSL文档说< code >确保您的Java安装包含JSSE API,并熟悉它的使用。

JSSE 是关于 JRE/lib/security 目录中的 java.security 配置。我将其设置为不禁用任何安全算法并重新启动 Geode,但结果相同。TLS 1.1 和 1.0 未通过上述 SSL 实验室测试。

有没有办法强制Geode从<code>https开始。协议=TLSv1?

当我尝试使用--J=-XX:https.protocols=TLSv1启动定位器时,我得到了

错误:无法创建 Java 虚拟机。错误:发生致命异常。程序将退出。无法识别的虚拟机选项“https.protocols=TLSv1”

我找不到单独的Jetty配置...

Update--J=-Dhttps.protocols=TLSv1是将TLS协议分配给JVM的正确设置,用于启动Geode定位器和服务器。

当我设置< code > Java . security setting < code > JDK . TLS . disabled algorithms = tlsv 1.1,TLSv1.2时更新与此相反,则根本不可能通过HTTPS与Jetty服务器通信。这让我觉得Geode/Jetty < code > SSL-protocols = tlsv 1.0 设置也不适用?

Jetty配置显示默认不再支持TLS v1.0、v1.1和SSL v3。如果您的Jetty实现需要这些协议来提供旧版支持,可以手动启用它们。

有没有办法使用 Geode 配置码头?

共有1个答案

相弘方
2023-03-14

我不相信你目前能做到这一点。主要是因为Jetty的内部配置方式。Jetty维护由正则表达式^.*_(MD5|SHA|SHA1)$定义的排除密码列表。不幸的是,这个列表似乎胜过任何可能被添加为“包含”的密码。下面是我用于测试的一个非常简单的Jetty示例:https://gist.github.com/jdeppe-pivotal/c0c6e7de4282bc077357749fc91bc44f.Jetty将生成一个很好的密码和协议转储,当您运行该程序时,它正在使用这些密码和协议。

目前,您可以使用以下curl执行成功的请求:curl-k-v--tlsv1.2https://localhost:8081/。现在,如果您使用<code>tlsv1.0</code>尝试此操作,它将失败,因为所有必需的密码套件都被禁用。但是,如果取消注释行:sslContextFactory。setExcludeCipherSuites(),那么事情应该开始工作了。这样做的目的是删除所有当前排除的密码(并允许它们被使用)。不幸的是,如果你只尝试添加密码(而不排除所有内容),事情仍然不起作用。注意,通过这样做,Jetty仍然被配置为TLSv1.2(以及1.1和1.0),但客户端可以使用更低的协议版本。

底线是Geode没有明确排除Jetty中的任何密码。因此,如果您希望添加必要的密码,它们很可能不会有效。我为此打开了一个错误:https://issues.apache.org/jira/browse/GEODE-3891

 类似资料:
  • 我正在尝试使用python中的请求库向服务器发送POST调用。早些时候,我能够成功地发送POST调用,但最近,服务器弃用了TLSv1。0,现在只支持TLSv1。1和TLSv1。2.现在,同一代码向我抛出了一个“requests.exceptions.SSLError:EOF违反了协议(_ssl.c:590)”错误。 我发现这个线程在stackoverflow Python请求requests.ex

  • 当我尝试数据源后的测试连接,我收到SSL握手异常。SSL跟踪显示,我的webphere正在发送ClientHello,TLSv1,因为所有连接到postgresql的TLS1.2启用。 我在websphere中进行了以下配置,以强制TLSv1.2通信。但它总是启动TLSv1调用。 > 在“SSL 设置”的“保护质量 (QoP)”设置中,选择 TLSv1.2 作为原型。以前选择了SSL_TLSv2

  • 我正在尝试使用JPackage创建一个应用程序图像(在使用OpenJDK 14的Ubuntu 18.04系统上) 我找到的所有例子都是这样的 运行此命令时,会得到一个目录和我可以启动一个可执行文件来运行应用程序。但整个东西并没有像我所希望的那样绑定到一个AppImage文件中。 我错过了什么?

  • 我正在尝试使用DART做POST并且我收到了这个错误,现在我只想在服务器端打印消息以确保我收到了它,但我不知道如何解释错误: < li >在服务器端: 【警告】rpc:响应状态码:500头:access-control-allow-credentials:true access-control-allow-origin:* cache-control:no-cache,no-store,must-

  • 我试图使用apache kafka二进制文件中的kafka控制台生成器生成消息,并在spring boot中使用消费者设置。消费者使用avro模式。 当消息以json格式生成时,我的消费者抛出异常-“无法序列化”。 我找到了一个解决方案,可以使用“ConFluent Platform 7.1”,它有kafka-avro-console-生产者。它支持avro,但它是企业版。 有没有一种方法可以使用

  • 本文向大家介绍使用impress.js制作幻灯片,包括了使用impress.js制作幻灯片的使用技巧和注意事项,需要的朋友参考一下 上周看到一个朋友做了很炫的缩放式幻灯片,可能因为对此知识了解的不多,找了好久才找到几个web幻灯片工具。通过筛选决定用Geek的 impress.js 。 impress.js是一款新兴的幻灯工具,它的效果类似Prezi,但是拥有3D的功能,而且是在MIT&GPL协议