Redirigir tráfico HTTP a servidor local windows NAT

Iniciado por Kaxperday, 18 Junio 2016, 14:51 PM

0 Miembros y 1 Visitante están viendo este tema.

Kaxperday

Bueno, quiero recibir tráfico que llega a mi máquina de IPs que apuntan a servicios webs como "google.com", "foro.elhacker.net"..., cada petición externa que hace una máquina a esos dominios se traduce en una peticion IP con la IP source de la máquina solicitante y la IP destino de la misma (una vez ya resuelto el dns). Esas peticiones IP source y destino voy a poner un ejemplo de ellas para que entendáis lo que quiero hacer:

Citar
192.168.0.156 -> 202.159.23.13
192.168.0.18 -> 13.156.13.248
192.168.0.146 -> 89.123.23.56.4

Todas esas peticiones que me llegan a mi que actúo como router, quiero redirigirlas a mi servidor local antes de mandarlas al router.

Para que quede algo así:

Citar
192.168.0.156 -> 202.159.23.13 -> 192.168.0.160
192.168.0.18 -> 13.156.13.248 -> 192.168.0.160
192.168.0.146 -> 89.123.23.56.4 ->192.168.0.160

Siendo 192.168.0.160 la IP de mi máquina en la red, de esta manera esas peticiones IP pasarían por mi servidor local antes de salir.

Y desde allí aceptaría su conexión, pero ojo quiero redirigir al servidor (que escuchará en el puerto 80 pues solo le interesan las peticiones HTTP) sólo las peticiones de hosts que esten fuera de la red, que tengan destino el puerto 80 y que sean HTTP.

Es decir hacer esa redirección pero con esos filtros, que solo redirija a mi servidor los mensajes TCP/IP que cumplan esos requisitos.

Sé que con el comando "route" se puede jugar pero no se como poner esos filtros (acceder a comandos ACL para ponerlos). También se puede jugar con el archivo hosts "0.0.0.0 192.168.0.160" quizás funcione.. pero no es lo que busco claro, quiero filtrar.

Por ejemplo he probado con:

Citar
C:\WINDOWS\system32>route add 0.0.0.0 mask 0.0.0.0 192.168.0.160

Que esto redigiría todo el tráfico del ordenador a mi servidor, pero claro luego me quedo sin internet y tengo que cambiarlo.. además no aplica ningún filtro, ya que yo quiero redirigir el tráfico entrante que tenga por destino una IP externa a la red a mi servidor local (192.168.0.160), simplemente eso (cambiar la IP de destino y redirigir el paquete cambiando el checksum IP funcionaría pero habría que reenviar el mismo paquete y no es buena idea).

¿Alguna manera, para redirigir tráfico HTTP entrante con destino IP a hosts fuera de la red a mi servidor local 192.168.0.160?.

Seguramente la respuesta este en netsh y/o route, ¿alguna idea alguien que le haya pasado antes?

Saludos y gracias.
Cuando el poder económico parasita al político ningún partido ni dictador podrá liberarnos de él. Se reserva el 99% ese poder.

andavid



AlbertoBSD

#2
Una pregunta.

Tienes acceso a las otras maquinas que quieres redirigir o lo quieres hacer de forma remota?

si estas buscandi la segunda forma tal ve esta noticia te interese.

http://blog.segu-info.com.ar/2016/06/badtunnel-bug-que-permite-secuestrar-el.html

Saludos
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW

lestherhack

Una consulta, si tu eres el router de los usuarios que SO estas usando? Si usas linux esta facil hacer uso de NAT con iptables del paquete original y el paquete que trasladaras.

Enviado desde mi SM-G928G mediante Tapatalk

lestherhack

Si no estas familiarizado con iptables desde la consola puedes usar una GUI muy facil de usar y aca unos ejemplos: http://www.fwbuilder.org/4.0/docs/users_guide5/source-address-translation.shtml

Enviado desde mi SM-G928G mediante Tapatalk