Recientemente hemos comenzado a experimentar con IPv6, y uno de los primeros problemas con los que tenemos que lidiar es tratar con un conjunto completamente separado de reglas de firewall (Linux iptables / ip6ables) para las dos pilas de protocolos. Nuestra lógica de firewall se basa principalmente en una serie de redes específicas para un propósito (por ejemplo, 10.0.0.0/24 es la red de la estación de trabajo del personal, 10.1.0.0/24 es la red de la base de datos, 10.2.0.0/24 es la red del servidor web, etc. ), y la lógica tanto para IPv6 como para IPv4 será en gran medida la misma, con prefijos de red de módulo diferente.
¿Qué hace la gente para manejar este tipo de situación? Idealmente, me gustaría poder generar los conjuntos de reglas iptables y ip6table a partir de los mismos archivos fuente. Ya he reunido algo usando bash, pero no es necesariamente bonito y sospecho que debe existir una mejor solución en algún lugar.
Me interesaría especialmente una solución basada en Puppet que haga un buen uso de los propios mecanismos de dependencia de Puppet para implementar el orden relativo de las reglas (o grupos de reglas).
before => Resource['declared_name']
en cualquier definición, por lo que puede ordenarlos usando una implementación que no intente ordenar cosas con fragmentos. Un buen uso de Augueas para la estructura también evitaría este problema: haga sus comentarios en el árbol superior y sus pedidos a continuación como desee.Respondiendo mi propia pregunta aquí, pero pensé que esta información podría ser de interés general:
Mientras miraba esta pregunta, me topé con ufw ( Firewall sin complicaciones) de la gente de Ubuntu. Con IPV6 habilitado en la configuración de ufw, ufw administrará las reglas de iptables y ip6tables en paralelo. Esto significa que puedes hacer algo como esto:
Y terminar con:
Lo que da como resultado reglas de iptables / ip6tables que se ven así:
Ufw también admite perfiles de aplicaciones, que le permiten crear grupos de puertos con nombre. Puedes hacerlo:
Y termine abriendo los puertos 80 y 443 (tanto para IPv4 como para IPv6).
Acabo de empezar a mirarlo, pero parece estar bastante bien organizado.
fuente
Dado que todavía falta en la lista: Shorewall es una herramienta de configuración de filtro de paquetes con muchas funciones, ampliamente adoptada y actualizada regularmente. Tenía soporte IPv6 por un tiempo ahora.
fuente