Cómo instalar Firewalld en Debian 12, 11 o 10

Firewalld se destaca por su enfoque dinámico para la gestión de firewalls. Ofrece adaptabilidad en tiempo real, característica que lo distingue de herramientas tradicionales como iptables y ufw. Esta flexibilidad en tiempo real posiciona a Firewalld como la opción preferida para los usuarios que valoran la seguridad y la facilidad de uso.

Ventajas clave del cortafuegos:

  • Gestión basada en zonas: Firewalld emplea un sistema basado en zonas, centrándose en la gestión de conexiones centrada en el usuario, una desviación de las operaciones por paquete de iptables.
  • Actualizaciones instantáneas: Con Firewalld, los cambios entran en vigor inmediatamente sin necesidad de reiniciar, a diferencia de iptables, que a menudo requiere recargas del servicio, lo que potencialmente interrumpe las conexiones activas.
  • Comandos fáciles de usar: La estructura de comandos de Firewalld es más intuitiva que la de ufw, lo que la hace increíblemente fácil de usar para quienes son nuevos en las configuraciones de firewall.
  • Documentación completa: Firewalld está respaldado por una documentación exhaustiva y una comunidad de usuarios activa, lo que garantiza que los usuarios tengan amplio soporte y recursos.
  • Integración perfecta con Debian: La combinación de las características dinámicas de Firewalld con la reconocida estabilidad de Debian ofrece una experiencia incomparable tanto para los usuarios de escritorio como para los administradores de servidores.

Con el conocimiento básico, esta guía lo guiará a través de la integración perfecta de Firewalld en su sistema Debian.

Instale Firewalld mediante comandos de terminal

Actualice Debian antes de la instalación de Firewalld

Antes de embarcarse en cualquier instalación de software nuevo, es fundamental actualizar la base de datos de paquetes del sistema Debian con el siguiente comando:

sudo apt update

Este comando le indica al sistema que obtenga los datos del paquete más recientes de todos los repositorios configurados.

Continúe con la instalación de Firewalld mediante el comando APT

Con la información del paquete actualizada del sistema, ahora puede instalar Firewalld. El administrador de paquetes de Debian, también conocido como APT, simplifica esta tarea. Para iniciar la instalación, ejecute el siguiente comando:

sudo apt install firewalld

Este comando le indica al administrador de paquetes que descargue e instale el paquete de software Firewalld.

Confirmar la instalación del firewall

Una vez que instale Firewalld, verifique que lo haya instalado correctamente y que lo haya configurado para que se ejecute correctamente. Para ver la versión de Firewalld en su sistema, use:

firewall-cmd --version

Este comando muestra el número de versión del Firewalld, confirmando su instalación.

Ahora, inicie Firewalld y configúrelo para que se ejecute cuando se inicie el sistema. Utilice este comando:

sudo systemctl enable --now firewalld

Comprensión de las zonas de firewall

En las “zonas” con firewall, las reglas de tráfico de la red se dictan en función de la confiabilidad de la red conectada, desde configuraciones públicas que no son de confianza hasta redes domésticas privadas.

Repasemos algunos de estos y lo que significan en detalle:

El papel de las zonas en Firewalld:

  • Firewalld opera utilizando el concepto de "zonas".
  • Una "zona" en Firewalld es esencialmente un conjunto de reglas predefinidas. Estas reglas dictan el tipo de tráfico de red que se permite o deniega según la confiabilidad de la red en la que se encuentra la computadora.

Ejemplos de cómo funcionan las zonas:

  • Zona Pública: Esta zona está diseñada para redes en lugares públicos, como cafeterías o aeropuertos. No puedes confiar en la mayoría de los demás dispositivos en esta configuración, por lo que las reglas son más restrictivas para proteger tu sistema.
  • Zona de origen: Esta zona supone un entorno más seguro, como su hogar. Aquí, probablemente esté familiarizado con todos los dispositivos, por lo que las reglas son menos estrictas, lo que permite una mayor comunicación entre dispositivos.

Lista de algunas zonas predefinidas comunes en Firewalld:

  • Gota: Descarta todos los paquetes entrantes sin ninguna respuesta. Lo más restrictivo.
  • Bloquear: Similar a 'Drop', pero enviará una respuesta de rechazo a la fuente.
  • Público: Para redes públicas que no son de confianza.
  • Externo: Se utiliza cuando su sistema actúa como puerta de enlace o firewall.
  • DMZ (Zona Desmilitarizada): Para las computadoras en su DMZ, ofrezca acceso limitado a una computadora aislada de Internet.
  • Trabajar: Para entornos de trabajo en los que confía en muchos usuarios pero aún necesita medidas de protección.
  • Hogar: Reglas relajadas para ambientes domésticos.
  • Interno: Para tramos internos de una red pública o privada.
  • Confiable: Se aceptan todas las conexiones de red. Menos restrictivo.

Comandos comunes del firewall

En esta sección, profundizamos en los comandos de Firewalld más utilizados. Estos comandos son fundamentales para administrar y configurar su Firewalld, lo que le permite proteger su entorno Debian de manera efectiva.

Sintaxis y opciones del comando Firewalld

La sintaxis general de los comandos de Firewalld es relativamente sencilla. A continuación, analizaremos la sintaxis y las opciones para que comprenda mejor cuáles son.

Primero, la sintaxis de los comandos firewalld es la siguiente:

firewall-cmd [options] command

Aquí hay una breve explicación de los componentes de sintaxis:

  • firewall-cmd: Este es el comando principal utilizado para las operaciones de Firewalld.
  • options: Modifican el comportamiento del comando. Son opcionales y se pueden omitir.
  • command: Esto especifica qué operación desea realizar.

Cuando se trata de opciones, Firewalld ofrece una variedad. Algunos de los más utilizados incluyen:

  • --zone=zone: Especifica la zona en la que operar. Si no se especifica ninguna zona, se utiliza la zona predeterminada.
  • --add-service=service: Agrega el servicio especificado a la zona. El cambio entra en vigor inmediatamente pero no es persistente tras los reinicios, a menos que --permanent está agregado.
  • --get-active-zones: enumera todas las zonas actualmente activas junto con sus interfaces asociadas.
  • --get-services: enumera todos los servicios disponibles conocidos por Firewalld.
  • --reload: Recarga la configuración del Firewalld, implementando cualquier cambio realizado con --permanent sin necesidad de reiniciar el sistema.

Para obtener información más detallada, siempre puede consultar la página de manual de Firewalld ejecutando man firewall-cmd en tu terminal.

Listado de todas las zonas activas del firewall

Comprender qué zonas están activas en su instalación de Firewalld proporciona una base sólida para administrar las configuraciones de su firewall. Puede recuperar esta información con el siguiente comando:

sudo firewall-cmd --get-active-zones

Este comando solicita a Firewalld que enumere todas las zonas activas, cada una acompañada de sus interfaces de red asociadas.

Mostrando zona predeterminada

Para ver la zona predeterminada configurada en su Firewalld, ejecute el siguiente comando:

sudo firewall-cmd --get-default-zone

El resultado de este comando especifica la zona predeterminada, que es crucial para comprender las políticas y servicios de seguridad predeterminados aplicados a las conexiones de red entrantes.

Cambiar la zona predeterminada

Para cambiar la zona predeterminada, use el siguiente comando:

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

Por reemplazo your_zone_name con el nombre de la zona real, modifica la zona predeterminada de su instalación de Firewalld.

Listado de servicios en una zona

A menudo es necesario saber qué servicios permite una zona específica. Puedes lograr esto usando:

sudo firewall-cmd --zone=your_zone_name --list-services

Solo reemplaza your_zone_name con el nombre de la zona para la que desea listar los servicios permitidos.

Agregar un servicio a una zona

Para agregar un nuevo servicio a una zona, use el siguiente comando:

sudo firewall-cmd --zone=your_zone_name --add-service=your_service_name

Con este comando, your_service_name se agrega a your_zone_name. Asegúrese de reemplazar estos marcadores de posición con sus nombres reales de servicio y zona.

Comandos y escenarios avanzados de Firewalld

Firewalld ofrece un conjunto completo de comandos y funciones avanzadas que brindan control granular sobre la configuración de su firewall. Profundicemos en estos comandos, equipándote con los conocimientos necesarios para manejar escenarios complejos que puedan surgir en tus tareas de gestión de red.

Gestión avanzada de firewall con Firewalld

Definición de un nuevo servicio

Si ejecuta una aplicación personalizada en un puerto específico que no figura en los servicios predefinidos, puede definir ese servicio usted mismo.

Utilice el siguiente comando para hacer esto:

sudo firewall-cmd --permanent --new-service=myservice

Posteriormente, puede agregar configuraciones para su servicio personalizado. Por ejemplo, para establecer un nombre breve y descriptivo para el servicio:

sudo firewall-cmd --permanent --service=myservice --set-short="My Custom Service"

Ajustar la zona predeterminada

Cuando una conexión entrante no tiene una zona específica definida, el sistema utiliza la zona predeterminada. Puede modificar la zona predeterminada para satisfacer sus necesidades.

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

Este comando establece la zona predeterminada en 'hogar'. Asegúrese de reemplazar 'hogar' con la zona deseada según su entorno de red y requisitos de seguridad.

Crear una zona personalizada

Si las zonas predefinidas no satisfacen sus necesidades, puede crear una zona personalizada:

sudo firewall-cmd --permanent --new-zone=customzone

Después de crear la zona, puede modificarla agregando o eliminando servicios, puertos, etc., para que coincida con sus especificaciones.

Habilitación del enmascaramiento

Normalmente utiliza el enmascaramiento cuando su sistema sirve como puerta de enlace o enrutador para otros sistemas en su red. Para habilitar el enmascaramiento en una zona específica, use:

sudo firewall-cmd --zone=public --add-masquerade

Recuerde, reemplace 'público' con la zona en la que desea habilitar el enmascaramiento.

Puertos de reenvío

Firewalld también le permite reenviar un puerto específico a otro. Esto puede resultar beneficioso en numerosos escenarios, como cuando se ejecutan servicios en puertos no estándar:

sudo firewall-cmd --zone=public --add-forward-port=port=5000:proto=tcp:toport=80

Este comando reenvía todas las conexiones TCP entrantes desde el puerto 5000 al puerto 80 en la zona "pública".

Estos ejemplos representan sólo un pequeño subconjunto de las capacidades avanzadas de Firewalld. Hay muchos más comandos y opciones disponibles según sus necesidades específicas de red y seguridad. Para obtener más información, consulte la documentación oficial de Firewalld o utilice el comando 'man'.

Solución de problemas de firewall

La gestión de firewalls a veces puede resultar compleja y es posible que surjan problemas. Sin embargo, Firewalld proporciona un conjunto completo de herramientas y técnicas de solución de problemas para ayudar a resolver dichos desafíos. Esta sección lo guiará en el diagnóstico y solución de problemas comunes del firewall.

Investigación de problemas de firewall

Comprobar el estado del firewall

Para diagnosticar cualquier problema de Firewalld, primero verifique el estado del servicio con el siguiente comando:

sudo systemctl status firewalld

Este comando proporciona información sobre el estado del servicio Firewalld, si está activo y si encontró algún error durante el inicio.

Revisión de registros de firewall

Puede encontrar información invaluable en los registros de Firewalld cuando soluciona problemas. De forma predeterminada, Firewalld registra eventos en el diario del sistema, al que puede acceder usando:

sudo journalctl -u firewalld

Este comando generará los registros relacionados con Firewalld, lo que le ayudará a identificar errores o comportamientos inusuales.

Verificando la configuración

Firewalld mantiene sus archivos de configuración en el /etc/firewalld/ directorio. Si tiene problemas, es una buena práctica verificar estos archivos de configuración para detectar errores o discrepancias:

sudo less /etc/firewalld/firewalld.conf

Este comando le permite ver el archivo de configuración principal de Firewalld.

Resolución de problemas comunes de firewall

Problema: El firewall no responde a los comandos

A veces, es posible que Firewalld no reaccione a sus comandos. Una excelente acción inicial es recargar Firewalld. Puedes hacer esto con el siguiente comando:

sudo firewall-cmd --reload

Este comando recarga la configuración de Firewalld desde el disco y descarta todos los cambios temporales no guardados. Sin embargo, no elimina todas las reglas del firewall.

Problema: Es necesario restablecer el firewall a los valores predeterminados

Si desea restablecer todas las configuraciones predeterminadas y eliminar todas las reglas personalizadas, debe usar el --complete-reload opción. Tenga en cuenta que el uso de esta opción eliminará todas las configuraciones permanentes y de tiempo de ejecución y las reemplazará con el conjunto de reglas predeterminado.

sudo firewall-cmd --complete-reload

Problema: necesidad de eliminar una regla específica

Para eliminar una regla específica, debe utilizar el --remove dominio. Por ejemplo, si desea eliminar el servicio HTTP de la zona pública en la configuración permanente, el comando sería:

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

Problema: la regla del firewall no funciona

Si una regla de firewall no parece funcionar, a menudo la razón es que alguien no configuró la regla para que fuera permanente. Una regla no permanente funciona sólo para la sesión actual. Una vez que alguien reinicia el sistema, la regla desaparece. Para garantizar que la regla se mantenga, incluya el --permanent marca cuando creas la regla.

Problema: La configuración de zona no funciona como se esperaba

Comprender las zonas y cómo interactúan con las interfaces y los servicios es fundamental cuando se trabaja con Firewalld. A continuación se presentan algunos escenarios que podrían ocurrir y cómo abordarlos.

Escenario: no asignó la interfaz a la zona correcta

Imagine que crea una nueva zona llamada "interna" para su red interna y configura reglas y servicios específicos para ella. Pero el sistema no aplica estas reglas. Una razón probable podría ser que no haya asignado la interfaz deseada a la zona "interna".

Para ver qué interfaces están asociadas con una zona, use este comando:

sudo firewall-cmd --zone=internal --list-interfaces

Si el resultado no incluye la interfaz deseada, puede asignarla usando el comando:

sudo firewall-cmd --zone=internal --add-interface=eth1

Este comando agrega la interfaz 'eth1' a la zona 'interna'.

Escenario: La Zona No Habilita el Servicio

Imagina que tienes un 'dmz' zona y desea permitir el tráfico HTTP. Pero el tráfico no pasa. Esto puede suceder si no ha habilitado el servicio HTTP en el 'dmz' zona.

Para ver si una zona tiene un servicio habilitado, ingrese:

sudo firewall-cmd --zone=dmz --query-service=http

Si el servicio no está activo actívalo con:

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

Este comando activa el servicio HTTP en el 'dmz' zona.

Incluya el indicador –permanent en los comandos para que estas modificaciones duren después de reiniciar. Vincula siempre tus interfaces con las zonas adecuadas y activa los servicios necesarios.

Conclusión

En esta guía completa, lo guiamos a través de la instalación de Firewalld en Debian, incluidas las versiones 12, 11 y 10. Exploramos los fundamentos de Firewalld, sus configuraciones de zona y servicio, y le brindamos comandos básicos y avanzados. ejemplos. Además, hemos abordado algunos escenarios de solución de problemas comunes que puede encontrar al trabajar con Firewalld. Siguiendo esta guía, debería estar bien equipado para utilizar Firewalld para administrar y proteger la configuración del firewall de su servidor de manera efectiva. Le animamos a experimentar y perfeccionar continuamente sus conocimientos, ya que dominar Firewalld le proporcionará un sólido conjunto de herramientas para mantener un entorno de red seguro y bien organizado.

Enlaces útiles

Aquí hay algunos enlaces valiosos relacionados con el uso de Firewalld:

  • Sitio web oficial de Firewall: Visite el sitio web oficial de Firewalld para obtener información sobre el administrador de firewall dinámico, sus características y opciones de descarga.
  • Documentación del cortafuegos: acceda a documentación completa para obtener guías detalladas sobre la instalación, configuración y uso de Firewalld.
  • Comunidad cortafuegos: Únase a la comunidad Firewalld para conectarse con otros usuarios, participar en debates y obtener soporte.
  • Repositorio Firewalld GitHub: Explore el repositorio de Firewalld GitHub para ver el código fuente, informar problemas y contribuir al desarrollo.
Joshua James
Sígueme
Últimas entradas de Joshua James (ver todo)