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

esta es la regla correcta en

Imagen de falcom

esta es la regla correcta en tu script de iptables

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

sobre esa parte no necesitas agregar nada mas, en el squid.conf deberias tambiar cambiar la linea a

http_port 3180 transparent

gracias por tu colaboración

gracias por tu colaboración pero no tengo problemas con el squid, puesto que configuré un proxy no transparente y funciona bien y en el squid.conf:

http_port 3128 transparent ## esta bien

el problema es solo con el ip forward.

está net.ipv4.ip_forward =

Imagen de deathUser

está

net.ipv4.ip_forward = 1

En tu /etc/sysctl.conf ...???

Por lo demás debería funcionar, lo que dices es que una vez que reinicias el servicio network pierdes el ip_forward o me equivoco ...???

bye
;)

ya probe con: # Control IP

ya probe con:


# Control IP Packet forwardig
net.ipv4.ip_forward = 1

y nuevamente puse

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

Luego:


service network restart

y este resultado.

Interrupción de la interfaz eth0: [ OK ]
Interrupción de la interfaz eth1: [ OK ]
Interrupción de la interfaz de loopback: [ OK ]
Deshabilitando el reenvio de paquetes IPv4: net.ipv4.ip_forward = 0
[ OK ]
Activación de la interfaz de loopback: [ OK ]
Activando interfaz eth0: [ OK ]
Activando interfaz eth1: [ OK ]
[root@planet ~]#

es normal que deshabilite el

Imagen de deathUser

es normal que deshabilite el forwarding al bajar el servicio de network, una ves que lo levanta, si bien no ves un mensaje de habilita

cat /proc/sys/net/ipv4/ip_forward

debería ser 1

es así o no ...???

bye
;)

Que raro, cuando tenía

Que raro, cuando tenía configurado:

eth1 -> LAN (192.168.2.x)
Eth0 -> Internet [red privada] (192.168.1.x)

no tenía acceso a internet, reiniciaba el servicio y nada, pero se me dio la idea de cambiar la configuración:

eth1 -> Internet [red privada] (192.168.1.x)
Eth0 -> LAN (192.168.2.x)

y ahora como sin nada entra a internet y ve a la red local y el ip_forward está activo. Hasta ahí bien.

hice un Flush

iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -t nat -F PREROUTING
iptables -t nat -F POSTROUTING


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

Y nada de nada.

probe el squid como no transparente y funciona, mi cquid.conf sería:


acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl redplanet src 192.168.2.0/24

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow redplanet
http_access deny all

http_port 3128 transparent

hierarchy_stoplist cgi-bin ? hotmail gmail yahoo

cache_mem 64 MB

#maximum_object_size_in_memory 30240 KB

cache_dir ufs /var/spool/squid 10240 16 256

maximum_object_size 30240 KB

cache_swap_low 90
cache_swap_high 95

access_log /var/log/squid/access.log squid

cache_log /var/log/squid/cache.log

acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache

visible_hostname planet
error_directory /usr/share/squid/errors/Spanish
coredump_dir /var/spool/squid

si pudieran ayudarme le agradecría mucho

creo que lo correcto

Imagen de deathUser

creo que lo correcto es:

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

ya que intercambiaste las funciones de las interfaces de red.

bye
;)

si tienes razon: iptables -t

si tienes razon:


iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

otra cosa, las configuraciones de cada tarjeta son:


Eth1:
192.168.1.10
255.255.255.0
192.168.1.1
DNS:
200.87.100.10 #IPS
200.87.100.40


Eth0:
192.168.2.1
255.255.255.0
192.168.2.1
DNS:
200.87.100.10 # IPS
200.87.100.40

Usuacio cliente:

192.168.2.50
255.255.255.0
192.168.2.1
DNS:
200.87.100.10 # IPS
200.87.100.40


disculpas por la insistencia pero quisiera saber por que no funciona el proxy transparente

Páginas