În prezent, am configurat un echilibrator de încărcare AWS clasic cu un ascultător SSL și un certificat public emis prin managerul de certificate AWS, de ex. interogare.domeniul meu
. Aceasta redirecționează către o instanță HiveServer2/Thrift.
Mă conectez la punctul final public folosind beeline astfel:
beeline -u "jdbc:hive2://query.mydomain:10100/default;ssl=true" -n <nume utilizator> -p <parolă> --verbose=true -d org.apache.hive.jdbc.HiveDriver
Din anumite motive, clientul se plânge de faptul că numele de gazdă al instanței de echilibrare a încărcăturii nu este prezent în certificat.
dig +short query.mydomain @resolver1.opendns.com
13.54.30.146
13.54.75.233
3.106.25.71
Cauzat de: java.security.cert.CertificateException: Nu a fost găsit niciun nume DNS alternativ al subiectului care să se potrivească cu ec2-13-54-30-146.ap-southeast-2.compute.amazonaws.com.
la java.base/sun.security.util.HostnameChecker.matchDNS(HostnameChecker.java:212)
la java.base/sun.security.util.HostnameChecker.match(HostnameChecker.java:103)
la java.base/sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:452)
la java.base/sun.security.ssl.X509TrustManagerImpl.checkIdentity(X509TrustManagerImpl.java:412)
la java.base/sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:238)
la java.base/sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:132)
la java.base/sun.security.ssl.CertificateMessage$T12CertificateConsumer.checkServerCerts(CertificateMessage.java:638)
... încă 46
De ce se așteaptă ca numele de gazdă a instanței de echilibrare a încărcăturii să fie în certificat? Fac ceva greșit?