ssl-endpoint-identification-enable
", to "true
". However, this enhanced security carries with it some additional complexities.[severe 2019/05/14 09:03:58.329 EDT locator1 <FederatingManager1> tid=0x3d] SSL Error in connecting to peer /10.0..0.10[55555]. javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: No subject alternative names matching IP address 10.0.0.10 found at sun.security.ssl.Alerts.getSSLException(Alerts.java:192) at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1964)
If an application does need to perform reverse name lookup for raw IP addresses in SSL/TLS connections, and encounter endpoint identification compatibility issue, System property "jdk.tls.trustNameService
" can be used to switch on reverse name lookup. Note that if the name service is not trustworthy, enabling reverse name lookup may be susceptible to MITM attacks."
Note: Despite the verbiage, this "susceptibility to MITM attacks" is still less likely with endpoint validation enabled and reverse lookups allowed, versus without any endpoint validation.
jdk.tls.trustNameService
").
ssl-endpoint-identification-enabled
" set to true with a single instance of the warning, so if your only motivation is to eliminate the flood of "Your SSL configuration disables hostname validation
" messages, waiting for and using a version of GemFire with a fix for GEM-2502 might be your best option. However, that option is not available yet (as of GemFire 9.8) and would only apply to running with hostname validation turned off (the old behavior).jdk.tls.trustNameService=true
" (by adding something like `--J="-Djdk.tls.trustNameService=true"
` to your startup options). This option allows reverse DNS lookups and should allow GemFire to work with your certs unchanged but, in theory, it could also allow a man-in-the-middle attack.
DNSName
" type entries --- you should put the IP addresses in the SAN as both type "IPAddress"
and type "DNSname
".