Cómo configurar Firewald en Linux

Esta lección paso a paso explica cómo configurar el servicio de firewall en Linux utilizando el comando Firewall-CMD. Aprenda cómo administrar (crear, enumerar, agregar, eliminar y eliminar) con zonas, servicios y puertos en detalles y en ejemplos prácticos, incluida la adición y eliminación de la interfaz y las direcciones IP en la zona de filtrado de datos.

En este liderazgo, supongo que

  • Está familiarizado con los conceptos básicos del servicio de firewalld, como zonas, servicios, puertos y un idioma rico.
  • El servicio iptable está deshabilitado y disfrazado
  • El servicio Firewalld está incluido y lanzado. Puede verificar el estado del servicio Firewalld utilizando los siguientes comandos
#Firewall-cmd--state #systemctl status firewalld

Estado del servicio Firewald

Este liderazgo es la segunda parte de nuestro artículo «Cómo configurar el firewall en Linux paso a paso». Puede leer otras partes de este liderazgo aquí.

Esta es la primera parte del artículo. Esta parte explica los conceptos básicos del servicio de firewalld, como zonas, servicios, puertos y un lenguaje rico, que incluye cómo deshabilitar el servicio iptable en detalle con ejemplos.

Esta es la última parte del artículo. Esta parte en detalle y con ejemplos indican las ricas reglas de Firewalld, incluida la forma en que se utilizan reglas ricas para configurar el firewall en Linux.

Dirección de firewall usando el comando firewall-cmd

Tenemos tres opciones para administrar el servicio Firewalld:

  1. Edición directa en archivos de configuración
  2. Uso de la herramienta de gráficos de firewall-config
  3. Uso de la herramienta de cadena de comando firewall-cmd

Si no tenemos un nivel de conocimiento experto, no se recomienda la primera opción. Los administradores rara vez usan esta opción para controlar.

La segunda opción estará disponible solo si se instala el entorno gráfico (X-Window). Esta opción es fácil de usar, y si está disponible, siempre debe usarla. La desventaja es que depende del entorno gráfico, que es muy raro en los servidores de Linux en el entorno de producción. Por razones de seguridad, los administradores rara vez incluyen un entorno gráfico.

La tercera opción estará disponible en todas las plataformas, a menos que Rhel esté instalado con una instalación mínima. En la práctica, podemos cumplir con todas las tareas de control utilizando esta opción. En esta lección, también usaremos esta opción.

Configuración actual y configuración inicial

El servicio Firewalld utiliza dos tipos de configuraciones: trabajo e inicial. La configuración inicial se almacena en los archivos de configuración. La configuración actual se almacena en la memoria. Cuando se inicia el servicio Firewalld, lee la configuración inicial de los archivos de configuración y lo carga hasta la memoria, donde se llama configuración de trabajo. Si no realiza ningún cambio en la configuración de trabajo, será lo mismo que el inicial.

Cualquier cambio realizado en una configuración de trabajo no estará disponible la próxima vez que se reinicie el servicio. Cualquier cambio realizado en la configuración inicial no estará disponible en la configuración actual, estará disponible la próxima vez que se reinicie el servicio. Por defecto, el servicio Firewalk funciona con la configuración actual.

Vamos a resolverlo en esto con un ejemplo simple. El servicio Firewalld inicia y lee la configuración inicial que bloquea el servicio SSH para la red 192. 168. 1. 0/24. El servicio Firewalld carga esta configuración en la memoria como una configuración de trabajo. En este momento, ni un solo nodo de la red 192. 168. 1. 0/24 puede acceder al servicio SSH. Ahora suponga que queremos permitir el acceso a un host 192. 168. 1. 10 desde esta red. Dependiendo de los requisitos, podemos resolver el acceso temporal o constante.

Para resolver el acceso temporal, actualizaremos solo una configuración descuidada con permiso. Como no cambiamos la configuración de lanzamiento, este acceso temporal se eliminará automáticamente el siguiente reinicio.

Para resolver el acceso constante, actualizaremos solo la configuración inicial con permiso. Como no cambiamos la configuración de lanzamiento, el host no podrá acceder al servicio SSH hasta el próximo reinicio.

Para resolver el acceso temporal y constante, debemos actualizar ambas configuraciones. La configuración actual permitirá el acceso a la recarga del servicio. Una configuración descuidada permitirá el acceso después de recargar el servicio, etc.

Los siguientes comandos se utilizan para reiniciar la configuración y reiniciar el servicio

#Firewall-cmd #systemctl reiniciar firewalld

Reiniciar el servicio Firewalld

El primer equipo reiniciará las reglas constantes sin interrumpir las conexiones constantes existentes. El segundo equipo reiniciará el servicio.

Gestión de la zona utilizando el comando firewall-cmd

La zona es el primer elemento clave del servicio Firewalld. El equipo Firewall-CMD ofrece varias opciones para administrar la zona. La siguiente tabla enumera algunas opciones importantes

Opción Descripción
-Pango de zonas Visualización de todas las áreas disponibles
–get-default-zone La visualización de la zona, que actualmente está instalada como una zona predeterminada
-zona activa Visualización de todas las zonas activas
-Listar todo Visualización de toda la configuración, comenzando desde la zona predeterminada
-List-all-zonas Visualización de configuración de todas las zonas
–Set-default-zone = Establecer la zona especificada como una zona predeterminada
-Nada-zona Agregue una nueva zona [se debe indicar el nombre de la zona]
–delete-zona Eliminar la zona [se debe indicar el nombre de la zona]
-Zona Solía ​​trabajar con otras áreas.[El nombre de la zona debe estar indicado]
-Add-Source = [-zone =] La zona especificada [zona] filtrará todo el tráfico entrante desde la red especificada [CIDR].
-Remove-Source = [-zone =] Retire la zona especificada [zona] de la filtración de todo el tráfico entrante de la red especificada [CIDR].
-Add-interface = [-zone =] La zona especificada [zona] filtrará todo el tráfico entrante desde la interfaz especificada [NIC].
-Change- interfaz = [–zone =] La zona especificada [zona] filtrará todo el tráfico entrante desde la interfaz especificada (actualizada) [NIC].
–constante Guarde el cambio en la configuración inicial. Por defecto, los cambios se almacenan en una configuración de trabajo.

Veamos varios ejemplos prácticos de gestión de zonas utilizando el comando Firewall-CMD. Ingrese el sistema debajo de la cuenta raíz y obtenga acceso a la invitación de Shell.

Para ver las zonas disponibles actuales, puede usar la opción –get-zones. Para averiguar qué área está instalada de forma predeterminada, podemos usar la opción –get-default-zone.

Firewall-cmd-zona

Como muestra la conclusión, la zona actual de forma predeterminada se instala en público, que también es la zona predeterminada.

Para ver la configuración actual de todas las zonas, puede usar la zona opció n-list-todo. Para ver la configuración solo desde la zona predeterminada, puede usar la opció n-lis t-todo.

Firewall-cmd-listra

Para crear una nueva zona, puede usar la opció n-Ne w-Zone. Por ejemplo, el próximo equipo creará una nueva zona (llamada RhCels).

Firewall-CMD-NEW-ZONE RHCELAB-PERMANENT

Dado que utilizamos la opció n-Permanente, la nueva zona estará disponible solo después de reiniciar. Para verificar esto, vaya a la zona Rhcelab sin reiniciar el firewall. Obtendrá un error inválido_zone.

Recargar el firewall usando el siguiente comando

Firewal l-cm d-reelage

Ahora instale la nueva zona (RHCLAV) como la zona predeterminada por el siguiente comando

Firewall-cmd --set-default-zone rhccelab

Para verificar los cambios, podemos enumerar nuevamente las zonas de forma predeterminada, el siguiente comando

Firewall-cmd --get-default-zone

El siguiente dibujo paso a paso ilustra el proceso descrito anteriormente

Instale la zona predeterminada en el firewall

Agregamos la interfaz a esta zona. Para hacer esto, necesitamos el nombre de la interfaz. Podemos ver los nombres de todas las interfaces descubiertas utilizando el comando IP AdDR Show.

Como se puede ver a partir de la siguiente conclusión, el nombre de la interfaz es ENO16777736. Si el sistema tiene varias interfaces, se enumerarán en el futuro.

Comando Show de ADDR IP

Si solo hay una interfaz en el sistema (como se muestra arriba), Firewall la conectará automáticamente con la zona predeterminada. Podemos verificar esto usando la opció n-lis t-todo. Dado que (la única) interfaz ya está conectada con la zona predeterminada, cuando intentó hacer lo mismo repetidamente, recibiremos una advertencia. Al iniciar el firewall, asocia la interfaz predeterminada predeterminada. Si tenemos varias interfaces, solo la interfaz predeterminada se asociará con la zona predeterminada. Para conectar la interfaz con la zona, se utiliza el siguiente comando.

FireWal l-CMD --Ad d-Interface [InterfaceEname] –zone [ZoneEname] --Permanent

Como sabemos, la interfaz predeterminada se selecciona y se asocia con la zona predeterminada solo cuando se inicia para la configuración actual. Si tenemos una interfaz, entonces se seleccionará la misma interfaz como la interfaz predeterminada. Pero si tenemos varias interfaces, se puede seleccionar otra interfaz como la interfaz predeterminada. Por lo tanto, siempre es mejor arreglar la interfaz detrás de la zona y no confiar en el proceso de elección predeterminado.

Para atar la interfaz a la zona, debe usar la opció n-Permanent. Al usar la opción permanente, la interfaz se asociará constantemente con una zona específica. El siguiente comando conectará la interfaz ENO16777736 con la zona Rhcelab.

Firewall-cmd --ad d-interface ENO167777736-ZONE RHCELAB-PERMANENT

El siguiente dibujo paso a paso ilustra el proceso descrito anteriormente

Agregue la interfaz a la zona

Al igual que la interfaz, también podemos conectar la dirección de red con la zona. El próximo equipo agregará una red 192. 168. 1. 0/24 con la zona Rhcelab en la configuración actual.

Firewall-CMD-ADD-Source 192. 168. 1. 0/24-Zone Rhcalab

Agregue una fuente al firewall

Para agregar constante, use la opció n-Permanent.

(Recuerde que la opción Permanente requiere recargar la configuración).

Agregue una fuente pamenentamente al firewall

En esta etapa, creamos con éxito una nueva zona (con los nombres-rhhels) y la instalamos como una zona predeterminada. También agregamos nuestra interfaz predeterminada y una red de laboratorio a esta zona. Utilizaremos esta zona para desarrollar los temas restantes de este liderazgo.

Gestión de servicios utilizando el equipo Firewall-CMD

Los servicios son un elemento clave secundario en Firewald. El equipo Firewall-CMD admite varias opciones para administrar los servicios. La siguiente tabla enumera algunas opciones importantes.

Opción Descripción
-Services Visualización de todos los servicios disponibles
–Servicios de la lista Visualización de todos los servicios desde la zona predeterminada
–Lista-Servicios –zona [Zoneename Visualización de todos los servicios desde la zona especificada [ZoneneName]
–nuevo servicio [NewserviceEname]-Permanente Cree un nuevo servicio con el nombre especificado.
–Delete-Service [ServiceName]-Permanente Eliminar el servicio [existente] especificado
–Add-Service [ServiceName] Agrega el servicio a la zona predeterminada. Para agregar el servicio a una zona específica, indique su nombre como argumento con la opción Izone. Para agregar el servicio para siempre, use la opció n-Permanent.
-Servicio de Query [Servicio] Descubre si el servicio especificado se ha agregado a la zona o no. Si la zona no está indicada usando la opció n-zona, la zona predeterminada se usará para la solicitud.
–Remove-Service [Servicio] Eliminar el servicio de la zona predeterminada. Para eliminar el servicio de una determinada zona, indique su nombre como argumento con la opción Izone. Para eliminar el servicio para siempre, use la opció n-Permanent.

Analicemos estas opciones con más detalle sobre algunos ejemplos.

Para obtener una lista de todos los servicios predeterminados, podemos usar la opción-Get-Services. Para enumerar todos los servicios de una determinada zona, puede usar la opció n-list s-servicios. Si no indicamos el nombre de la zona en los servicios de opción de lista, entonces se enumerarán todos los servicios desde la zona predeterminada. La siguiente figura muestra ambas opciones.

Firewall-CMD Lista de servicios

En algunos casos, los servicios predeterminados no son suficientes. Por ejemplo, podemos tener aplicaciones de usuario que lanzan sus propios servicios. Para limitar estas aplicaciones, debemos agregar servicios relacionados a Firewalld. Para agregar un nuevo servicio, podemos usar la opció n-Ne w-Service. Por ejemplo, el próximo equipo agregará un nuevo servicio con el nombre TestService.

Firewall-cmd-nuevo servicio-permanente

Firewall-CMD-Servicio de add

Después de agregar un servicio, podemos conectarlo con cualquier área existente temporal o constantemente. Para agregar el servicio solo a una configuración de trabajo (temporal), podemos usar el siguiente comando

Firewall-CMD-ADD-Service [ServiceName] –zone [Zoneename]

Aquí ServiceEname es el nombre del servicio que queremos agregar, y ZoneName es el nombre de la zona en la que queremos agregar el servicio indicado.

Para agregar de forma continua, usamos el siguiente comando

Firewall-CMD-ADD-Service [ServiceName] –zone [Zoneename]-Permanente

Podemos omitir el nombre de la zona si agregamos el servicio a la zona de forma predeterminada. Por ejemplo, el próximo equipo agregará un servicio TestService a la zona predeterminada

Firewall-cmd: servicio de prueba de servicio

Dado que el equipo anterior agrega el servicio solo a la configuración de trabajo, no se conservará después de reiniciar. Para agregar el servicio de forma continua, debe usar la opció n-Permanent

Firewall-CMD-ADD-Servicio TestService-Permanente

Como sabemos, cualquier actualización realizada con el parámetr o-Permanente requiere la configuración de recarga

Firewal l-cm d-reelage

Después de reiniciar, el servicio se agregará a la zona predeterminada.

Para agregar el servicio a otra zona, debe especificar el nombre de la zona con la opción Izone. Por ejemplo, el próximo equipo agregará un servicio TestService al público.

Firewall-CMD-ADD-Servicio TestService-Zone Public

El siguiente dibujo paso a paso ilustra el proceso descrito anteriormente

Firewall CMD Agregar servicio a la zona

Para eliminar el servicio de la zona, podemos usar la opció n-Remov e-Service. Como en el caso de suma, podemos eliminar el servicio temporal o para siempre. Por ejemplo, el próximo equipo eliminará temporalmente TestService desde la zona predeterminada

Firewall-CMD-Remove-Service TestService

Para eliminar el servicio para siempre, debe agregar una opció n-Permanente al equipo anterior

Firewall-CMD-Remove-Service TestService-Permanente

El siguiente comando se utiliza para eliminar el servicio de Firewalld

Firewall-CMD--Servicio-Service [ServerName] -Permanent

Por ejemplo, para eliminar el servicio TestService, utilizamos el siguiente comando

Firewall-CMD--Delete-Service TestService-Permanente

El siguiente dibujo paso a paso ilustra el proceso descrito anteriormente

Firewall-cmd eliminar servicio

Gestión de puertos utilizando el comando firewall-cmd

Como vimos en la sección anterior, Firewall nos permite crear y administrar servicios de usuarios. Los servicios de usuarios necesitan puertos de usuario. Al igual que los servicios, también podemos agregar o eliminar puertos del firewall. El equipo Firewall-CMD incluye varias opciones de control de puertos. La siguiente tabla enumera algunas opciones importantes.

Opción Descripción
-Ports de lista La visualización de todos los puertos desde la zona predeterminada. Para ver puertos desde otra zona, indique su nombre como un argumento con la opción Izone.
–Add-Port [Portnumer/ProtocillType] Agrega el puerto especificado a la zona predeterminada. Para agregar el puerto a otra zona, indique su nombre como argumento con la opción Izone. Para agregar el puerto para siempre, use la opció n-permanent.
–Query-Port [Portnumer/ProtocillType] Descubre si el puerto especificado se agrega o no. Para una solicitud en una zona específica, use su nombre como argumento con la opción Izone.
-Remove-Port [Portnumer/ProtocillType] Elimina el puerto especificado de la zona predeterminada. Para eliminar el puerto de otra zona, indique su nombre como argumento con la opción Izone. Para eliminar el puerto para siempre, use la opció n-permanent.

Analicemos estas opciones con más detalle sobre los ejemplos:-.

Para enumerar todos los puertos disponibles desde la zona predeterminada, usamos el siguiente comando

Firewall-cmd --listsports

También podemos enumerar puertos desde una determinada zona utilizando la opción Izone. Por ejemplo, para enumerar todos los puertos disponibles desde la zona DMZ, usamos el siguiente comando

Firewall-cmd --list-ports --z one dmz

Para agregar el puerto a la zona predeterminada, se utiliza el siguiente comando

Firewall-CMD --Add-Port [PortNumber]/[Protocolo]

Aquí PortNumber es el número de puerto que queremos agregar, y el protocolo es el portol [TCP o UDP] del puerto.

Para agregar el puerto a otra zona, a excepción de la zona predeterminada, indique el nombre de la zona con la opción Izone, como se muestra en el siguiente comando

Firewall-CMD --Add-Port [PortNumber]/[Protocol] --zone [ZoneEname]

Aquí ZoneName es el nombre de la zona en la que queremos agregar el puerto.

Para averiguar si el puerto se agrega correctamente a la zona o no, podemos usar la opción-Query-Port. Por ejemplo, el próximo equipo solicitará en el puerto TCP de zona predeterminado 23

Firewall-CMD-Port 23/TCP

Para eliminar el puerto de la zona, use el siguiente comando

Firewall-CMD--Remove-Port [PortNumber]/[Protocolo] --zone [ZoneEname]

Al igual que otras operaciones, la operación de eliminación también funciona con la zona predeterminada si no indicamos el nombre de la zona utilizando la opción Izone.

El siguiente dibujo paso a paso ilustra las operaciones anteriores

Agregue Eliminar el puerto en el firewall

Para agregar o eliminar el puerto en otra zona, necesitamos especificar el nombre de la zona usando la opción Izone. Si es necesario, también podemos hacer que los cambios sean constantes utilizando la opció n-Permanent. La siguiente figura muestra una operación con otra zona y la opción permanente

Gestión de puertos en Firewalld

En este libro de texto, trabajamos con zonas, servicios y puertos. Estas opciones convenientes están limitadas por la naturaleza. Los administradores requieren más control sobre la configuración del firewall. Firewalld admite reglas ricas que permiten al administrador definir las reglas del usuario. En la siguiente parte de este liderazgo, analizaremos en detalle las ricas reglas con ejemplos.

Por ComputernetWorkingNotes actualizado el 2023-08-15 02:00:01 IST