java.security.cert.CertificateException: No subject alternative names matching IP address **** found
•
Jave
修改域控用户密码,报错java.security.cert.CertificateException: No subject alternative names matching IP address **** found
- 前提CA证书已经导入到jdk证书管理器!!!
- 解决方法
- 经测试可用的修改方式
-
- 1. 服务已安装
- 2. 服务未安装
- 结束!!!!!
前提CA证书已经导入到jdk证书管理器!!!
解决方法
如果您使用 1.8.0_51 和 1.8.0_60 之间的 Oracle JDK,则通过 IP 地址而不是主机名进行连接时会出现问题。如果使用 IP 地址,则还必须在证书的主题备用名称中提及该地址。根据Mulesoft 支持的说法,解决方法是将 JVM 参数“jdk.tls.trustNameService”设置为 true – 从而对 IP 地址进行反向名称查找。
经测试可用的修改方式
两种修改方式
1. 服务已安装
-
打开Tomcat文件目录中的bin目录,双击打开tomcat*.exe,如下图

-
选中上面Java选项

-
直接修改输入框前面追加-Djdk.tls.trustNameService=true,然后点击‘应用’按钮,即可完成修改
-
启动Tomcat服务后,在日志中会打印出,修改后的jvm options,如下图

-
出现上面日志输出,则表示修改成功!
2. 服务未安装
得到一个安装即是修改后的内存值,适用于需要经常安装部署的人员。 适用前提:未安装Tomcat服务!!!!!
-
修改Service.bat文件
找到下面语句:
--JvmOptions "-Dcatalina.home=%CATALINA_HOME%;-Dcatalina.base=%CATALINA_BASE%;-D%ENDORSED_PROP%=%CATALINA_HOME%\endorsed;-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties;%JvmArgs%" ^
-
直接修改JvmOptions值
--JvmOptions "-Djdk.tls.trustNameService=true;-Dcatalina.home=%CATALINA_HOME%;-Dcatalina.base=%CATALINA_BASE%;-D%ENDORSED_PROP%=%CATALINA_HOME%\endorsed;-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties;%JvmArgs%" ^
-
安装Tomcat服务,bin目录下执行以下命令行
service install
-
安装完成打开tomcat*.exe,查看Java选项,如下图,则表示修改成功

结束!!!!!
———–我是分割线———————————————————————————————
补充说明:如果添加-Djdk.tls.trustNameService=true;无效,改用-Dcom.sun.jndi.ldap.object.disableEndpointIdentification=true;
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/fff78aa10e.html
