2 votos

pfctl para añadir reglas en tiempo de ejecución SIN editar /etc/pf.conf?

Tengo una aplicación que (mientras se ejecuta y sólo mientras se ejecuta) necesita hacer cambios en el filtro de paquetes ( pf ) para que bloquee o permita cierto tráfico. Estas reglas deben añadirse a las propias reglas del usuario en /etc/pf.conf - pero no quiero editar directamente /etc/pf.conf ya que esto es extremadamente intrusivo.

Puedo hacer esto trivialmente en linux usando iptables e incluso en Windows utilizando wfp sin alterar ningún archivo en el disco, ¿puedo lograr lo mismo en osx con pf ?

La solución sólo tiene que funcionar en yosemite (10.10) y superior

5voto

scotru Puntos 130

Lo he resuelto yo mismo.

cat /etc/pf.conf my_rules.conf | sudo /sbin/pfctl -Ef -

Donde my_rules.conf contiene nuestras propias reglas, éstas se concatenan con el pf.conf pero tienen prioridad debido a que se añaden después de pf.conf en el cat comando.

También hay que tener en cuenta que utilizamos pfctl -Ef - el - fuerzas pfctl para leer desde stdin

Podemos llevar esta solución un paso más allá y cargar nuestras propias reglas desde stdin usando esto:

echo "block out all" | cat /etc/pf.conf - | sudo /sbin/pfctl -Ef -

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X