Cortafuegos OSX: Reenvío de puertos e ignorar solicitudes no locales

En mi servidor Debian de producción, uso esto para reenviar las solicitudes que llegan al puerto 80 a un proceso no raíz que se ejecuta en el puerto 8080:

sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

(El proceso es un clúster de Node.js, pero dudo que sea relevante para esta pregunta).

Desarrollo en mi Mac y estoy tratando de crear un entorno más elegante para mí sin agregar ningún software innecesario a mi computadora . Agregué una entrada a mi /private/etc/hostsarchivo para poder usar un dominio bastante local:

127.0.0.1 myapp.dev

Ahora quiero acceder a él sin especificar un puerto. En otras palabras, en lugar de http://myapp.dev:8080, preferiría http://myapp.dev. También preferiría no ejecutar mi servidor web directamente en el puerto 80 para que no tenga privilegios de root.

Sé que mi computadora viene con un firewall, pero no he podido encontrar mucha información al respecto. Así que estoy buscando una forma simple de reenviar cualquier cosa que llegue al puerto 80 al puerto 8080 como la solución IP Tables en Debian. Preferiría usar el firewall que viene con mi computadora y configurarlo de la manera más simple posible.

¿Puede alguien decirme cómo hacer esto?

Puntos de bonificación : ¿Existe una manera simple de ignorar todas las solicitudes que llegan al puerto 80 (y 8080) excepto las de mi propia computadora en la que se ejecuta el servidor web?

Mac OS X utilizó una vez una utilidad llamada ipfw, pero quedó obsoleta a favor de un puerto de pf de BSD. La documentación de Apple está disponible en developer.apple.com/library/mac/documentation/Darwin/Reference/…
Hay herramientas GUI que pueden ayudar. Para IPFW hay hanynet.com/waterroof y para PF hay hanynet.com/icefloor . Estoy tratando de arreglármelas sin instalarlos, ya que probablemente nunca los vuelva a usar.

Respuestas (1)

Una solución, usando IPFW, que coexiste con PF a partir de OS X 10.9 (Mavericks), es simplemente ejecutar el comando:

sudo ipfw add 100 fwd 127.0.0.1,8080 tcp from any to me 80