我正在使用一个java库,该库与我提供的端点建立HTTP连接。该库使用的是apache,我不能以任何方式更改这一点或修改代码(如果我创建DefaultHTTPClient客户端的实例,我知道如何解决这个问题,但我无权访问它)。它在连接到终结点时引发SSL异常。我必须使用HTTPS并且我必须使用I(连接到具有相同证书的多个I)。我得到的错误是:
javax.net.ssl.SSLException: Certificate for <IP> doesn't match common name of the certificate subject: domainname其中IP和域名替换为证书的特定IP和域名。
我认为如果我将ips和主机名添加到我的/etc/hosts文件中,这将会起作用,但是我仍然得到异常。是否有顶层将Is映射到主机名,以便接受证书?有什么可以在JVM甚至linux级别上完成的事情吗?
谢谢
发布于 2020-03-28 03:29:30
是否有顶层将Is映射到主机名,以便接受证书?
它必须以相反的方式来做。您必须在应用程序中使用主机名,而不是IP地址,因为它期望证书的主题与给定的主机名匹配。但是,您可以将主机名映射到hosts文件中的相关IP地址,以便它使用您想要的IP地址。
https://stackoverflow.com/questions/60892169
复制相似问题