Inicio > Gestión de red > firewalld

firewalld: Gestión dinámica de servicios de firewall

firewalld es un demonio de gestión de firewall dinámico para sistemas Linux. Permite una fácil administración de reglas de firewall utilizando el concepto de zonas de red, y los cambios en las reglas se pueden realizar incluso mientras el servicio está en ejecución. Sirve para reemplazar o complementar iptables existentes.

Descripción general

firewalld es un demonio que controla el tráfico de red del sistema, permitiendo aplicar diferentes niveles de seguridad según las interfaces de red o las direcciones IP de origen a través de zonas (zones) predefinidas. Ofrece una interfaz más amigable en lugar de manejar directamente las complejas reglas de iptables.

Características principales

  • Gestión dinámica de reglas: Permite cambiar reglas sin reiniciar el servicio
  • Basado en zonas: Aplica diferentes políticas de seguridad según la interfaz de red o la fuente
  • Gestión de servicios y puertos: Facilita la apertura/bloqueo de servicios específicos (SSH, HTTP, etc.) o puertos
  • Reglas enriquecidas (Rich Rules): Permite configurar reglas basadas en condiciones complejas
  • Soporte para IPv4 e IPv6

Opciones principales

Estas son las opciones utilizadas al ejecutar el demonio firewalld en sí. La mayoría de la administración de reglas de firewall se realiza a través del comando firewall-cmd.

Opciones de ejecución del demonio

Comando generado:

Combina los comandos.

Descripción:

`firewalld` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

El servicio firewalld se gestiona principalmente a través del comando systemctl. La configuración de reglas de firewall se realiza con el comando firewall-cmd.

Iniciar el servicio firewalld

sudo systemctl start firewalld

Inicia el demonio firewalld.

Habilitar el servicio firewalld (inicio automático al arrancar)

sudo systemctl enable firewalld

Configura firewalld para que se inicie automáticamente al arrancar el sistema.

Verificar el estado del servicio firewalld

sudo systemctl status firewalld

Comprueba el estado actual del servicio firewalld.

Reiniciar el servicio firewalld

sudo systemctl restart firewalld

Reinicia el servicio firewalld.

Recargar la configuración de firewalld (después de cambiar reglas)

sudo firewall-cmd --reload

Recarga las reglas del firewall para aplicarlas sin detener el servicio.

Instalación

firewalld está incluido por defecto en muchas distribuciones Linux de la familia Red Hat, como CentOS, Fedora y RHEL. En las familias Debian/Ubuntu, puede que necesites instalarlo manualmente.

CentOS/Fedora/RHEL

sudo dnf install firewalld

Instala firewalld usando dnf (o yum).

Debian/Ubuntu

sudo apt install firewalld

Instala firewalld usando apt.

Consejos y precauciones

Consejos y precauciones para usar firewalld de manera efectiva.

Uso de firewall-cmd

Toda la configuración y administración de reglas de firewall de firewalld se realiza a través del comando 'firewall-cmd'. Por ejemplo, para abrir puertos, añadir servicios o configurar zonas, debes usar firewall-cmd.

  • Ver zonas activas actuales: `firewall-cmd --get-active-zones`
  • Abrir un puerto específico (ej: HTTP 80/tcp): `sudo firewall-cmd --zone=public --add-port=80/tcp --permanent`
  • Aplicar cambios: `sudo firewall-cmd --reload`

Aplicación de reglas permanentes

Al añadir reglas con firewall-cmd, debes usar la opción `--permanent` para que las reglas se mantengan después de reiniciar el sistema. Después de usar la opción `--permanent`, siempre debes ejecutar `firewall-cmd --reload` para aplicar los cambios.

Comprensión de las zonas predeterminadas

firewalld utiliza la zona 'public' por defecto, pero ofrece varias zonas como 'home', 'work', 'internal', 'external', 'trusted', 'drop', 'block', etc. Cada zona tiene un nivel de seguridad diferente.

Relación con iptables

firewalld utiliza iptables (o nftables) internamente, pero proporciona una interfaz más abstracta que el uso directo del comando iptables. En sistemas que usan firewalld, es recomendable evitar la manipulación directa de comandos iptables.


Comandos de la misma categoría