Una funcionalidad disponible desde las primeras versiones del hipervisor de VMWare es la posibilidad de acceder a la consola de una VM utilizando un cliente de VNC.
Evidentemente, no necesitaremos instalar el servidor de VNC en la VM y con este método dispondremos de una segunda posibilidad de acceder a la consola de la VM: Con VSphere Client o con un cliente de VNC.
La funcionalidad está desactivada por defecto y además, de forma predeterminada a partir de ESXi 5, las conexiones VNC contra la VM quedan bloqueadas gracias a la configuración del firewall que integra el hipervisor.
Hemos de tener en cuenta que si accedemos vía VNC a una VM, no dispondremos de las mismas opciones que si conectamos utilizando VSphere Client: por ejemplo, no podremos realizar snapshots sobre la VM.
También será necesario que la VM disponga de VMWare Tools instaladas, de lo contrario, no dispondremos de ratón.
Si queremos activar el acceso VNC a la consola de una VM, deberemos seguir los siguientes pasos:
1) Configurar el firewall del ESXi para permitir conexiones al servicio VNC del hipervisor:
El siguiente procedimiento está probado sobre ESXi 5.1 y 5.5:
Realizamos una copia de seguridad de la configuración actual:
cp /etc/vmware/firewall/service.xml /etc/vmware/firewall/service.xml.backup
Modificamos los permisos para poder modificar el fichero de reglas:
chmod 644 /etc/vmware/firewall/service.xml
chmod +t /etc/vmware/firewall/service.xml
Realizamos un listado de las reglas existentes y su identificador:
cat /etc/vmware/firewall/service.xml|grep "service id"
Deberemos intercalar el código después de la regla 37:
Si examinamos en que consiste la regla, veremos que quedará abierto el rango de puertos TCP del 5800 al 5999.
Restablecemos los permisos sobre el fichero de reglas:
chmod 444 /etc/vmware/firewall/service.xml
Refrescamos las reglas:
esxcli network firewall refresh
Listamos las reglas en busca de la regla VNC:
esxcli network firewall ruleset list
Name Enabled
------------------ -------
sshServer true
sshClient false
nfsClient true
dhcp true
dns true
snmp true
ntpClient true
CIMHttpServer true
CIMHttpsServer true
CIMSLP true
iSCSI true
vpxHeartbeats true
updateManager false
faultTolerance true
webAccess true
vMotion true
vSphereClient true
activeDirectoryAll false
NFC true
HBR true
ftpClient false
httpClient false
gdbserver false
DVFilter false
DHCPv6 false
DVSSync true
syslog false
IKED false
WOL true
vSPC false
remoteSerialPort false
vprobeServer false
rdt true
cmmds true
vsanvp true
rabbitmqproxy true
ipfam true
fdm false
VNC true
2) Editamos el fichero VMX de una VM y añadimos:
remotedisplay.vnc.enabled = "true"
remotedisplay.vnc.port = "5900"
Para conectar basta con utilizar un cliente VNC y especificar la dirección IP del host ESXi, junto con el puerto configurado en el fichero VMX de la VM.
Para conectar basta con utilizar un cliente VNC y especificar la dirección IP del host ESXi, junto con el puerto configurado en el fichero VMX de la VM.
Según el ejemplo, el puerto 5900.
Si el host ESXi tuviera la IP: 172.17.0.201, deberíamos especificar: 172.17.0.201:5900
También es posible definir una contraseña para permitir la conexión, simplemente deberemos añadir en el fichero VMX de la VM: remoteDisplay.vnc.password = XXXXXXXX, donde XXXXXXXX será la contraseña (8 caracteres).
Si queremos habilitar el acceso VNC sobre varias VMs, definiremos un puerto distinto para cada una dentro del rango definido en el firewall ESXi (apartado anterior). Por ejemplo: 5900, 5901, etc.
También es posible definir una contraseña para permitir la conexión, simplemente deberemos añadir en el fichero VMX de la VM: remoteDisplay.vnc.password = XXXXXXXX, donde XXXXXXXX será la contraseña (8 caracteres).
Si queremos habilitar el acceso VNC sobre varias VMs, definiremos un puerto distinto para cada una dentro del rango definido en el firewall ESXi (apartado anterior). Por ejemplo: 5900, 5901, etc.
No hay comentarios:
Publicar un comentario