Foros del Web » Administración de Sistemas » Unix / Linux »

Problemas Iptables + Squid [CentOS]

Estas en el tema de Problemas Iptables + Squid [CentOS] en el foro de Unix / Linux en Foros del Web. Hola a todos, tengo un servidor en CentOS, donde está configurado el NameServer, Mail Server y el Proxy Server. El proxy lo monté con SQUID ...
  #1 (permalink)  
Antiguo 22/11/2011, 13:55
 
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 13 años
Puntos: 0
Pregunta Problemas Iptables + Squid [CentOS]

Hola a todos, tengo un servidor en CentOS, donde está configurado el NameServer, Mail Server y el Proxy Server.

El proxy lo monté con SQUID (no sé si habrá otra opción, pero me ha resutlado), todo ha estado bien. Dicho squid, se encarga de filtrar la salida a internet únicamente a ciertos equipos de adentro de la red, por medio del ip.

Así, el ip que esté en un archivo plano (que le puse permitidos) puede tener acceso a internet full. Hasta el momento todo bien, pero resulta que estoy haciendo una aplicación (ya a lo interno de la empresa) que se comunica a una ip (165.98.145.152) y puertos específicos (50555,4242,4244).

Como se supone que tenía acceso full desde mi pc, comencé el desarrollo, pero me topé que el linux no me dejaba salir a esa ip ni a esos puertos, así que investigando encontré que en el firewall tenía que poner una instrucción.

Código PHP:
# Habilite ruteo.
echo > /proc/sys/net/ipv4/ip_forward

iptables 
-t nat -A POSTROUTING -j MASQUERADE 
Ya con esto, el problema se solucionó, la aplicación se comunica con el servidor externo (en realidad es una especie de webservice, pero bueno, no hay problema). Pero cuando fui a ver algo en una pc (que no tiene acceso a internet), veo que se puede navegar libremente, así que ahí viene mi consulta.

¿Qué tengo que hacer para que el proxy funcione a como ha estado, pero que me permita enviar y recibir respuesta a la ip y puertos antes mencionados.

Mi script de iptables es (ACLARO: NO soy experto en iptables y por eso hago la pregunta, el script lo construí casi sin saber mucho lo que hace, así que no sé qué hacer)

Código PHP:
LAN_IN="eth0"
iptables -F INPUT
iptables 
-F OUTPUT
iptables 
-F FORWARD
iptables 
-F POSTROUTING -t nat
iptables 
-F PREROUTING -t nat
### Set our own simple iptable rules ###
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 443 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 53 -j ACCEPT
iptables 
-A INPUT -p udp --dport 53 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 953 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 1080 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 50555 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 4244 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 4242 -j ACCEPT
iptables 
-A INPUT -p udp --dport 50555 -j ACCEPT
iptables 
-A OUTPUT -p tcp --dport 50555 -j ACCEPT
iptables 
-A OUTPUT -p udp --dport 50555 -j ACCEPT
iptables 
-A OUTPUT -p tcp --dport 4242 -j ACCEPT
iptables 
-A OUTPUT -p tcp --dport 4244 -j ACCEPT
iptables 
-A OUTPUT -d 165.98.145.152 -p tcp --dport 50555 -j ACCEPT
iptables 
-A INPUT -d 165.98.145.152 -p tcp --dport 50555 -j ACCEPT


iptables 
-A INPUT -s 127.0.0.1 -p tcp --dport 143 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 4949 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 25 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 110 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 22 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 3128 -j ACCEPT
iptables 
-A INPUT -p udp --dport 161 -j ACCEPT
iptables 
-A INPUT -p tcp --dport 23 -j ACCEPT
iptables 
-A INPUT -p icmp -j ACCEPT
iptables 
-A INPUT -p tcp -m tcp --tcp-flags ACK ACK -j ACCEPT
iptables 
-A INPUT -m state --state ESTABLISHED -j ACCEPT
iptables 
-A INPUT -m state --state RELATED -j ACCEPT
iptables 
-A INPUT -j REJECT
###############################
# unlimited access to LAN
iptables -A INPUT -i $LAN_IN -j ACCEPT
iptables 
-A OUTPUT -o $LAN_IN -j ACCEPT


iptables 
-A FORWARD -i eth0 -o eth1 -j ACCEPT
# Habilite ruteo.
echo > /proc/sys/net/ipv4/ip_forward

iptables 
-t nat -A POSTROUTING -j MASQUERADE 
  #2 (permalink)  
Antiguo 22/11/2011, 15:46
 
Fecha de Ingreso: noviembre-2011
Mensajes: 6
Antigüedad: 13 años
Puntos: 0
Información Respuesta: Problemas Iptables + Squid [CentOS]

Creo que ya resolví y me gustaría me digan si está bien.

No tomé en cuanta el ip, pero si los puertos así que en lugar de tener la regla que tenía, osea que ya no seguí usando

Código PHP:
iptables -t nat -A POSTROUTING -j MASQUERAD 
Puse estas

Código PHP:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 4244 -j ACCEPT
iptables 
-t nat -A PREROUTING -i eth0 -p tcp --dport 4242 -j ACCEPT
iptables 
-t nat -A PREROUTING -i eth0 -p tcp --dport 50555 -j ACCEPT

iptables 
-t nat -A POSTROUTING -p tcp --dport 4244 -j MASQUERADE
iptables 
-t nat -A POSTROUTING -p tcp --dport 4242 -j MASQUERADE
iptables 
-t nat -A POSTROUTING -p tcp --dport 50555 -j MASQUERADE 

¿Está bien todo ahí? Lo digo porque me funciona lo que yo quiero, pero me gustaría saber si mi server está seguro.

Etiquetas: iptables, nat, proxy, squid
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:24.