ip_forward en proxy transparente

Forums: 

Hola:

Vuelvo con mis problemas para que me las despejen. En una ocasión realice una pregunta sobre la configuración de Proxy Transparente, el mismo que con diferentes criterios me fueron respondidos, entre ellos la solución de EPE con arno-iptables-firewall y efectivamente es una solución completa, pero me gustaría implementar un proxy transparente con iptables. despues de indagar un poco mas sobre esta herramienta me di cuenta que no es muy complicado, considerando que Trabajo sobre Centos 5.5, con dos tarjetas de red: eth1 -> LAN (192.168.2.x), Eth0 -> Internet [red privada] (192.168.1.x), el problema esta que cuando realizo el :

echo "1" > /proc/sys/net/ipv4/ip_forward

Regla Iptables:
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

supuestamente está todo ok, guardo la regla, y reinicio el servicio de red pero me envia un error que dice que el ipv4.ip_forward = 0, es decir que vuelve a tomar el valor "0", verifico con cat /proc/sys/net/ipv4/ip_forward y efectivamente continua en "0"

Luego leí que podrían ser necesarios alterar otros paremetros como /etc/sysctl.conf:
# Control IP Packet forwardig
net.ipv4.ip_forward = 0 ## cambiar a 1

y /etc/sysconfig/network:

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=miserver
FORWARD_IPV4=yes ## deberiamos agregar esto

realice toda esta configuración pero aún así no puedo activar el forwarding.

Como podrán ver, no pude configurar mi proxy transparente, quisiera me puedan despejar el por que no se puede activar el ip_forward

Probe el proxy como no

Probe el proxy como no transparente y SI Los clientes pueden navegar sin problemas
e incluso sin una puerta de enlace ni DNS, solo con el ip y mascara de subred.

los clientes estan con WinXP

ahora estube revisando con el iptraf la verdad es que si muestra el 192.168.2.50 del cliente pero no devuelve la respuesta

sin proxy transparente los

Imagen de deathUser

sin proxy transparente los clientes no necesitan ni resolver nombres ni tener un gateway, pero no has contestado mi pregunta, que pasa si digitas

ping www.google.com

en la consola de comandos de un cliente moco$oft güin2 Xpipí configurado para el proxy transparente ...???
qué error te reporta cuando quieres cargar una página en el browser del cliente ...???

bye
;)

jajaja resultado de: ping

jajaja

resultado de:


ping www.google.com


La solicitud de ping no pudo encontrar el host www.google.com compruebe el nomnre y vuelva a intentarlo


Resultado de navegador Firefox:

Servidor no encontrado

Firefox no puede encontrar el servidor en www.google.com.bo.

como te decía, los clientes

Imagen de deathUser

como te decía, los clientes deben ser capaces de resolver nombres, en tu caso no lo pueden hacer, seguramente porque no estás nateando (enmascarando) todo el tráfico o al menos el de DNS, te recomendaría instalar un servidor DNS de caché en tu firewall/proxy y poner la dirección de este como servidor DNS de tus clientes en lugar de las direcciones que tienes ahora, o simplemente enmascarar todo el tráfico o el de DNS lo que te guste más (el dns de caché te dará respuestas más rápidas de nombres ;)).

Resuelve lo del DNS y si está bien configurado el proxy transparente debería funcionar.

bye
;)

Mi persistencia de querer

Mi persistencia de querer configurar un proxy transparente, me ha hecho indagar mucho, por que he aprendido más de lo que habia pensado, gracias a personas como tu.

Configuraré el DNS, haber como me va

Muchas gracias

Gracias a este manual de EPE

Gracias a este manual de EPE configuré el DNS server Cache, y le aguegue esto en:

options {
allow-recursion { 192.168.0.0/24; 127.0.0.1; };
allow-query { 192.168.0.0/24; 127.0.0.1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
query-source port 53;
forwarders { 200.87.100.10; 200.87.100.40; }; // DNS de mi ISP
forward only; // Solicitudes Cache
};

debo ser honesto entre muchos manuales que revise este difiere mucho de todos, pero en una recomendación tuya, dices que cambien los DNS de los clientes al del servidor cache, el que segun yo ahora debería ser /etc/resolv.conf

#nameserver 200.87.100.10
#nameserver 200.87.100.40
nameserver 127.0.0.1
nameserver 192.168.2.1 # nuevo DNS????

Bueno he iniciado el named con service named start y funciona ok, le he hecho un dig www.google.com y la primera ves me respondio en 31 msec y por segunda y tercera ves en 1 msec.

he cambiado los DNS de los clientes a 192.168.2.1, pero aún no pueden resolver los nombres.

En cuanto a los name servers

Imagen de deathUser

En cuanto a los name servers puedes poner en el servidor proxy todos los nameservers sin problemas, está bien poner el local primero ...
en los clientes deberías poner solo el proxy 192.168.1.???

si te fijas en tu config:

allow-recursion { 192.168.0.0/24; 127.0.0.1; };
allow-query { 192.168.0.0/24; 127.0.0.1; };

creo que debería ser:

allow-recursion { 192.168.1.0/24; 127.0.0.1; };
allow-query { 192.168.1.0/24; 127.0.0.1; };

ya que tu red interna es 192.168.1.0/24

bye
;)

Un pequeño detalle mas, si

Un pequeño detalle mas, si bien ahora los clientes resuelven el nombre, hay problema, con hotmail.com, gmail.com, mail.yahoo.com. Ahora cuando hago ping ww.google.com desde el cliente me devuelve:


C:\Documents and Settings\Administrador>ping www.google.com

Haciendo ping a www.l.google.com [74.125.157.99] con 32 bytes de datos:

Tiempo de espera agotado para esta solicitud.
Tiempo de espera agotado para esta solicitud.
Tiempo de espera agotado para esta solicitud.
Tiempo de espera agotado para esta solicitud.

Estadísticas de ping para 74.125.157.99:
Paquetes: enviados = 4, recibidos = 0, perdidos = 4
(100% perdidos),

revise las reglas iptables y es:

# Generated by iptables-save v1.3.5 on Thu Aug 18 14:50:00 2011
*filter
:INPUT ACCEPT [2783:303402]
:FORWARD ACCEPT [19:1140]
:OUTPUT ACCEPT [2341:314932]
COMMIT
# Completed on Thu Aug 18 14:50:00 2011
# Generated by iptables-save v1.3.5 on Thu Aug 18 14:50:00 2011
*nat
:PREROUTING ACCEPT [6428:631751]
:POSTROUTING ACCEPT [104:7906]
:OUTPUT ACCEPT [100:7666]
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
COMMIT
# Completed on Thu Aug 18 14:50:00 2011

la verdad no se me pasa nada por la cabeza del por que no visualiza hotmail, gmail mail.yahoo.com, (pero la página de www.yahoo.com si visualiza).

No ves respuestas de ping, y

Imagen de deathUser

No ves respuestas de ping, y que no estás nateando o enmascarando ningún tipo de tráfico (específicamente icmp para el ping), lo de los sites que no ves es por que usan https en lugar de http y usan otro puerto (443) que no vas a poder proxificar de manera transparente (ya han hablado en el foro largamente sobre el tema, STFE si quieres detalles al respecto), quieres enmascarar todo el tráfico, esto permitirá que tus usuarios puedan usar un número más grande de aplicaciones como ftp, IMS, p2p, VoIP, etc, obviamente con el abuso que esto suele conllevar ...

revisa las reglas de mascarade de iptables si quieres enmascarar el tráfico de tu red interna ...

bye
;)

Páginas