Introducción a Firewalld ⋆ ALexHost SRL

Pon a prueba tus habilidades en todos nuestros servicios de Hosting y ¡obtén un 15% de descuento!

Utiliza el código al pagar:

Skills
19.11.2024

Introducción a Firewalld

A la hora de gestionar la seguridad del servidor, una solución de alojamiento robusta es esencial para garantizar que sus configuraciones sean fiables y eficientes. El alojamiento VPS Linux de AlexHost proporciona una plataforma ideal para implementar medidas de seguridad avanzadas, como la gestión dinámica de cortafuegos con Firewalld. Con acceso root completo, recursos personalizables y alto rendimiento, AlexHost le garantiza la flexibilidad y estabilidad necesarias para configurar y gestionar Firewalld de forma eficaz.

Firewalld es una herramienta de gestión dinámica de cortafuegos que proporciona una forma más flexible de gestionar la configuración de cortafuegos en sistemas Linux. Simplifica el proceso de configuración de cortafuegos en comparación con herramientas tradicionales como iptables, ofreciendo una interfaz más fácil de usar a la vez que mantiene sólidas funciones de seguridad. Firewalld está disponible por defecto en varias distribuciones de Linux, incluyendo Fedora, CentOS, Red Hat Enterprise Linux y otras. Esta guía proporciona una introducción a Firewalld, sus conceptos clave y cómo utilizarlo eficazmente.

¿Qué es Firewalld?

Firewalld es una interfaz frontal para iptables y nftables, que son los mecanismos de cortafuegos subyacentes en los sistemas Linux. Mientras que estas herramientas tradicionales requieren la creación y gestión manual de reglas, Firewalld proporciona una forma más sencilla de crear, modificar y gestionar reglas de cortafuegos de forma dinámica. Su principal ventaja reside en su capacidad para cambiar la configuración sin necesidad de reiniciar el servicio de cortafuegos o interrumpir las conexiones de red activas.

Conceptos clave de Firewalld

Antes de entrar en cómo utilizar Firewalld, es esencial entender algunos conceptos clave que forman la base de su funcionamiento.

1. Zonas

Las zonas son un concepto central en Firewalld y representan diferentes niveles de confianza para las conexiones de red. Cada zona puede configurarse con su propio conjunto de reglas de cortafuegos, y las interfaces de red pueden asignarse a zonas específicas en función de sus necesidades de seguridad.

Firewalld incluye varias zonas predefinidas, tales como:

  • Pública: Adecuada para su uso en áreas públicas como aeropuertos y cafeterías, donde la seguridad es una prioridad absoluta.
  • Privada: Utilizada para redes de confianza, como la red de su casa u oficina.
  • De confianza: Se permiten todas las conexiones entrantes. Sólo debe utilizarse en redes de alta confianza.
  • Bloquear: Las conexiones entrantes se eliminan sin ninguna respuesta.
  • Drop: Similar a Block, pero elimina silenciosamente todo el tráfico entrante.
  • Interno: Se utiliza para redes internas de confianza, permitiendo reglas de cortafuegos más relajadas.

También puede crear zonas personalizadas en función de sus necesidades específicas.

2. Servicios

Los servicios en Firewalld representan un conjunto de reglas de cortafuegos predefinidas para servicios de red específicos, como HTTP, FTP o SSH. En lugar de configurar manualmente puertos y protocolos, Firewalld le permite habilitar o deshabilitar servicios con un simple comando. Esto facilita la gestión de reglas de cortafuegos sin necesidad de entender todos los detalles técnicos del servicio subyacente.

3. Reglas enriquecidas

Las reglas enriquecidas son reglas avanzadas en Firewalld que proporcionan un control más granular sobre el filtrado de tráfico. Permiten el uso de condiciones específicas como direcciones IP, protocolos y puertos. Las reglas enriquecidas son útiles cuando necesita configuraciones más complejas que van más allá de lo que está disponible a través de las reglas predeterminadas basadas en zonas.

4. Tiempo de ejecución frente a configuración permanente

Firewalld le permite realizar cambios en tiempo de ejecución o de forma permanente. Los cambios en tiempo de ejecución son inmediatos pero se pierden cuando se reinicia el sistema, mientras que los cambios permanentes persisten tras los reinicios.

  • Configuración en tiempo de ejecución: Inmediata, pero temporal.
  • Configuración permanente: Duradera, pero sólo se aplica tras una recarga o reinicio.

Esta separación permite probar los cambios antes de aplicarlos permanentemente.

Instalación de Firewalld

Si Firewalld no está instalado por defecto en su sistema, puede instalarlo fácilmente utilizando el gestor de paquetes de su distribución de Linux. Por ejemplo:

  • En RHEL/CentOS/Fedora:
    sudo yum install firewalld
  • En Debian/Ubuntu:
    sudo apt-get install firewalld

Tras la instalación, inicie el servicio Firewalld y habilítelo para que se ejecute al inicio:

sudo systemctl start firewalld
sudo systemctl enable firewalld

Comandos básicos de Firewalld

Estos son algunos comandos comunes de Firewalld para ayudarle a empezar.

1. Comprobar el estado de Firewalld

Para comprobar si Firewalld se está ejecutando, utilice:

sudo firewall-cmd --state

Si se está ejecutando, verá running como salida.

2. Lista de zonas activas

Para ver qué zonas están activas y qué interfaces de red tienen asignadas, ejecute:

sudo firewall-cmd --get-active-zones

3. Establecer zona por defecto

Si desea establecer una zona por defecto para las nuevas conexiones de red, puede hacerlo con:

sudo firewall-cmd --set-default-zone=public

4. Añadir servicios a una zona

Puede permitir un servicio (como SSH o HTTP) dentro de una zona utilizando el siguiente comando:

sudo firewall-cmd --zone=public --add-service=http

Para que este cambio sea permanente, utilice el indicador –permanent:

sudo firewall-cmd --zone=public --add-service=http --permanent

5. Abrir puertos específicos

Si necesitas abrir puertos específicos en lugar de habilitar servicios predefinidos, puedes hacerlo con:

sudo firewall-cmd --zone=public --add-port=8080/tcp

Hágalo permanente añadiendo –permanent como antes.

6. Eliminar servicios o puertos

Para eliminar un servicio o puerto de una zona, utilice los comandos –remove-service o –remove-port:

sudo firewall-cmd --zone=public --remove-service=http
sudo firewall-cmd --zone=public --remove-port=8080/tcp

Pon a prueba tus habilidades en todos nuestros servicios de Hosting y ¡obtén un 15% de descuento!

Utiliza el código al pagar:

Skills