Debian 8: IPTables vuelve al estado en cada paquete

Debian 8: IPTables vuelve al estado en cada paquete

Problema: iptablesno puede ser cambiado. En mi computadora puedo ejecutar iptables -F. iptables -Lmuestra que está sonrojado.

Cuando algún paquete entra o sale de la máquina, ¡todas las reglas vuelven! El mismo comportamiento ocurre si hago un iptables-restore < new_settings. Están allí por un segundo, pero una vez que llega un paquete, iptablesse revierte.

Estoy usandodebian 8el sistema operativo fue una actualización dedebian 7. Originalmente es la computadora de otra persona.

Lo que he comprobado, pensando que sería una de estas cosas:

  • iptables-persistentno está presente
  • /etc/iptables/no existe
  • Cuando miro systemctllos procesos ni siquiera hay nada ipen su nombre.

/# systemctl --all | grep ip run-rpc_pipefs.mount loaded active mounted /run/rpc_pipefs systemd-initctl.socket loaded active listening /dev/initctl Compatibility Named Pipe

  • No hay ningún # firewallden el sistema.

¿Dónde podemos encontrar servicios o algo que esté cambiando las configuraciones del sistema?

Respuesta1

Quizás podrías usar audit. Fedora lo habilita de forma predeterminada e inunda el diario con líneas NETFILTER_CFG.

Vea esta pregunta:

Auditoría de cambios en la configuración de iptables en ejecución

En el ejemplo que se muestra, el proceso relevante es iptables, lo que puede no resultar muy útil. Sin embargo, también registra ppidel proceso principal (así como lo obvio pid).

En caso de que el proceso padretambiénsale inmediatamente...

Puede utilizar fácilmente la contabilidad de procesos ( acctpaquete) para rastrear los nombres de cada proceso saliente ( lastcommcomando). Sin embargo, esa es menos información de la que podría pensar. Estoy pensando en "bash" aquí.

Podría ser mejor ejecutar fatracepara rastrear los archivos abiertos, lo que incluye la ejecución del programa. Simplemente no intente canalizarlo, por ejemplo, a través de grep; no podrá generar ningún resultado, no sé por qué.

También hay unpágina enexecsnoop. Si puede utilizar ese programa, o cualquiera de las alternativas que sugiere, sería la más fácil de interpretar.

Técnicamente no lo he permitido fork(). Pero no se me ocurre una buena razón por la que fork()no lo harías exec()para crear reglas de netfilter.

Respuesta2

TL;DRCuando tenga problemas extraños con los archivos de configuración que cambian todo el tiempo, verifique sus /etc/network/if-*.darchivos, si ya ha verificado systemdlas configuraciones.

Resulta que otra opción donde algo puede cambiar el iptablescomando (o realmente cualquier cosa) es en las carpetas if-up.do if-down.dque se ocupan de realizar cambios según la conectividad a Internet.

Había /etc/network/una carpeta para ambos if-pre-up.d, if-up.detc.

Cada uno contiene un conjunto de scripts que se ejecutarán cuando if-*se cumpla la condición. Entonces, cada vez que cambiaban las conexiones a Internet (lo que parecía ser un cambio en el archivo iptables), se ejecutaba un script que /sbin/iptables-restore < /etc/network/iptablesrestablecía los iptables con el archivo iptablesen formato /etc/network/.

información relacionada