Búsqueda de sitios web

Cómo iniciar/detener y habilitar/deshabilitar FirewallD e Iptables Firewall en Linux


Firewall es un software que actúa como un escudo entre el sistema del usuario y la red externa permitiendo que algunos paquetes pasen mientras descarta otros. El firewall normalmente opera en la capa de red, es decir, en paquetes IP tanto Ipv4 como Ipv6.

El hecho de que un paquete pase o sea bloqueado depende de las reglas contra este tipo de paquetes en el firewall. Estas reglas pueden ser integradas o definidas por el usuario. Cada paquete que ingresa a la red debe pasar a través de este escudo que lo verifica con las reglas definidas en él para este tipo de paquetes.

Cada regla tiene una acción objetivo que se aplicará en caso de que el paquete no la cumpla. En los sistemas Linux, el firewall como servicio lo proporcionan muchos software, siendo los más comunes: firewalld e iptables.

En Linux se utilizan muchos tipos diferentes de firewalls, pero los más estándar son Iptables y Firewalld, que se analizarán en este artículo.

¿Qué es el Firewall?

FirewallD es el administrador de firewall dinámico de los sistemas Linux. Este servicio se utiliza para configurar las conexiones de red, decidiendo así qué red externa o paquetes internos permitir atravesar la red y cuáles bloquear.

Permite dos tipos de configuraciones, permanente y en tiempo de ejecución. Las configuraciones de tiempo de ejecución se perderán cuando se reinicie el servicio, mientras que las permanentes se conservarán durante el inicio del sistema para que se sigan cada vez que el servicio se active.

En correspondencia con estas configuraciones, firewallD tiene dos directorios, uno predeterminado/alterno (/usr/lib/firewall) que se pierde, el sistema se actualiza y la configuración del sistema (/etc/firewall) que permanece permanente y anula el predeterminado si se proporciona. Este se encuentra como un servicio predeterminado en RHEL/CentOS 7 y Fedora 18.

¿Qué es Iptables?

Iptables es otro servicio que decide permitir, descartar o devolver paquetes IP. El servicio Iptables administra paquetes Ipv4 mientras que Ip6tables administra paquetes Ipv6. Este servicio administra una lista de tablas donde cada tabla se mantiene para diferentes propósitos, como: la tabla 'filter' es para reglas de firewall, la tabla 'nat' se consulta en caso de nuevas conexión, 'mangle' en caso de alteraciones del paquete, etc.

Además, cada tabla tiene cadenas que pueden estar integradas o definidas por el usuario, donde una cadena significa un conjunto de reglas que se aplican a un paquete, decidiendo así cuál debe ser la acción objetivo para ese paquete, es decir, debe ser PERMITIDO<, BLOQUEADO o DEVUELTO. Este servicio es un servicio predeterminado en sistemas como: RHEL/CentOS 6/5 y Fedora, ArchLinux, Ubuntu, etc.

Para obtener más información sobre los firewalls, siga los siguientes enlaces:

  1. Comprensión de los conceptos básicos y consejos del firewall de IPtables
  2. Configurar el firewall de Iptables en Linux
  3. Configurar FirewallD en Linux
  4. Reglas útiles de FirewallD para administrar el firewall en Linux
  5. Cómo controlar el tráfico de red usando FirewallD e Iptables

En este artículo explicaremos cómo iniciar, detener o reiniciar los servicios Iptables y FirewallD en Linux.

Cómo iniciar/detener y habilitar/deshabilitar el servicio FirewallD

Si está utilizando las versiones CentOS/RHEL 7 o Fedora 18+, debe seguir las instrucciones a continuación para administrar el servicio FirewallD.

Iniciar el servicio FirewallD

systemctl start firewalld 
Detener el servicio FirewallD
systemctl stop firewalld
Verifique el estado del FirewallD
systemctl status firewalld
Verifique el estado del firewallD
firewall-cmd --state

Como alternativa, puede desactivar el servicio firewalld para que no aplique reglas a los paquetes y habilitar nuevamente los necesarios.

Deshabilitar el servicio FirewallD
systemctl disable firewalld
Habilitar el servicio FirewallD
systemctl enable firewalld
Servicio de máscara FirewallD
systemctl mask firewalld

Además, puede enmascarar el servicio de firewall que crea un enlace simbólico de firewall.service a /dev/null, deshabilitando así el servicio.

Desenmascarar servicio FirewallD
systemctl unmask firewalld

Esto es lo contrario de enmascarar el servicio. Esto elimina el enlace simbólico del servicio creado durante el enmascaramiento, volviendo a habilitar el servicio.

Cómo iniciar/detener y habilitar/deshabilitar el servicio IPtables

En RHEL/CentOS 6/5/4 y Fedora 12-18 el firewall iptables viene como versión anterior y posterior, el servicio iptables se puede instalar mediante:

yum install iptables-services

Luego, el servicio se puede iniciar, detener o reiniciar mediante los siguientes comandos:

Iniciar servicio Iptables
systemctl start iptables
OR
service iptables start
Detener el servicio Iptables
systemctl stop iptables
OR
service iptables stop
Deshabilitar el servicio Iptables

systemctl disable iptables
Or
service iptables save
service iptables stop
Habilitar el servicio Iptables

systemctl enable iptables
Or
service iptables start
Verificar el estado del servicio Iptables
systemctl status iptables
OR
service iptables status

Sin embargo, en Ubuntu y algunas otras distribuciones de Linux, ufw es el comando que se utiliza para administrar el servicio de firewall de iptables. Ufw proporciona una interfaz sencilla para que el usuario maneje el servicio de firewall de iptables.

Habilitar el firewall Ufw Iptables
sudo ufw enable
Deshabilitar el firewall Ufw Iptables
sudo ufw disable
Verificar el estado del firewall Ufw Iptables
sudo ufw status 

Sin embargo, si desea enumerar cadenas en iptables que contienen todas las reglas, el siguiente comando puede ayudarlo a lograr lo mismo:

iptables -L -n -v

Conclusión

Estas son las técnicas que pueden ayudarle a iniciar, detener, deshabilitar y habilitar los servicios de administración de paquetes en sistemas basados en Linux. Diferentes distribuciones de Linux pueden tener diferentes servicios predeterminados, como: Ubuntu puede tener iptables como servicio predeterminado y preinstalado, mientras que CentOS puede tener firewalld como servicio configurado predeterminado para administrar los paquetes IP entrantes y salientes.

En este artículo se presentan los trucos más comunes para administrar estos servicios en casi todas las distribuciones de Linux; sin embargo, si encuentra algo y desea agregar algo a este artículo, sus comentarios siempre serán bienvenidos.