Quiero que mis reglas de iptables se carguen automáticamente al inicio. De acuerdo con la wiki en Debian, esto se puede hacer colocando un script con el nombre iptables en /etc/network/if-pre-up.d/ Así lo hice, así es como se ve:
cat /etc/network/if-pre-up.d/iptables
#!/bin/sh
/sbin/iptables-restore < /etc/firewall/iptables.rules
/sbin/ip6tables-restore < /etc/firewall/ip6tables.rules
Este script funciona: si lo ejecuto como root, se aplican las reglas de mi firewall. Pero al reiniciar no hay reglas de firewall. ¿Qué estoy haciendo mal?
A petición: el / etc / network / interfaces (no toqué este archivo)
user@DebianVPS:~$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp
networking
debian
iptables
Cheiron
fuente
fuente
/etc/network/if-pre-up.d/
ya no funciona en Ubuntu 18.04, consulte serverfault.com/questions/914493/…Respuestas:
Use el
iptables-persistent
paquete para esta tarea.Defina sus reglas
/etc/iptables/rules.4
y/etc/iptables/rules.6
no olvide activar el servicio (usandoupdate-rc.d
,chkconfig
o su herramienta favorita).fuente
dpkg-reconfigure iptables-persistent
.Este problema puede estar relacionado con los bits de permiso de su script. ¿Cuál es el resultado de este comando? ¿Incluye tu archivo?
fuente
(date; set; echo) >> /tmp/iptables-cmd.log
, para ver cuándo se llama. Siempre imprimo el entorno para comprobar si hay algún argumento pasado allí. Puede decidir ejecutar sus iptables solo después de que la última interfaz eth * esté activa, en lugar de ejecutarla cada vez que se agrega una interfaz.interfaces
, veo que no estás usando ifupdown, sino administrador de red. Es por eso que no se llama a su script. Consulte este documento: ubuntuforums.org/showthread.php?t=1084308¿Por qué no hacerlo de la manera fácil?
1 - crea tus reglas de iptables
2 - ejecute "sudo apt-get install iptables-persistent", le preguntará si desea guardar las reglas y restaurarlas después del arranque.
3- Estás HECHO
fuente