
Tengo la siguiente configuración:
- Host-X (192.168.1.100) ejecuta ssh -D para que pueda usarse como servidor de calcetines.
- Host-Y (192.168.1.101) ejecuta redsocks configurados con Host-X como calcetines.
Están en la misma red junto con otras máquinas. Me gustaría utilizar Host-Y como puerta de enlace en algunas computadoras para aprovechar los calcetines rojos. El reenvío de IP en Host-Y está habilitado.
Esta es la configuración de redsocks:
base {
log_info = on;
log = "file:/var/log/redsocks.log";
daemon = on;
redirector = iptables;
}
redsocks {
local_ip = 0.0.0.0;
local_port = 2001;
ip = 192.168.1.100;
port = 2000;
type = socks5;
}
Estas son mis reglas de iptables:
iptables -t nat -N REDSOCKS
iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN
iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN
iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN
iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN
iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-port 2001
iptables -t nat -A PREROUTING -i eth0 -p tcp -j REDSOCKS
Puedo ver el tráfico que llega a redsocks en Host-Y desde el registro, pero no puedo navegar por Internet en las computadoras que usan Host-Y como puerta de enlace. Obviamente faltan algunas reglas de iptables, supongo que una que envía el tráfico de salida de redsocks al servidor de calcetines. ¿Alguien que pueda ayudar?
¡Gracias!
Respuesta1
Parece que si pongo la última regla como primera, todo funciona correctamente. Entonces la solución es usar las siguientes reglas de iptables:
iptables -t nat -N REDSOCKS
iptables -t nat -A PREROUTING -i eth0 -p tcp -j REDSOCKS
iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN
iptables -t nat -A REDSOCKS -d 169.254.0.0/16 -j RETURN
iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN
iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN
iptables -t nat -A REDSOCKS -d 224.0.0.0/4 -j RETURN
iptables -t nat -A REDSOCKS -d 240.0.0.0/4 -j RETURN
iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-port 2001