error received from server: vmware internal error 05
/services-logs/prelude/node-name/tenant-manager-#/vcloud-container-debug/file-log-##########.log'):####-##-## ##:##:##,### | ERROR | nioEventLoopGroup-2-23 | NettyWebSocketClientHandler | exceptionCaught, channel=[id: #, L:/###.###.###.###:### ! R:server.example.com/###.###.###.###:###] [server: [L=/###.###.###.###:### R=/###.###.###.###:###]] | io.netty.handler.codec.DecoderException: javax.net.ssl.SSLException: org.bouncycastle.tls.TlsFatalAlert: certificate_unknown(##) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:#) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:#) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:#) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:#) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:#) at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:#) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:#) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:#) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:#) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:#) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:#) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:#) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:#) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:#) at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:#) at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:#) at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:#) at java.base/java.lang.Thread.run(Thread.java:#)Caused by: javax.net.ssl.SSLException: org.bouncycastle.tls.TlsFatalAlert: certificate_unknown(#) at org.bouncycastle.jsse.provider.ProvSSLEngine.unwrap(ProvSSLEngine.java:#) at java.base/javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:#) at io.netty.handler.ssl.SslHandler$SslEngineType$3.unwrap(SslHandler.java:#) at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:#) at io.netty.handler.ssl.SslHandler.decodeJdkCompatible(SslHandler.java:#) at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:#) at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:#) at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:#) ... # moreCaused by: org.bouncycastle.tls.TlsFatalAlert: certificate_unknown(#) at org.bouncycastle.jsse.provider.ProvSSLEngine.checkServerTrusted(ProvSSLEngine.java:#) at org.bouncycastle.jsse.provider.ProvTlsClient$#.notifyServerCertificate(ProvTlsClient.java:#) at org.bouncycastle.tls.TlsUtils.processServerCertificate(TlsUtils.java:#) at org.bouncycastle.tls.TlsClientProtocol.handleServerCertificate(TlsClientProtocol.java:#) at org.bouncycastle.tls.TlsClientProtocol.receive#ServerCertificate(TlsClientProtocol.java:#) at org.bouncycastle.tls.TlsClientProtocol.handle#HandshakeMessage(TlsClientProtocol.java:#) at org.bouncycastle.tls.TlsClientProtocol.handleHandshakeMessage(TlsClientProtocol.java:#) at org.bouncycastle.tls.TlsProtocol.processHandshakeQueue(TlsProtocol.java:#) at org.bouncycastle.tls.TlsProtocol.processRecord(TlsProtocol.java:#) at org.bouncycastle.tls.RecordStream.readFullRecord(RecordStream.java:#) at org.bouncycastle.tls.TlsProtocol.safeReadFullRecord(TlsProtocol.java:#) at org.bouncycastle.tls.TlsProtocol.offerInput(TlsProtocol.java:#) at org.bouncycastle.jsse.provider.ProvSSLEngine.unwrap(ProvSSLEngine.java:#) ... # moreCaused by: java.security.cert.CertificateException: Unable to construct a valid chain at org.bouncycastle.jsse.provider.ProvX#TrustManager.validateChain(ProvX#TrustManager.java:#) at org.bouncycastle.jsse.provider.ProvX#TrustManager.checkTrusted(ProvX#TrustManager.java:#) at org.bouncycastle.jsse.provider.ProvX#TrustManager.checkServerTrusted(ProvX#TrustManager.java:#) at org.bouncycastle.jsse.provider.ExportX#TrustManager_#.checkServerTrusted(ExportX#TrustManager_#.java:#) at com.vmware.vcloud.common.crypto.ssl.TenantAwareTrustManager.checkServerTrusted(TenantAwareTrustManager.java:#) at com.vmware.vcloud.common.crypto.ssl.DelegatingTrustManager.checkTrust(DelegatingTrustManager.java:#) at com.vmware.vcloud.common.crypto.ssl.DelegatingTrustManager.checkServerTrusted(DelegatingTrustManager.java:#) at org.bouncycastle.jsse.provider.ImportX#TrustManager_#.checkServerTrusted(ImportX#TrustManager_#.java:#) at org.bouncycastle.jsse.provider.ProvSSLEngine.checkServerTrusted(ProvSSLEngine.java:#) ... # moreCaused by: java.security.cert.CertPathBuilderException: No issuer certificate for certificate in certification path found. at org.bouncycastle.jcajce.provider.PKIXCertPathBuilderSpi_#.engineBuild(Unknown Source) at java.base/java.security.cert.CertPathBuilder.build(CertPathBuilder.java:#) at org.bouncycastle.jsse.provider.ProvX#TrustManager.buildCertPath(ProvX#TrustManager.java:#) at org.bouncycastle.jsse.provider.ProvX#TrustManager.validateChain(ProvX#TrustManager.java:#) ... # more#-#-# #:#:#,# | DEBUG | nioEventLoopGroup-#-# | ServerWebSocket | onClose: status=#,#, reason=vmware internal error # [server: [L=/#.#.#.#:# R=/#.#.#.#:#]] [client: [id: ########, L:/#.#.#.#:# ! R:server.example.com/#.#.#.#:#]] |
VCF Automation 9.0.x
The Tenant Manager does not trust the SSL certificates of the ESXi hosts linked to the Workload Domain vCenter.
When the console request is proxied, the certificate validation fails, resulting in the internal server error.
To resolve this issue, you must ensure the ESXi host certificates are trusted by the Tenant Manager by performing the following steps: