Administración del Firewall en Hosts ESXi con esxcli

El firewall integrado en los hosts ESXi es una defensa crucial para la seguridad de la infraestructura virtualizada, protegiendo contra accesos no autorizados. Si bien la interfaz gráfica (GUI) ofrece una forma intuitiva de gestión, la línea de comandos (CLI) es indispensable para tareas de automatización, despliegues masivos y resolución de problemas avanzados.

Este artículo detalla la administración del firewall de ESXi utilizando la familia de comandos esxcli network firewall. Esta aproximación es válida para las versiones 6.7, 7.0 y 8.0 de ESXi, permitiando controlar el estado del firewall, activar reglas, abrir puertos y restringir el acceso por direcciones IP de manera eficiente y con efecto inmediato.

Interfaz Principal para el Firewall de ESXi

El punto de entrada unificado para todas las configuraciones del firewall en ESXi es el prefijo de comando:

esxcli network firewall

Este conjunto de comandos facilita la gestión integral del firewall, incluyendo su activación o desactivación global, la consulta de reglas existentes, la habilitación de servicios específicos, la apertura de puertos y la configuración de listas blancas de IPs. Todas las operaciones realizadas a través de esxcli se aplican de inmediato, sin necesidad de reiniciar el host o los servicios de red.

Verificación del Estado del Firewall

Antes de aplicar cualquier modificación, es fundamental conocer el estado actual del firewall y las reglas activas. Esto previene conflictos y asegura una configuración adecuada.

Estado General del Firewall

Para inspeccionar si el firewall está activo, su política predeterminada de reenvío y el estado de carga de las reglas, utilice:

esxcli network firewall get

Por defecto, el firewall de ESXi está habilitado y solo permite el tráfico esencial para los servicios de virtualización.

Listado de Conjuntos de Reglas (Rulesets)

Este comando enumera todos los conjuntos de reglas de servicio predefinidos en el sistema, como SSH, vMotion, vSAN, NFS e iSCSI. También muestra si cada regla individual está habilitada o deshabilitada, siendo una herramienta clave para auditorías de seguridad diarias.

esxcli network firewall ruleset list

Detalles de un Conjunto de Reglas Específico

Para obtener información detallada sobre un conjunto de reglas en particular, incluyendo los puertos que utiliza, los protocolos (TCP/UDP) y los rangos de acceso permitidos, ejecute:

esxcli network firewall ruleset rule list -r <nombre_ruleset>

Por ejemplo, para revisar los detalles del acceso SSH:

esxcli network firewall ruleset rule list -r sshServer

Gestión de Conjuntos de Reglas del Firewall

El firewall de ESXi opera con un sistema de "conjuntos de reglas" (rulesets), donde cada conjunto agrupa los puertos y protocolos necesarios para un servicio específicco. La administración se centra en activar o desactivar estos conjuntos predefinidos, en lugar de configurar puertos individuales.

Habilitar un Conjunto de Reglas (Permitir Acceso a un Servicio)

Esta es una de las operaciones más frecuentes, que permite el acceso externo a un servicio particular del host ESXi.

esxcli network firewall ruleset set -r <nombre_ruleset> -e true

Ejemplo: Habilitar el acceso para el servicio del cliente vSphere.

esxcli network firewall ruleset set -r vSphereClient -e true

Deshabilitar un Conjunto de Reglas (Denegar Acceso a un Servicio)

Para bloquear el acceso externo a un servicio, desactive el conjunto de reglas correspondiente. Esto mejora la seguridad al cerrar puertos innecesarios.

esxcli network firewall ruleset set -r vSphereClient -e false

Activación/Desactivación Global del Firewall (Solo para Emergencias)

Se recomienda enfáticamente usar estas opciones solo para resolución de problemas temporales, ya que deshabilitar el firewall globalmente expone el host a riesgos de seguridad significativos.

# Desactivar el firewall globalmente
esxcli network firewall set --enabled false

# Activar el firewall globalmente
esxcli network firewall set --enabled true

Configuración de Listas Blancas de IP

El firewall de ESXi permite implementar un control de acceso granular mediante la configuración de listas blancas de direcciones IP. Esto asegura que solo IPs o subredes específicas puedan acceder a ciertos servicios, minimizando la superficie de ataque.

Añadir una Dirección IP a la Lista Blanca de un Servicio

Este comando restringe el acceso a un servicio específico, como SSH, únicamente a la dirección IP proporcionada.

esxcli network firewall ruleset allowedip add -r sshServer -i 192.168.10.250

Después de esta configuración, solo el host con la IP 192.168.10.250 podrá conectarse al servicio SSH del ESXi, bloqueando todos los demás intentos.

Verificar las Direcciones IP en la Lista Blanca

Para revisar las direcciones IP actualmente permitidas para un conjunto de reglas:

esxcli network firewall ruleset allowedip list -r sshServer

Eliminar una Dirección IP de la Lista Blanca

Para revocar el permiso de una IP específica para acceder a un servicio:

esxcli network firewall ruleset allowedip remove -r sshServer -i 192.168.10.250

Conjuntos de Reglas Comúnmente Utilizados

A continuación, se presenta una lista de conjuntos de reglas habituales y sus funciones, útiles para una configuración rápida:

  • sshServer: Reglas para conexiones SSH (puerto 22).
  • vmotion: Reglas para la migración de máquinas virtuales con vMotion.
  • vsan: Reglas para la comunicación del clúster de almacenamiento vSAN.
  • nfsClient: Reglas para el montaje de almacenamiento NFS como cliente.
  • iscsiClient: Reglas para el cliente de almacenamiento iSCSI.
  • vSphereClient: Reglas para el acceso de gestión web (HTTP/HTTPS) del cliente vSphere.

Guía para la Resolución de Problemas

El Servicio no Responde a Pesar de que la Regla está Activada

Si un conjunto de reglas está habilitado pero el puerto sigue inaccesible, investigue si existen restricciones en firewalls de red externos (físicos o virtuales), routers, o si hay configuraciones de lista blanca de IP activas en el ESXi que limitan el acceso. Es común que la causa sea externa al firewall del ESXi.

Las Reglas Configuradas no Surtieron Efecto

En ocasiones, puede ser necesario recargar las configuraciones del firewall para que los cambios se apliquen correctamente:

esxcli network firewall load

Las Reglas Personalizadas Desaparecen tras un Reinicio

Las configuraciones de firewall realizadas con esxcli son persistentes por defecto. Si las reglas se pierden, verifique que la configuración se haya guardado correctamente y que no haya problemas con la partición de configuración del host. Recargue la configuración y verifique la persistencia.

Directrices de Operación y Mejores Prácticas

  1. Evitar la Desactivación Global del Firewall: El firewall solo debe desactivarse temporalmente para propósitos de depuración. En entronos de producción, debe permanecer activo en todo momento para proteger el host de amenazas internas y externas.
  2. Principio de Mínimo Privilegio: Cierre los puertos de servicio que no estén en uso. Habilite solo las reglas necesarias y priorice el uso de listas blancas de IP para restringir el acceso, evitando abrir servicios a toda la red.
  3. Adherencia a Conjuntos de Reglas Estándar: Es preferible utilizar los conjuntos de reglas predefinidos de VMware. Evite modificar manualmente los archivos de configuración del firewall para prevenir conflictos y posibles interrupciones en la red.
  4. Consistencia en Configuraciones de Clúster: Asegure que las reglas del firewall sean idénticas en todos los hosts de un clúster. Las discrepancias pueden causar problemas de comunicación para servicios críticos como vMotion o vSAN.

Etiquetas: ESXi VMware firewall esxcli virtualization

Publicado el 7-24 09:33