Para comenzar con la configuración de firewall en cualquier sistema operativo, primero debemos entender qué es un firewall y qué hace. Así que aprendamos primero sobre el firewall.
¿Qué es un firewall??
Un firewall, en palabras simples, es un sistema utilizado para la seguridad de la red al monitorear, controlar y filtrar el tráfico de red (entrante o saliente). Podemos establecer algunas reglas de seguridad si queremos permitir o bloquear algún tráfico específico. Entonces, para la seguridad del sistema, un firewall bien configurado es esencial.
Firewalld: un sistema de gestión de firewall
Si hablamos de la configuración de firewall en el sistema operativo CentOS 8, CentOS 8 viene con un servicio de firewall conocido como cortafuegos. El cortafuegos Daemon es un excelente software de gestión de firewall para administrar y controlar el tráfico de red del sistema. Es utilizado por varias distribuciones principales de Linux para realizar la configuración del firewall y como un sistema de filtrado de paquetes de red.
Esta publicación aprenderá todo sobre cortafuegos y mostrarle cómo configurar y hacer la configuración de firewall en el sistema operativo CentOS 8. También intentaremos un par de comandos básicos y realizaremos algunas configuraciones básicas de firewall para administrar el tráfico de red. Comencemos con la comprensión de BASIC Cortafuegos conceptos.
Conceptos básicos de firewalld
Cortafuegos Daemon usa firewall-cmd detrás. El firewall-cmd es la utilidad o cliente de línea de comandos del cortafuegos demonio. Discutamos y comprendamos algunos conceptos de esta herramienta.
Para controlar el tráfico, cortafuegos Utiliza zonas y servicios. Así que entender y comenzar a trabajar con cortafuegos, primero debe entender qué zonas y servicios en cortafuegos son.
Zonas
Las zonas son como una parte de la red donde establecemos algunas reglas o establecemos requisitos de seguridad específicos para administrar y controlar el flujo de tráfico bajo las reglas definidas de la zona. Primero declaramos las reglas de una zona, y luego se le asigna una interfaz de red, sobre las cuales se aplican las reglas de seguridad.
Podemos establecer o cambiar cualquier regla basada en el entorno de red. Para las redes públicas, podemos establecer algunas reglas estrictas para nuestra configuración de firewall. Si bien, para una red doméstica, no necesita establecer algunas reglas estrictas, algunas reglas básicas funcionarán bien.
Hay algunas zonas predefinidas por el cortafuegos Basado en el nivel de confianza. Por lo tanto, es mejor comprenderlos y utilizarlos de acuerdo con el nivel de seguridad que queremos establecer.
No es obligatorio seguir y usar las zonas ya que están predefinidas. Podemos alterar las reglas de la zona y asignarle una interfaz de red más tarde.
Configuración de reglas de firewalld
Puede haber dos tipos de conjuntos de reglas en el cortafuegos:
Cuando agregamos o cambiamos un conjunto de reglas, se aplica solo al firewall en ejecución. Después de recargar el servicio de firewalld o el reinicio del sistema, el servicio Firewalld solo cargará las configuraciones permanentes. Los conjuntos de reglas agregados o cambiados recientemente no se aplicarán porque los cambios que hacemos en el firewalld solo se usan para la configuración de tiempo de ejecución.
Para cargar los conjuntos de reglas agregados o cambiados recientemente en reiniciar el sistema o volver a cargar el servicio Firewalld, debemos agregarlos a las configuraciones permanentes de firewalld.
Para agregar los conjuntos de reglas y mantenerlos en la configuración de forma permanente, simplemente use el indicador -Permanente al comando:
$ sudo firewall-cmd --Permanent [Opciones]
Después de agregar los conjuntos de reglas a las configuraciones permanentes, vuelva a cargar el firewall-cmd usando el comando:
$ sudo firewall-cmd--Reload
Por otro lado, si desea agregar los conjuntos de reglas de tiempo de ejecución a la configuración permanente, use el comando escrito a continuación:
$ sudo firewall-cmd--runtime a permanente
Usando el comando anterior, todos los conjuntos de reglas de tiempo de ejecución se agregarán a la configuración de firewall permanente.
Instalación y habilitación de firewalld
Cortafuegos Viene preinstalado en la última versión de Centos 8. Sin embargo, por alguna razón está roto o no instalado, puede instalarlo usando el comando:
$ sudo dnf install firewalld
Una vez cortafuegos Daemon está instalado, comienza el cortafuegos servicio si no se activa de forma predeterminada.
Para comenzar el cortafuegos servicio, ejecute el comando escrito a continuación:
$ sudo systemctl iniciar firewalld
Es mejor si comienza automáticamente en el arranque, y no tiene que iniciarlo una y otra vez.
Para habilitar el cortafuegos Daemon, ejecute el comando que se da a continuación:
$ sudo systemctl habilitar firewalld
Para verificar el estado del servicio Firewall-CMD, ejecute el comando que se proporciona a continuación:
$ sudo firewall-cmd--State
Puedes ver en la salida; El firewall está funcionando perfectamente bien.
Reglas predeterminadas de firewall
Exploremos algunas de las reglas de firewall predeterminadas para comprenderlas y cambiarlas si es necesario.
Para conocer la zona seleccionada, ejecute el comando firewall-cmd con el indicador -get-default-zone como se muestra a continuación:
$ firewall-cmd --get-default-zone
Mostrará la zona activa predeterminada que controla el tráfico entrante y saliente para la interfaz.
La zona predeterminada seguirá siendo la única zona activa siempre que no damos cortafuegos Cualquier comando para cambiar la zona predeterminada.
Podemos obtener las zonas activas ejecutando el comando firewall-cmd con el indicador de zonas-activas-activas como se muestra a continuación:
$ firewall-cmd --get-active-zones
Puede ver en la salida que el firewall controla nuestra interfaz de red, y los conjuntos de reglas de la zona pública se aplicarán en la interfaz de red.
Si desea obtener conjuntos de reglas definidos para la zona pública, ejecute el comando que se escribe a continuación:
$ sudo firewall-cmd --list-thol
Al observar la salida, puede presenciar que esta zona pública es la zona predeterminada y una zona activa, y nuestra interfaz de red está conectada a esta zona.
Cambio de zona de la interfaz de red
Dado que podemos cambiar las zonas y cambiar la zona de interfaz de red, las zonas cambiantes son útiles cuando tenemos más de una interfaz en nuestra máquina.
Para cambiar la zona de la interfaz de red, puede usar el comando firewall -cmd, proporcionar el nombre de la zona a la opción -zona y el nombre de la interfaz de red a la opción - -interfaz -cambio:
$ sudo firewall-cmd --zone = work --change-interfaz = eth1
Para verificar que la zona se cambie o no, ejecute el comando Firewall-CMD con la opción de zonas de activación-activa:
$ sudo firewall-cmd --get-active-zones
Puede ver que la zona de la interfaz se cambia con éxito como deseamos.
Cambiar la zona predeterminada
En caso de que desee cambiar la zona predeterminada, puede usar la opción -set-default-zone y proporcionarle el nombre de la zona que desea establecer con el comando firewall-cmd:
Por ejemplo, para cambiar la zona predeterminada a casa en lugar de la zona pública:
$ sudo firewall-cmd --set-default-zone = home
Para verificar, ejecute el comando que se proporciona a continuación para obtener el nombre de la zona predeterminado:
$ sudo firewall-cmd --get-default-zone
Muy bien, después de jugar con zonas e interfaces de red, aprendamos cómo establecer reglas para aplicaciones en el firewall en el sistema operativo CentOS 8.
Establecer reglas para aplicaciones
Podemos configurar el firewall y establecer reglas para aplicaciones, así que aprendamos a agregar un servicio a cualquier zona.
Agregue un servicio a una zona
A menudo necesitamos agregar algunos servicios a la zona en la que actualmente estamos trabajando.
Podemos obtener todos los servicios utilizando la opción -get-Services en el comando firewall-cmd:
$ Firewall-CMD-Servicios
Para obtener más detalles sobre cualquier servicio, podemos ver el .Archivo XML de ese servicio específico. El archivo de servicio se coloca en el directorio/usr/lib/firewalld/de servicios.
Por ejemplo, si echamos un vistazo al servicio HTTP, se verá así:
$ CAT/USR/lib/firewalld/Services/http.xml
Para habilitar o agregar el servicio a cualquier zona, podemos usar la opción -Add -Service y proporcionarle el nombre del servicio.
Si no proporcionamos la opción -zone, el servicio se incluirá en la zona predeterminada.
Por ejemplo, si queremos agregar un servicio HTTP a la zona predeterminada, el comando irá así:
$ sudo firewall-cmd --add-service = http
Al contrario de esto, si desea agregar un servicio a una zona específica, mencione el nombre de la zona a la opción de zona:
$ sudo firewall-cmd --zone = public --add-service = http
Para verificar la adición de servicio a la zona pública, puede usar la opción -list-servicios en el comando firewall-cmd:
$ sudo firewall-cmd --zone = public --list-Services
En la salida anterior, puede presenciar que se muestran los servicios agregados en la zona pública.
Sin embargo, el servicio HTTP que acabamos de agregar en la zona pública está en las configuraciones de tiempo de ejecución del firewall. Entonces, si desea agregar el servicio a la configuración permanente, puede hacerlo proporcionando un indicador de permanente adicional al agregar el servicio:
$ sudo firewall-cmd --zone = public --add-service = http --Permanent
Pero, si desea agregar todas las configuraciones de tiempo de ejecución en las configuraciones permanentes del firewall, ejecute el comando firewall-cmd con la opción-runtime a permanente:
$ sudo firewall-cmd--runtime a permanente
Todas las configuraciones de tiempo de ejecución deseadas o no deseadas se agregarán a las configuraciones permanentes ejecutando el comando anterior. Por lo tanto, es mejor usar el indicador de Permanente si desea agregar una configuración a las configuraciones permanentes.
Ahora, para verificar los cambios, enumere los servicios agregados a las configuraciones permanentes utilizando la opción -Permanent y -list -Services en el comando firewall -cmd:
$ sudo firewall-cmd --zone = public --list-Services --Permanent
Cómo abrir direcciones IP y puertos en el firewall
Usando el firewall, podemos permitir que todas o algunas direcciones IP específicas pasen y abran algunos puertos específicos según nuestro requisito.
Permitir una fuente de IP
Para permitir el flujo de tráfico desde una dirección IP específica, puede permitir y agregar la dirección IP de la fuente mencionando primero la zona y utilizando la opción -Add -fuente:
$ sudo firewall-cmd --zone = public --add-Source = 192.168.1.10
Si desea agregar la dirección IP de origen a la configuración de firewall de forma permanente, ejecute el comando firewall-cmd con opción de runtime a permanente:
$ sudo firewall-cmd--runtime a permanente
Para verificar, también puede enumerar las fuentes utilizando el comando que se proporciona a continuación:
$ sudo firewall-cmd --zone = public --list-fuente
En el comando anterior, asegúrese de mencionar la zona cuyas fuentes desea enumerar.
Si por algún motivo, desea eliminar una dirección IP de origen, el comando para eliminar la dirección IP de origen sería así:
$ sudo firewall-cmd --zone = public--Remove-Source = 192.168.1.10
Abrir un puerto de origen
Para abrir un puerto, primero tenemos que mencionar la zona, y luego podemos usar la opción -Add -Port para abrir el puerto:
$ sudo firewall-cmd --zone = public --add-port = 8080/tcp
En el comando anterior, /TCP es el protocolo; Puede proporcionar el protocolo de acuerdo con su necesidad, como UDP, SCTP, etc.
Para verificar, también puede enumerar los puertos utilizando el comando que se proporciona a continuación:
$ sudo firewall-cmd --zone = public --list-puertos
En el comando anterior, asegúrese de mencionar la zona cuyos puertos desea enumerar.
Para mantener el puerto abierto y agregar estas configuraciones a la configuración permanente, usa el indicador -Permanente al final del comando anterior o ejecuta el comando que se proporciona a continuación para agregar toda la configuración de tiempo de ejecución a la configuración permanente del firewall:
$ sudo firewall-cmd--runtime a permanente
Si por algún motivo, desea eliminar un puerto, el comando para eliminar el puerto iría así:
$ sudo firewall-cmd --zone = public--Remove-Port = 8080/TCP
Conclusión
En esta publicación detallada y profunda, ha aprendido qué es un firewall, los conceptos básicos de un firewall, qué son las zonas y cortafuegos Configuración de reglas. Has aprendido a instalar y habilitar el cortafuegos Servicio en el sistema operativo CentOS 8.
En la configuración del firewall, ha aprendido sobre las reglas predeterminadas de firewall, cómo enumerar las zonas predeterminadas, las zonas activas y todas las zonas de Firewall-CMD. Además, esta publicación contiene una breve explicación sobre cómo cambiar la zona de la interfaz de red, cómo establecer reglas para aplicaciones como agregar un servicio a una zona, abrir direcciones IP y puertos en el firewall.
Después de leer esta publicación, administrará el flujo de tráfico a su servidor y alterará los conjuntos de reglas de la zona porque esta publicación tiene una descripción detallada de cómo administrar, configurar y administrar el firewall en el sistema operativo CentOS 8.
Si desea cavar más y aprender más sobre el firewall, no dude en visitar la documentación oficial de Cortafuegos.