After several times investigate because it did not work the remote console at embedded on the VMWare Esxi, I discovered this problem its caused by one bug in apache. The problem reside in module HTTP proxy and the proxy module Web Sockets, the module proxy http processes all WebSocket requests, this is a bug . After long research and debug, I have come to the correct configuration to run the reverse proxy for the embedded Web client VMware.
You need the change hostname.com by your domain and EsxiIP by your Esxi hosts ip address.
Tras varias investigando porque no funcionaba el puñetero KVM web de Esxi, aka «remote console» he descubierto un BUG en Apache .
Al utilizar el modulo de proxy HTTP y el modulo de proxy para Web Sockets, el modulo de proxy http procesa todas las peticiones de Websocket que estén cifradas, así sin mas porque le da la gana.
Un fallo de codigo. Después de la larga investigación, he llegado a una configuración correcta para hacer funcionar el proxy inverso para el cliente web embebido de VMware.
Hay que cambiar el dominio hostname.com por el suyo y EsxiIP por la ip de vuestro servidor ESXi.
<VirtualHost *:443>
ServerName hostname.com
ServerAdmin [email protected]
SSLEngine On
SSLProtocol All -SSLv2 -SSLv3
SSLHonorCipherOrder on
##SSL SIMPLE CONFIG
SSLProxyEngine on
ProxyRequests Off
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
SSLCertificateFile /etc/httpd/ssl/hostname.com.crt
SSLCertificateKeyFile /etc/httpd/ssl/hostname.com.key
SSLCACertificateFile /etc/httpd/ssl/intermediate.crt
<location />
AuthName «Login»
AuthType Basic
AuthUserFile /etc/httpd/passwd
require user kamal
SSLRequireSSL
</location>
ProxyPass /ui wss://esxiIP:443/ui retry=1 acquire=3000 timeout=600 Keepalive=On
ProxyPassReverse /ui wss://esxiIP:443/ui
ProxyPass /ticket wss://esxiIP:443/ticket retry=1 acquire=3000 timeout=600 Keepalive=On
ProxyPassReverse /ticket wss://esxiIP:443/ticket
ProxyPass /sdk/ https://esxiIP:443/sdk/
ProxyPassReverse /sdk/ https://esxiIP:443/sdk/
ProxyPass /ui/scripts/ https://esxiIP:443/ui/scripts/
ProxyPassReverse /ui/scripts/ https://esxiIP:443/ui/scripts/
ProxyPass /ui/plugins/ https://esxiIP:443/ui/plugins/
ProxyPassReverse /ui/plugins/ https://esxiIP:443/ui/plugins/
</VirtualHost>
2 respuestas
Great job, very Thanks. 🙂
Muy bueno, me sirvio.
Excelente crack!