iptables, el firewall estándar de Linux, no guarda las reglas entre reinicios. Tienes que ocuparte de esto tú mismo. Hay muchas maneras de hacer esto. ¿Cuál es la forma canónica de hacer esto? ¿Cuáles son las mejores prácticas?
Contestaré con mi propia solución, pero estoy interesado en otras / mejores soluciones.
Respuestas:
Aquí hay algunos ejemplos de reglas. Guárdelos en /etc/iptables.rules
agregue esta línea al final de / etc / network / interfaces
fuente
Usamos muchas reglas de iptables , por lo que para facilitar la administración hacemos lo siguiente:
No sé si esta es la mejor manera de hacerlo, pero nos ha funcionado bien.
fuente
Si bien es cierto que esto depende del entorno y la plataforma, he visto dos buenos enfoques, dependiendo de la plataforma:
RHEL / CentOS: almacene todas las reglas en un solo archivo / etc / sysconfig / iptables que se lee en el script de inicio de iptables.
Debian / Ubuntu: almacene todas las reglas en archivos separados específicos del servicio en el directorio /etc/iptables.d/. Por ejemplo, /etc/iptables.d/port_http, /etc/iptables.d/port_dns, donde port_service se asigna a un nombre de servicio en / etc / services.
En cualquier caso, el archivo o los archivos son administrados por una herramienta de configuración como Chef o Puppet, y son leídos por el script de inicio 'maestro' para iptables que se ejecuta en el momento del arranque.
fuente
Además de
iptables-save
(yiptables-restore
), los esquemas de firewall complicados se manejan mejor con programas dedicados. Por ejemplo, hemos utilizadoshorewall
("iptables hecho fácil") para configurar iptables.Herramientas más simples también están disponibles, como Firestarter y KMyFirewall .
fuente
Esto depende de la distribución que use. Algunas distribuciones, especialmente aquellas basadas en una distribución de Red Hat, mantienen las reglas de iptables automáticamente pero en su propio directorio especial. Estoy más familiarizado con RHEL y las reglas de iptables se pueden encontrar en / etc / sysconfig / iptables. Familiarizarse con la sintaxis de las reglas de iptables puede ser complicado al principio, pero es bastante fácil una vez que se acostumbra.
El sitio web netfilter tiene mucha documentación sobre iptables, incluidas algunas introducciones. Si está dispuesto a leer un poco, puede encontrar mucha buena información aquí: http://www.netfilter.org/documentation/
fuente
Esta pregunta está muy cerca de ser un dup de 4934 y está relacionada con 397 .
Utilizo firehol combinado con una interfaz web que desarrollé para administrar el archivo de configuración.
Realmente me gusta Firehol, proporciona una sintaxis más simple que usar iptables directamente.
fuente
Usamos un guión de inicio personalizado, por supuesto. Puedo usar for-loops para iterar sobre una lista de puertos, analizar otros archivos de configuración como vpn-users, etc. ¡Excelente!
Y iptables-restore es seguramente la forma más "canónica" de guardarlo.
Lo que quiero agregar:
Tenga en cuenta que la versión actual de iptables para cada invocación le pedirá al núcleo que le devuelva la lista completa de cadenas. Luego hará el cambio que le pidas que haga. Luego cargará la lista nuevamente.
Esto es lento (O (n ^ 2)), para nosotros necesita 5 segundos, que es demasiado largo ;-)
Si usa iptables-restore, todo se realiza en una operación rápida.
fuente