¿Cuál es el método más sencillo para redirigir el tráfico utilizando un proxy o iptables?

¿Cuál es el método más sencillo para redirigir el tráfico utilizando un proxy o iptables?

Necesito redirigir todo el tráfico entrante en el puerto 7777 a un puerto_ip_destino específico:puerto.

Tengo alrededor de 40 plataformas de minería Litecoin (scrypt) que tengo que reconfigurar manualmente cada vez que quiero cambiar monedas o grupos. En lugar de eso, me gustaría poder modificar la dirección de destino en mi cuadro de proxy para dirigir la granja.

Actualmente estoy usando el proxy Dante que tiene un módulo de redireccionamiento disponible que parece perfecto. Sin embargo, no tengo $400 para gastar en ese módulo. Además, Dante parece ocupar enormes cantidades de memoria para cada conexión.

Además, en lugar de usar un proxy, intenté usar iptables como solución pero recibí un error:

root@xx:~# iptables -t nat -A PREROUTING -p tcp -d x.x.x.x --dport 7777 -j DNAT --to x.x.x.x:7777
root@xx:~# iptables -t nat -A POSTROUTING -d x.x.x.x -j MASQUERADE
iptables: No chain/target/match by that name.

No pude hacer que eso funcionara ni estoy seguro de si sería una solución para lo que busco.

¡Cualquier idea sobre cómo lograr mejor el resultado deseado sería genial!

Respuesta1

Prueba esto,

iptables -t nat -A PREROUTING -p tcp -d x.x.x.x --dport 7777 -j DNAT --to-destination y.y.y.y:port

Debe proporcionar el destino y el puerto especificados como argumentos ento-destination.

Respuesta2

EDITAR: Si hiciste algunos cambios "sucios" (probaste cosas que no funcionaron), reinicia iptables para limpiarlos. Si guardó sus cambios incluso si no funcionaron, entonces debe limpiar esas reglas (usar -Dopción) antes de intentar agregar más.


Primero, asegúrese de aceptar los paquetes entrantes:

iptables -A INPUT -p tcp --dport 7777 -j ACCEPT

Luego redirija el tráfico (considere -I, para insertar la regla al principio; a veces es mejor que agregar la regla a la cadena):

iptables -A PREROUTING -t nat -p tcp --dport 7777 -j DNAT --to-destination <destination_ip>:<destitation_port>

Puede verificar la regla que acaba de agregar (debería ver algo como DNAT [...] tcp dpt:7777 to:<destination_ip>:<destitation_port>y probablemente no debería ver otras reglas en la PREROUTINGcadena relacionadas con ese puerto específico):

iptables -L -n -t nat

Si todo funciona bien, recuerde siempre guardar los cambios (de lo contrario, perderá las reglas después de reiniciar):

service iptables save

información relacionada