PowerCLI one-liners: Habilitar masivamente ESXi Shell y SSH con PowerCLI
Si bien VMware te avisa con un bonito warning al activarlos, la ESXi Shell y la administración vía SSH son herramientas valiosísimas para hacer troubleshooting en nuestros servidores ESXi. En la entrada de hoy vamos a ver cómo habilitar de forma masiva ESXi Shell y SSH con PowerCLI en nuestros host ESXi para evitar tener que hacerlo a mano uno por uno.
¿Cómo habilitar ESXi Shell y SSH con PowerCLI?
Como siempre, antes de realizar cualquier acción en PowerShell/PowerCLI debemos buscar los cmdlets que nos pueden ayudar a realizar las acciones que necesitamos. Como en este caso lo que necesitamos es manejar los servicios de VMware podríamos hacer la siguiente búsqueda con Get-Command:
Si utilizamos Get-VMHostService podemos ver qué servicios tienen nuestros ESXi y su estado:
Como podemos ver marcados en rojo ya tenemos los dos servicios que buscamos: TSM (ESXi Shell) y TSM-SSH (SSH). Otras cosas interesantes que podemos observar en la captura son que los servicios no están habilitados (Policy = off) y que no están activos (Running = False). Si juntamos estas piezas con los cmdlets de la captura anterior ya tenemos el one-liner hecho:
|
|
Vamos a desglosar la línea:
- Get-VMHost: Listamos todos los host.
- Get-VMHostService | Where Key -like ‘TSM'*: Obtenemos los servicios y filtramos por los que en el campo Key contienen TSM (ESXi Shell y SSH).
- Set-VMHostService -Policy on -Confirm:$false: Habilitamos el servicio ponendo el parámetro Policy a on.
- Start-VMHostService -Confirm:$false: Arrancamos el servicio.
La salida del comando debería mostrarnos como ambos servicios han sido arrancados y habilitados:
Bola extra: Quitar el warning ‘SSH está habilitado en este host’
Una vez ejecutado el one-liner, si nos conectamos a la consola de administración de un ESXi o de nuestro vCenter deberíamos ver este par de mensajes:
- La shell de ESXi está habilitado en este host.
- SSH está habilitado en este host.
Como decía al principio de la entrada, VMware nos muestra estos avisos porque son considerados una falla de seguridad. Si queréis asumir el riesgo y quitar estos mensajes, si bien como siempre podéis hacerlo desde la propia consola gráfica, podemos hacerlo con otro one-liner:
|
|
Conclusión
Y hasta aquí el one-liner de hoy. Podéis consultar los anteriores PowerCLI one-liners y los PowerShell one-liners desde sus respectivos tags.
¡Espero que os sirvan!