Los cortafuegos son una de las partes más esenciales de la seguridad cuando nos conectamos. Aquí aprendemos los pasos y comandos para instalar, configurar y cómo usar FirewallD en Rocky Linux 8 usando CLI o GUI.
Muchos de nosotros que aún no somos Linux ya estaríamos familiarizados con la función de firewall en Windows, donde es muy fácil activar o desactivar puertos o servicios mediante la GUI. Sin embargo, ¿qué pasa con Linux como CentOS, Rocky Linux, RedHat, AlmaLinux y más? Si está utilizando Linux Desktop completo, entonces ya habrá un firewall, pero en la mayoría de los casos sin una interfaz gráfica. No obstante, Debian, RedHat, Ubuntu y otros sistemas Linux proporcionan el software de interfaz gráfica de usuario de cortafuegos adecuado directamente desde su repositorio respectivo para administrar las cosas con la ayuda de los clics del mouse.
Pero, ¿qué sucede si solo desea una instalación básica del sistema operativo sin interfaz gráfica? Porque las versiones mínimas de Linux ni siquiera tendrían la versión CLI de Firewall por defecto. Bueno, este es un problema muy pequeño, si tiene una conexión a Internet activa y debido a un administrador de paquetes incorporado en Linux, podemos instalar un firewall con solo un comando.
Características de FirewallD:
• API D-Bus completa
• Compatibilidad con IPv4, IPv6, puente e ipset
• Compatibilidad con IPv4 e IPv6 NAT
• zonas de cortafuegos
• Una lista predefinida de zonas, servicios y tipos de ICMP
• Servicio simple, puerto, protocolo, puerto de origen, enmascaramiento, reenvío de puertos, filtro ICMP, reglas enriquecidas, interfaz y gestión de direcciones de origen en zonas
• Definiciones de servicios simples para puertos, protocolos, puertos de origen, módulos (ayudantes de Netfilter) y gestión de direcciones de destino
• Lenguaje enriquecido para reglas más flexibles y complejas en zonas
• Reglas cronometradas en zonas
• Registro simple de paquetes rechazados
• Interfaz directa
• Bloqueo:Lista blanca de usuarios que pueden modificar el firewall.
• Carga automática de los módulos del kernel de Linux
• Funciona con marionetas
• CLI para configuraciones en línea y fuera de línea
• Herramienta gráfica (usando gtk3)
• Subprograma (usando Qt4)
Los cortafuegos en CentOS solían ser controlados por ipTables. Esto ha sido reemplazado en gran medida por FirewallD. De manera predeterminada, solo el puerto 22 está abierto en Rocky Linux 8, el resto está cerrado por ahora.
Pasos para instalar y configurar Firewalld en Rocky Linux 8
El comando dado aquí también será aplicable para otros sistemas basados en Redhat como CentOS, Oracle Linux, Rocky Linux y RedHat.
1. Requisitos
No hay requisitos especiales, sin embargo, asegúrese de tener lo siguiente:
• Rocky Linux 8
• Al menos un usuario sudo no root
• Una conexión a Internet
• Acceso a Terminal
2. Actualización DNF
Lo primero que debe hacer después de instalar un sistema operativo Linux o antes de configurar alguna herramienta con el administrador de paquetes es ejecutar una actualización del sistema. Esto asegurará que todos los paquetes estén en su estado más reciente y también actualizará el caché del repositorio.
sudo dnf update
3. Instalar Firewalld en Rocky Linux 8
No tenemos que buscar ningún repositorio de terceros para obtener los paquetes para la instalación de FirewallD en Rocky Linux 8 o cualquier otro basado en Redhat. Ya lo proporciona el repositorio baseOS del sistema. Por lo tanto, simplemente ejecute el comando dado y listo.
sudo dnf install firewalld
4. Inicie el servicio FirewallD
El servicio de Firewalld no se iniciará de forma atómica, tenemos que hacerlo manualmente y también habilitarlo para que se ejecute con el arranque del sistema.
sudo systemctl unmask firewalld
sudo systemctl start firewalld
sudo systemctl enable firewald
Consulta el estado:
sudo systemctl status firewalld
4. Comprobar versión
Después de completar con éxito el proceso de instalación, podemos verificar la versión del firewall para confirmar que está allí en nuestro sistema.
sudo firewall-cmd --version
5. Uso de FirewallD en Rocky Linux 8
Hay algunas zonas predefinidas que podemos usar con el comando Firewalld para configurar varios servicios y puertos en el sistema. Aquí están esos:
soltar :Cualquier paquete de red entrante se descarta, no hay respuesta. Solo son posibles las conexiones de red salientes.
bloquear :Cualquier conexión de red entrante se rechaza con un mensaje icmp-host-prohibited para IPv4 e icmp6-adm-prohibited para IPv6. Solo son posibles las conexiones de red iniciadas dentro de este sistema.
público :Para uso en áreas públicas. No confía en las otras computadoras en las redes para no dañar su computadora. Solo se aceptan conexiones entrantes seleccionadas.
externo :Para uso en redes externas con enmascaramiento habilitado especialmente para enrutadores. No confía en las otras computadoras en las redes para no dañar su computadora. Solo se aceptan conexiones entrantes seleccionadas.
dmz :para computadoras en su zona desmilitarizada que son de acceso público con acceso limitado a su red interna. Solo se aceptan conexiones entrantes seleccionadas.
trabajo :Para uso en áreas de trabajo. En su mayoría, confía en que las otras computadoras en las redes no dañarán su computadora. Solo se aceptan conexiones entrantes seleccionadas.
casa :Para uso en áreas del hogar. En su mayoría, confía en que las otras computadoras en las redes no dañarán su computadora. Solo se aceptan conexiones entrantes seleccionadas.
interno :Para uso en redes internas. En su mayoría, confía en que las otras computadoras en las redes no dañarán su computadora. Solo se aceptan conexiones entrantes seleccionadas.
de confianza :Se aceptan todas las conexiones de red.
Sintaxis de comandos para permitir o bloquear puertos
Hasta ahora, ya estaría familiarizado con las zonas del programa Firewalld, ahora podemos usar fácilmente el terminal de comando para abrir, cerrar y administrar puertos o servicios en varias zonas.
Permitir puerto
Por ejemplo, desea abrir el puerto 80 o el servicio HTTP:
sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
o
sudo firewall-cmd --permanent --zone=public --add-service=http
De la misma forma, podemos abrir los puertos 22, 443 o servicios no permitidos en el firewall.
Después de abrir el puerto, es importante volver a cargar el servicio de firewall para aplicar los cambios que hemos hecho.
sudo firewall-cmd --reload
Bloquear/eliminar puerto
Mientras que para bloquear cualquier puerto o servicio abierto, solo necesitamos usar la opción de eliminación, aquí está la sintaxis para eso.
Por ejemplo, desea bloquear el puerto 80, el comando será:
sudo firewall-cmd --permanent --zone=public --remove-port=80/tcp
o si conoce el servicio correspondiente al puerto:
sudo firewall-cmd --permanent --zone=public --remove-service=hhtp
Después de eso, no olvides recargar el firewall:
sudo firewall-cmd --reload
Lista de todos los puertos activos:
Para saber cuales son los puertos activos en el firewall para conectarse, podemos listarlos usando el firewall-cmd
comando:
sudo firewall-cmd --list-ports
Lista de información de zona predeterminada
Cuando no sepa qué zona tiene qué tipo de servicio o simplemente desee obtener toda la información relacionada con el firewall en una zona diferente, ejecute:
Para enumerar todos los puertos
sudo firewall-cmd --list-all
Mientras que solo para alguna zona específica, el usuario puede declarar lo mismo en el comando:
sudo firewall-cmd --list-all --zone=home
Comando para ver qué servicios están permitidos
Para obtener la única lista de servicios permitidos en el cortafuegos:
sudo firewall-cmd --list-services
6. Instale la GUI de FirewallD en Rocky Linux 8
Bueno, aquellos que usan la interfaz gráfica de usuario de Rocky Linux 8 o cualquier otra basada en RPM, pueden optar por la interfaz GUI para administrar los servicios de firewall fácilmente, como agregar o eliminar puertos y servicios.
sudo dnf install firewall-config
Una vez completada la instalación, vaya al Iniciador de aplicaciones y busque –Firewall . Cuando aparezca su icono, haga clic para ejecutarlo.
Usando la GUI podemos configurar fácilmente varios servicios y puertos con la ayuda de unos pocos clics.
7. Detener y deshabilitar Firewalld
Siempre que no desee que su Firewall bloquee o permita ningún puerto/servicio, podemos detenerlo temporalmente hasta que se inicie el sistema.
sudo systemctl stop firewalld
Mientras que, si desea detener y desactivar el cortafuegos de forma permanente , ejecuta:
sudo systemctl disable firewalld
sudo systemctl mask firewalld
8. Desinstalar o Eliminar
En caso de que ya no desee el FirewallD en su sistema, podemos eliminarlo usando el administrador de paquetes DNF usando la opción "eliminar ” opción.
sudo dnf remove firewalld
para GUI, si ha instalado:
sudo dnf remove firewall-config
Conclusión
De esta manera, podemos instalar y usar FirewallD en Allamlinux y otros sistemas Linux basados en RPM para proteger nuestro sistema del mundo exterior hasta cierto punto. Obtenga más información al respecto en la documentación oficial de FirewallD.