consulta pfctl
Luis Sandoval
zerox en systat.cl
Mar Ene 22 23:36:54 CLST 2008
hola,
El mar, 22-01-2008 a las 17:42 -0300, Rodrigo Cuevas A. escribió:
> Hola jóvenes, una consulta sobre pf.
>
> Tenía la duda de como recargar el archivo de reglas de PF, y me encontré
> con que la "solución" es hacer lo siguiente:
>
> pfctl -Rf /etc/pf.conf
Depende. Sera solucion "solo" si quieres recargar reglas de filtrado
ignorando otro tipo de reglas y opciones que tengas en /etc/pf.conf
(como las reglas de nat por ejemplo)
Si quieres recargar todo el conjunto de reglas sin perder las tablas de
estados debes usar:
pfctl -f /etc/pf.conf
> sin embargo, esta ejecución me entrega el siguiente error:
>
> pfctl: Must enable table loading for optimizations
> Entonces la consulta es:
>
> esto produce algún error?, es muy terrible no tener optimización en las
> reglas?, alguien ha tenido problemas?
El error se produce ya que en tu archivo /etc/pf.conf incluyes tablas y pfctl te pide recargarlas. Como esto no lo haces, pfctl no carga el resto de reglas y esto si puede ser un problema :(
> Para eliminar el error, en algunos foros recomiendan el uso de otro switch:
>
> pfctl -R -onone -f /etc/pf.conf
> Lo cual tiene sentido, si únicamente no quiero ver el error, dado que
> según mi interpretación, de todas formas la optimización no se realizará.
> Algún comentario al respecto?
La optimizacion viene activa por defecto y lo que hace el parametro -onone es desactivar el optimizador en esa carga sin recargar las tablas y solo cargando las reglas de filtrado ignorando cualquier otra regla.
Una solucion, si lo que quieres es recargar las reglas de filtrado
(ignorando el resto) y ademas tener la optimizacion es recargar ademas
las tablas, esto lo logras ejecutando:
pfctl -Tl -Rf /etc/pf.conf
> Por si alguien me sugiere: "pfctl -d -e /etc/pf.conf", no es la idea. No
> quiero perder conexiones ni nada parecido.
Si ejecuto eso me da error.
pfctl -d -e /etc/pf.conf
pfctl: unknown command line argument: /etc/pf.conf
El ejecutar pfctl -d desactiva pf, pero no borra las reglas ni tablas de
estados, si lo vuelves a activar con pfctl -e queda todo igual como
antes.
Para resetear y borrar todo lo mejor es ejecutar:
pfctl -Fa -f /etc/pf.conf
saludos,
Luis Sandoval
Pd: que emocion, la lista esta con vida :)
Más información sobre la lista de distribución BSD