Aprende a desactivar el firewall iptables en Linux temporalmente para solucionar problemas. Además, aprenda cómo guardar las políticas y cómo restaurarlas cuando vuelva a habilitar el firewall.
A veces tiene la necesidad de desactivar el firewall iptables para hacer alguna solución de problemas de conectividad y luego necesita volver a activarlo. Mientras lo hace también quiere guardar todas sus políticas de firewall también. En este artículo, le mostraremos cómo guardar las políticas del cortafuegos y cómo desactivar/activar un cortafuegos iptables. Para más detalles sobre el firewall iptables y las políticas lea nuestro artículo al respecto.
Guardar políticas iptables
El primer paso mientras se desactiva el firewall iptables temporalmente es guardar las reglas/políticas de firewall existentes. iptables-save
comando enumera todas sus políticas existentes que puede guardar en un archivo en su servidor.
root@kerneltalks # iptables-save# Generated by iptables-save v1.4.21 on Tue Jun 19 09:54:36 2018*nat:PREROUTING ACCEPT :INPUT ACCEPT :OUTPUT ACCEPT :POSTROUTING ACCEPT :DOCKER - ---- output trucated----root@kerneltalks # iptables-save > /root/firewall_rules.backup
Así que iptables-save es el comando con el que puede tomar la copia de seguridad de la política iptables.
Detener/desactivar el firewall iptables
Para los kernels de Linux más antiguos tienes la opción de detener el servicio iptables con service iptables stop
pero si estás en el nuevo kernel, sólo tienes que borrar todas las políticas y permitir todo el tráfico a través del firewall. Esto es tan bueno como detener el firewall.
Use la siguiente lista de comandos para hacer eso.
root@kerneltalks # iptables -Froot@kerneltalks # iptables -Xroot@kerneltalks # iptables -P INPUT ACCEPTroot@kerneltalks # iptables -P OUTPUT ACCEPTroot@kerneltalks # iptables -P FORWARD ACCEPT
Donde –
- -F: Borrar todas las cadenas de políticas
- -X: Borrar las cadenas definidas por el usuario
- -P INPUT/OUTPUT/FORWARD: Aceptar el tráfico especificado
Una vez hecho esto, compruebe las políticas actuales del cortafuegos. Debería verse como lo siguiente, lo que significa que todo es aceptado (tan bueno como que su firewall está deshabilitado/parado)
# iptables -LChain INPUT (policy ACCEPT)target prot opt source destinationChain FORWARD (policy ACCEPT)target prot opt source destinationChain OUTPUT (policy ACCEPT)target prot opt source destination
Restaurar las políticas del firewall
Una vez que haya terminado con la resolución de problemas y quiera volver a activar iptables con todas sus configuraciones. Necesita primero restaurar las políticas desde la copia de seguridad que tomamos en el primer paso.
root@kerneltalks # iptables-restore </root/firewall_rules.backup
Iniciar el firewall iptables
Y luego iniciar el servicio iptables en caso de que lo haya detenido en el paso anterior usando service iptables start
. Si no ha parado el servicio entonces sólo le servirá restaurar las políticas. Compruebe si todas las políticas están de vuelta en las configuraciones del firewall iptables :
root@kerneltalks # iptables -LChain INPUT (policy ACCEPT)target prot opt source destinationChain FORWARD (policy DROP)target prot opt source destinationDOCKER-USER all -- anywhere anywhereDOCKER-ISOLATION-STAGE-1 all -- anywhere anywhere-----output truncated-----
¡Eso es todo! Ha desactivado y activado con éxito el cortafuegos sin perder las reglas de las políticas.
Desactivar el firewall iptables permanentemente
Para desactivar iptables permanentemente siga el siguiente proceso –
- Detener el servicio iptables
- Desactivar el servicio iptables
- Borrar todas las reglas
- Guardar la configuración
Esto se puede lograr utilizando el siguiente conjunto de comandos.
root@kerneltalks # systemctl stop iptablesroot@kerneltalks # systemctl disable iptablesroot@kerneltalks # systemctl status iptablesroot@kerneltalks # iptables --flushroot@kerneltalks # service iptables saveroot@kerneltalks # cat /etc/sysconfig/iptables