java tsl_如何强制Java服务器仅接受tls 1.2并拒绝tls 1.0和tls 1.1连接

论坛 期权论坛 脚本     
已经匿名di用户   2022-7-2 22:15   3950   0

我有一个在Java 7上运行的https Web服务。我需要进行更改,以便该服务仅接受tls1.2连接并拒绝ssl3,tls1.0和tls1.1。

我添加了以下java参数,以便tls1.2具有最高优先级。

-Dhttps.protocols=TLSv1.2

但它也接受来自Java客户端的tls1.0连接。如果客户端也使用上述java参数运行,则连接为tls1.2,但如果客户端不使用此参数运行,则连接为tls1.0。

我在jdk / jre / lib / security文件夹中的java.security文件周围做了一些工作。

我目前有以下禁用算法:

jdk.certpath.disabledAlgorithms= MD2, MD4, MD5, SHA224, DSA, EC keySize < 256, RSA keySize < 2048, SHA1 keysize < 224

jdk.tls.disabledAlgorithms=DSA, DHE, EC keySize < 256, RSA keySize < 2048, SHA1 keysize < 224

我正在使用Java 7,更新79。我不倾向于拦截每个连接并检查tls版本。

我的服务器证书是使用RSA算法的MD5生成的2048位。

如果禁用的算法列表使用RSA代替RSA keySize <2048,我将收到带有错误消息的SSLHandShakeError:没有通用的密码套件。

我的测试程序正在从以下URL运行http服务器:http : //www.herongyang.com/JDK/HTTPS-

HttpsEchoer-Better-HTTPS-Server.html

请帮助如何使Java仅接受tls 1.2连接。

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP