Cómo comprobar si una regla de firewall está configurada en Linux

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, aprenderás cómo verificar el estado del firewall y listar las reglas activas del firewall en un sistema Linux. Comenzarás utilizando el comando ufw (Uncomplicated Firewall), fácil de usar, para verificar el estado general del firewall.

A continuación, profundizarás en la herramienta subyacente iptables para ver las reglas detalladas de filtrado de paquetes actualmente en vigor. Finalmente, explorarás nftables, un reemplazo moderno de iptables, para verificar el conjunto de reglas. Este laboratorio te proporcionará habilidades prácticas para entender e inspeccionar las configuraciones del firewall en Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux/BasicSystemCommandsGroup -.-> linux/help("Command Assistance") linux/BasicSystemCommandsGroup -.-> linux/man("Manual Access") linux/UserandGroupManagementGroup -.-> linux/sudo("Privilege Granting") linux/RemoteAccessandNetworkingGroup -.-> linux/ifconfig("Network Configuring") linux/RemoteAccessandNetworkingGroup -.-> linux/netstat("Network Monitoring") linux/RemoteAccessandNetworkingGroup -.-> linux/ip("IP Managing") subgraph Lab Skills linux/help -.-> lab-558716{{"Cómo comprobar si una regla de firewall está configurada en Linux"}} linux/man -.-> lab-558716{{"Cómo comprobar si una regla de firewall está configurada en Linux"}} linux/sudo -.-> lab-558716{{"Cómo comprobar si una regla de firewall está configurada en Linux"}} linux/ifconfig -.-> lab-558716{{"Cómo comprobar si una regla de firewall está configurada en Linux"}} linux/netstat -.-> lab-558716{{"Cómo comprobar si una regla de firewall está configurada en Linux"}} linux/ip -.-> lab-558716{{"Cómo comprobar si una regla de firewall está configurada en Linux"}} end

Mostrar el estado del firewall con ufw status

En este paso, aprenderás cómo verificar el estado del firewall en tu sistema Linux utilizando el comando ufw. ufw significa "Uncomplicated Firewall" (Firewall sencillo) y es una interfaz fácil de usar para gestionar iptables.

Los firewalls son esenciales para la seguridad de la red. Controlan el tráfico de red entrante y saliente basándose en un conjunto de reglas. Por defecto, el entorno de LabEx puede tener ufw instalado pero inactivo.

Para verificar el estado del firewall ufw, abre tu terminal y escribe el siguiente comando:

sudo ufw status

Presiona Enter.

Lo más probable es que veas una salida similar a esta:

Status: inactive

Esta salida indica que el firewall ufw actualmente no está activo en el sistema. Si estuviera activo, verías una lista de las reglas que se están aplicando actualmente.

El comando sudo se utiliza aquí porque verificar el estado del firewall requiere privilegios de administrador. Como se mencionó antes, el usuario labex tiene acceso sudo sin necesidad de contraseña en este entorno.

Comprender el estado del firewall es el primer paso para gestionar la seguridad de la red. En pasos posteriores, explorarás otras herramientas como iptables y nftables para obtener una comprensión más profunda de cómo funcionan los firewalls en Linux.

Haz clic en Continuar para pasar al siguiente paso.

Listar las reglas activas de iptables con iptables -L

En este paso, aprenderás cómo ver las reglas activas del firewall utilizando el comando iptables. Si bien ufw proporciona una interfaz simplificada, iptables es la herramienta subyacente que gestiona las reglas de filtrado de paquetes del kernel de Linux.

iptables funciona definiendo reglas en diferentes "cadenas" (chains) y "tablas" (tables). Las cadenas más comunes son INPUT (para el tráfico entrante), OUTPUT (para el tráfico saliente) y FORWARD (para el tráfico que pasa a través del sistema).

Para listar las reglas actuales de iptables en todas las cadenas, abre tu terminal y escribe el siguiente comando:

sudo iptables -L

Presiona Enter.

Verás una salida similar a esta, que muestra las reglas para las cadenas INPUT, FORWARD y OUTPUT:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

La salida muestra la política predeterminada para cada cadena (en este caso, ACCEPT, lo que significa que el tráfico se permite por defecto) y cualquier regla específica que se haya agregado. Dado que ufw estaba inactivo en el paso anterior, es probable que iptables no tenga reglas personalizadas configuradas por ufw.

La opción -L le dice a iptables que liste las reglas. Nuevamente, se requiere sudo porque ver las reglas del firewall necesita privilegios de administrador.

Comprender la salida de iptables -L es crucial para diagnosticar problemas de conectividad de red y verificar las configuraciones del firewall.

Haz clic en Continuar para pasar al siguiente paso.

Verificar las reglas utilizando nft list ruleset

En este paso, explorarás nftables, el sucesor de iptables. nftables ofrece un marco más flexible y unificado para el filtrado de paquetes y la traducción de direcciones de red (NAT, por sus siglas en inglés). Si bien iptables todavía se utiliza ampliamente, nftables se está convirtiendo en el estándar predeterminado en las distribuciones de Linux más recientes.

Puedes ver el conjunto de reglas activo de nftables utilizando el comando nft con la opción list ruleset.

Abre tu terminal y escribe el siguiente comando:

sudo nft list ruleset

Presiona Enter.

Verás una salida similar a esta, que muestra la configuración actual de nftables:

table ip filter {
	chain INPUT {
		type filter hook input priority 0; policy accept;
	}

	chain FORWARD {
		type filter hook forward priority 0; policy accept;
	}

	chain OUTPUT {
		type filter hook output priority 0; policy accept;
	}
}

Esta salida muestra la tabla de filtrado predeterminada con las cadenas INPUT, FORWARD y OUTPUT, similar a iptables. La directiva policy accept indica que el tráfico se permite por defecto en estas cadenas.

El comando nft es la herramienta principal para interactuar con nftables. La opción list ruleset muestra todo el conjunto de reglas activo. Nuevamente, se necesita sudo para ver la configuración del firewall.

Comparar la salida de iptables -L y nft list ruleset a veces puede revelar diferencias si ambas están configuradas o si una está gestionando reglas que la otra no controla directamente. En una configuración típica, un sistema (ya sea iptables o nftables) será el administrador principal del firewall.

Ahora has aprendido cómo verificar el estado de ufw, listar las reglas de iptables y ver el conjunto de reglas de nftables. Estas son habilidades fundamentales para comprender y gestionar los firewalls en Linux.

Haz clic en Continuar para completar este laboratorio.

Resumen

En este laboratorio, aprendiste cómo verificar el estado del firewall en un sistema Linux utilizando diferentes herramientas. Comenzaste utilizando sudo ufw status para determinar si el Uncomplicated Firewall (Firewall Simple) está activo, el cual proporciona una interfaz amigable para el usuario para gestionar las reglas del firewall.

A continuación, exploraste la herramienta subyacente iptables utilizando sudo iptables -L para listar las reglas activas de filtrado de paquetes en varias cadenas (chains) como INPUT, OUTPUT y FORWARD. Esto te dio una vista más detallada de la configuración del firewall. Finalmente, normalmente se verifican las reglas utilizando nft list ruleset para entender cómo el marco más reciente nftables gestiona las reglas del firewall, ofreciendo una alternativa moderna a iptables.