2 votos

El reenvío de puertos en OS X 10.10

Tengo que enviar cada página de internet a mi dirección local es decir, 127.0.0.1 uso de OS X.

He intentado siguiente comando pero no tiene ningún efecto:

echo " rdr pass inet proto tcp from any to any port 80 -> 127.0.0.1 port 8080 " | sudo pfctl -ef -

He tratado de investigar el significado exacto de la línea de arriba, pero no puedo encontrar una buena explicación. ¿Cómo puedo realizar este reenvío?

Edit 1:

Digamos que un usuario introduce "www.google.com" en el navegador; este debe tener un impacto como este -->

El usuario debe ser redirigido a mi página local que está en 127.0.0.1:8080

Ahora, si me 127.0.0.1:8080 veo a mi portal.

Pero, yo quiero que se muestra después de que la redirección "Google.com"

Estoy escribiendo siguiente declaración. Pero, ellos no están teniendo ningún efecto.

rdr pass on lo0 proto {tcp, udp} from any to any port 80 -> 127.0.0.1 port 7894 
pass out log(all) on em0 route-to lo0 inet proto {tcp, udp} from any to any port 80 keep state

Estoy escribiendo líneas en mi ancla archivo y la adición de anclaje a la pf.conf usando rdr-ancla

1voto

klanomath Puntos 19587

Si entiendo tu pregunta y tu comentario correctamente usted está tratando de lograr algo parecido a un local de portal cautivo.

Esto no se puede hacer con pf y una simple redirección. Muchas más cosas y la configuración de los involucrados. Aquí (el enlace bsdguides.org en el github readme no funciona: enlace correcto) encuentra un ejemplo de cómo hacer esto en OpenBSD. La solución puede ser adaptado para OS X bajo ciertas circunstancias.


La regla rdr pass inet proto tcp from any to any port 80 -> 127.0.0.1 port 8080 hace lo siguiente:

rdr pass inet proto tcp from any to any port 80 -> 127.0.0.1 port 8080
|   |    |              |
|   |    |              #from any IP (all source IPs) to any IP (all destination IPs of the local machine)
|   |    |              from any to any
|   |    #IPv4 Protocol TCP
|   |    inet proto tcp
|   #allow
|   pass
#redirect from port 80 to localhost:8080
rdr                                     port 80 -> 127.0.0.1 port 8080

O: cualquier entrante (rdr sólo redirige los paquetes entrantes) IPv4 tráfico TCP (en cualquier interfaz) para el puerto 80 de la IP a cualquier IP (en cualquier interfaz) de la máquina local se pasa y redirige a 127.0.0.1:8080.

La regla no redirigir las solicitudes de un cliente local de la máquina para google.com:80 (es decir, 216.58.201.206:80) o 175.68.9.102:80 a 127.0.0.1:80 ya que ninguna de estas direcciones ip es una IP local (www-)servidor de la máquina, ni el local (www-)servidor de conocer de las solicitudes.

Esto no se aplica a los salientes de tráfico de la máquina local debido a que hay entrante tráfico. Usted tiene un bucle a este tráfico primera:

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