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
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 =
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 ~]#
oye pero esta bien, al
oye pero esta bien, al reiniciar el service network, obvio q te va a deshabilitar el reenvio de paquetes, jaja
es normal que deshabilite el
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
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
los clientes pueden resolver
los clientes pueden resolver nombres ...???
ves que las peticiones llegan al proxy ...???
el proxy funciona no transparente ...???
bye
;)
Páginas