Usted sólo puede redirigir entrante tráfico. Cualquier tráfico saliente en el puerto 80 no se ve afectado por su regla de rdr.
Para redirigir el tráfico saliente en el puerto 80 que tiene que volver a la ruta lo primero a lo0, a continuación, redirigir el puerto de proxy:
El orden en el archivo de configuración es necesariamente rdr incomming paquetes, luego de filtro de paquetes (como paso), pero cronológicamente la 2da regla llegará en primer lugar (en en0), que luego se activará la primera regla (lo0).
# Step "2". redirect those same packets that were routed to lo0 below
rdr pass log on lo0 proto tcp from any to any port 80 -> 127.0.0.1 port 8080
# Step "1". Route new IPv4 TCP connections leaving en0 to lo0
pass out on en0 route-to lo0 proto tcp from en0 to any port 80 keep state
en pf.conf este tendría este aspecto:
...
scrub-anchor "com.apple/*"
nat-anchor "com.apple/*"
rdr-anchor "com.apple/*"
rdr pass log on lo0 proto tcp from any to any port 80 -> 127.0.0.1 port 8080
dummynet-anchor "com.apple/*"
anchor "com.apple/*"
load anchor "com.apple" from "/etc/pf.anchors/com.apple"
pass out on en0 route-to lo0 proto tcp from en0 to any port 80 keep state
En el ejemplo de arriba supongo en0 es su única salida en la interfaz.
Descargar su actual pf.conf y dejar de pf: sudo pfctl -d
. A continuación, agregue las dos líneas anteriores. Después de la modificación de pf.conf comprobar la sintaxis del archivo de con sudo pfctl -vnf /etc/pf.conf
, que debería traducirse en la siguiente salida:
pfctl: Use of -f option, could result in flushing of rules
present in the main ruleset added by the system at startup.
See /etc/pf.conf for further details.
scrub-anchor "/*" all fragment reassemble
nat-anchor "/*" all
rdr-anchor "/*" all
rdr pass log on lo0 proto tcp from any to any port 80 -> 127.0.0.1 port 8080
anchor "/*" all
pass out on en0 route-to lo0 proto tcp from en0 to any port 80 flags S/SA keep state
dummynet-anchor "/*" all
y si el éxito de carga con sudo pfctl -e -f /etc/pf.conf
.
Un adecuado sistema y la configuración de proxy (y bien comportarse apps) no requieren de reglas de pf!