Bienvenido(a) a Alcance Libre 27/05/2022, 23:02

Alcance Libre Foros

 Índice del foro > Todo acerca de Linux > Redes y Servidores New Topic Post Reply
 Proxy transparente
Tópico anterior Tópico siguiente
   
robokick
 02/26/09 02:48PM (Leído 3,126 veces)  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Hola amigos,

Voy a configurar un proxy squid transparente bueno creo q la configuracion del squid.conf no varia mucho es decir habia que poner le puerto que usara el squid (3128) y crear los acl y los hhtp_access como lo indica los manuales de este sitio

Pero mi duda es como se hace transparente que reglas iptables debo de colocar yo si he configurado un proxy pero no transparente y no se que reglas iptables poner es decir no se la sentencia

Bueno espero que me puedan ayudar, si alguien tendra un manual de como configurar proxy transparente con iptables se lo agradeceria mucho

Saludos
 
Profile Email
 Quote
Joel Barrios Dueñas
 02/26/09 08:20PM  

Admin

Estado: conectado
Site Admin

Identificado: 02/17/07
Mensajes: 1761
Localización:Mexico
Suponiendo que usas la interfaz eth1 y que tu red local accede desde eth0, como me comentaste en el mensajero:
PHP Formatted Code

# Habilitar reenvío de paquetes para IP versión 4
echo 1 > /proc/sys/net/ipv4/ip_forward
# Habilitar el NAT
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0.0.0.0/0 -j MASQUERADE
# Dejar pasar los paquetes ICMP
iptables -A INPUT -i eth1 -p ICMP -j ACCEPT
# Aceptar paquetes de conexiones ya establecidas
iptables -A INPUT -p TCP -m state --state RELATED -j ACCEPT
# Rechazar paquetes de conexiones nuevas
iptables -A INPUT -i eth1 -m state --state NEW,INVALID -j DROP
# Rechazar paquetes de reenvío de conexiones sin establecidas
iptables -A FORWARD -i eth1 -m state --state NEW,INVALID -j DROP
# Hacer pasar conexiones HTTP por Proxy-cache
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128

 
Profile Email Website
 Quote
robokick
 02/27/09 08:59AM  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Hola Joel

Mil gracias por tu ayuda esoty seguro que me sera muy util, pero ahora me han pedido lo siguiente:

Forzar mediante iptables que 443 lo reenvie al proxy y el squid que lo adminta como puerto seguro

Podrias decirme please que regla iptables debo de colocar para este caso

Muchas gracias

Saludos desde Lima Perú
 
Profile Email
 Quote
Joel Barrios Dueñas
 02/27/09 01:27PM  

Admin

Estado: conectado
Site Admin

Identificado: 02/17/07
Mensajes: 1761
Localización:Mexico
HTTPS y FTP jamás se configuran en modo transparente. Solo HTTP.

PHP Formatted Code

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
 
 
Profile Email Website
 Quote
robokick
 02/27/09 01:34PM  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Hola joel parece que mi squid esta funcionando y digo parece porque cuando ejecuto

tail -f /var/log/squid/access.log

no me sales los logs a pesar que esta habilitado la linea
access_log /var/log/squid/access.log squid

que esta sucediendo

Saludos
 
Profile Email
 Quote
robokick
 02/28/09 11:22AM  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Hola, aca publico mis reglas iptables talvez por ahi se pueda resolver el porque no veo los logs del squid usando tail -f /var/log/squid/access.log

quiero mencionar que uso eth2 para la red externa y eth0 para la red interna

#!/bin/bash

#ifconfig eth2:1 192.168.2.2 netmask 255.255.255.0
PRIVATE=192.168.1.0/24
LOOP=127.0.0.1

#Eliminar directivas de firewall
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

#Establecer directivas por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

#Evitar el uso de paquetes externos loopback addr
iptables -A INPUT -i eth2 -s $LOOP -j DROP
iptables -A FORWARD -i eth2 -s $LOOP -j DROP
iptables -A INPUT -i eth2 -d $LOOP -j DROP
iptables -A FORWARD -i eth2 -d $LOOP -j DROP

#Bloque saliente netbios
#iptables -A FORWARD -p tcp --sport 137:139 -o eth2 -j DROP
#iptables -A FORWARD -p udp --sport 137:139 -o eth2 -j DROP
#iptables -A OUTPUT -p tcp --sport 137:139 -o eth2 -j DROP
#iptables -A OUTPUT -p udp --sport 137:139 -o eth2 -j DROP

#Cerrar ssh
iptables -A INPUT -p tcp --dport 22 -j DROP

#Rechazar paquetes en proxy transparente
# Rechazar paquetes de conexiones nuevas
iptables -A INPUT -i eth2 -m state --state NEW,INVALID -j DROP

# Rechazar paquetes de reenvío de conexiones sin establecidas
iptables -A FORWARD -i eth2 -m state --state NEW,INVALID -j DROP

#Establecer directivas de filtrado
#Al localhost acceso total
iptables -A INPUT -i lo -j ACCEPT

#Firewall con acceso a la LAN
#iptables -A INPUT -s $PRIVATE -i eth0 -j ACCEPT

#Habilitar samba para la Red LAN
#iptables -A INPUT -s $PRIVATE -p tcp --dport 137:139 -j ACCEPT
#iptables -A INPUT -s $PRIVATE -p udp --dport 137:139 -j ACCEPT

#Mantener el estado de las conexiones de la maquina local y de la subred
iptables -A OUTPUT -m state --state NEW -o eth2 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -o eth2 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

#Enmascaramiento de la LAN
iptables -t nat -A POSTROUTING -s $PRIVATE -d 0.0.0.0/0 -j MASQUERADE

#Reglas proxy transparente
# Habilitar reenvío de paquetes para IP versión 4
echo 1 > /proc/sys/net/ipv4/ip_forward

# Dejar pasar los paquetes ICMP
iptables -A INPUT -i eth2 -p ICMP -j ACCEPT

# Aceptar paquetes de conexiones ya establecidas
iptables -A INPUT -p TCP -m state --state RELATED -j ACCEPT

#Hacer pasar las conexiones HTTP por proxy-cache
iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128
 
Profile Email
 Quote
Perseus
 03/01/09 10:12PM  

Miembro regular

Estado: desconectado
Forum User

Identificado: 08/02/07
Mensajes: 115
Localización:Chiapas, México
Porque no pruebas deshabilitar el NAT de tu firewall y verificar de nuevo tus logs.

Puede ser, que en vez de salir por el proxy tu red está saliendo a internet gracias al NAT.

Saludos

--------------------o00o-----| º L º |-------o00o-------------------- También en la Selva existen los pingúinos!!
 
Profile Email
 Quote
robokick
 03/02/09 12:32PM  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Tengo comentado este linea

#Firewall con acceso a la LAN
#iptables -A INPUT -s $PRIVATE -i eth0 -j ACCEPT

donde private es 192.168.1.0/24

Saludos
 
Profile Email
 Quote
gutierrezr
 03/02/09 10:38PM  

Moderador

Estado: desconectado
Forum User

Identificado: 03/28/07
Mensajes: 179
Quote by: robokick

Hola, aca publico mis reglas iptables talvez por ahi se pueda resolver el porque no veo los logs del squid usando tail -f /var/log/squid/access.log

quiero mencionar que uso eth2 para la red externa y eth0 para la red interna

#!/bin/bash

#ifconfig eth2:1 192.168.2.2 netmask 255.255.255.0
PRIVATE=192.168.1.0/24
LOOP=127.0.0.1

#Eliminar directivas de firewall
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

#Establecer directivas por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

#Evitar el uso de paquetes externos loopback addr
iptables -A INPUT -i eth2 -s $LOOP -j DROP
iptables -A FORWARD -i eth2 -s $LOOP -j DROP
iptables -A INPUT -i eth2 -d $LOOP -j DROP
iptables -A FORWARD -i eth2 -d $LOOP -j DROP

#Bloque saliente netbios
#iptables -A FORWARD -p tcp --sport 137:139 -o eth2 -j DROP
#iptables -A FORWARD -p udp --sport 137:139 -o eth2 -j DROP
#iptables -A OUTPUT -p tcp --sport 137:139 -o eth2 -j DROP
#iptables -A OUTPUT -p udp --sport 137:139 -o eth2 -j DROP

#Cerrar ssh
iptables -A INPUT -p tcp --dport 22 -j DROP

#Rechazar paquetes en proxy transparente
# Rechazar paquetes de conexiones nuevas
iptables -A INPUT -i eth2 -m state --state NEW,INVALID -j DROP

# Rechazar paquetes de reenvío de conexiones sin establecidas
iptables -A FORWARD -i eth2 -m state --state NEW,INVALID -j DROP

#Establecer directivas de filtrado
#Al localhost acceso total
iptables -A INPUT -i lo -j ACCEPT

#Firewall con acceso a la LAN
#iptables -A INPUT -s $PRIVATE -i eth0 -j ACCEPT

#Habilitar samba para la Red LAN
#iptables -A INPUT -s $PRIVATE -p tcp --dport 137:139 -j ACCEPT
#iptables -A INPUT -s $PRIVATE -p udp --dport 137:139 -j ACCEPT

#Mantener el estado de las conexiones de la maquina local y de la subred
iptables -A OUTPUT -m state --state NEW -o eth2 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -o eth2 -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

#Enmascaramiento de la LAN
iptables -t nat -A POSTROUTING -s $PRIVATE -d 0.0.0.0/0 -j MASQUERADE

esta regla de aquí , tienes la interfaz wan por dinámico? porque el enmascaramiento lo aplicas 0.0.0.0/0

#Reglas proxy transparente
# Habilitar reenvío de paquetes para IP versión 4
echo 1 > /proc/sys/net/ipv4/ip_forward

# Dejar pasar los paquetes ICMP
iptables -A INPUT -i eth2 -p ICMP -j ACCEPT

# Aceptar paquetes de conexiones ya establecidas
iptables -A INPUT -p TCP -m state --state RELATED -j ACCEPT

#Hacer pasar las conexiones HTTP por proxy-cache
iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128




otra duda que tengo las pc de tu lan tienen la gateway la ip del proxy verdad? porque si no es así tienes que redirigir todo el trafico de la LAN cuando usen el puerto 80 se vayan a la pc del proxy ...

saludoss
 
Profile Email
 Quote
robokick
 03/03/09 07:12AM  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Hola, hago ese enmascaramiento porque asi me lo recomendo Joel Barrios en este mismo post y claro que las PC's de la LAN tienen la gateway la ip del proxy
 
Profile Email
 Quote
gutierrezr
 03/03/09 05:25PM  

Moderador

Estado: desconectado
Forum User

Identificado: 03/28/07
Mensajes: 179
no lo se pero ese firewall tuyo no me convence , puedes solo dejar el nat y redirigir el puerto 80 al 8080 y revisa la salida de los log en squid ... deja ver tambien algunas reglas de tu squid.conf

saludoss
 
Profile Email
 Quote
robokick
 03/05/09 05:09PM  

Miembro Activo

Estado: desconectado
Forum User

Identificado: 03/22/08
Mensajes: 194
Problema solucionado, volvi a instalar l squid volvi a configurar, use las mismas reglas del firewall y funciono ya puedo ver los logs

Saludos
 
Profile Email
 Quote
Contenido generado en: 0.36 segundos New Topic Post Reply
 Todas las horas son CDT. Hora actual 11:02 PM.
Tópico normal Tópico normal
Tópico Pegado Tópico Pegado
Tópico bloqueado Tópico bloqueado
Mensaje Nuevo Mensaje Nuevo
Tópico pegado con nuevo mensaje Tópico pegado con nuevo mensaje
Tópico bloqueado con nuevo mensaje Tópico bloqueado con nuevo mensaje
Ver mensajes anónimos 
Los usuarios anónimos pueden enviar 
Se permite HTML Filtrado 
Contenido censurado