[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: reglas iptables



On Apr 5, 2005 3:19 PM, Javier Alberto Alvarez <jvralvarez@yahoo.com> wrote:
> gracias por tu respuesta, te comento:
> El problema es bajar el correo desde los clientes win (conectados a un
> switch en eth0) y el servidor de correo esta del otro lado, es un
> servidor pop en internet.
> 
Ok, ahora sabemos a qué nos enfrentamos ;-)

No veo nada mal, así que empezamos simplificando. En un principio las
únicas que tienen algo que decir al respecto son:
$iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
$iptables -A FORWARD -p tcp --dport 110 -j ACCEPT

Lo primero que se me ocurre es que los paquetes del correo son
descartados antes de llegar a alguna de estas reglas. Prueba una cosa,
mueve estas 2 reglas al principio del script, justo despues de definir
la política por defecto (justo despues de $iptables -t nat -P
POSTROUTING ACCEPT)
Si con esto te funciona yo no veo ninguna regla a la que culpar del
fallo. ¿Has omitido alguna regla que consideres que afecta
exclusivamente a la tercera tarjeta de red?
Si no es así, sírvete de tcpdump y/o iptraf para ver donde se están
perdiendo esos paquetes. Tambien te puede ser de ayuda iptables -L -n
-v que te dirá donde se están descartando los paquetes.


> > ¿Desde qué máquina no puedes descargar el correo?, ¿desde el
> > servidor,
> 
> > > ## Esta regla es para limpiar las reglas de nat.
> > > $iptables -t nat -F
> > >
> > > $iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
> >
> > Como tienes como política por defecto OUTPUT en ACCEPT, esta linea
> > sobra.
> La tengo porque la idea es que cuando todo ande limitar tambien el
> output.
> 
> >
> > > $iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
> 
> > > # Acepta acceso al puerto 25
> > > $iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
> >
> > Por esta regla deduzco que el problema lo tienes para descargar el
> > correo desde el servidor. Para solucionarlo habría que añadir algo
> > así:
> > $iptables -A INPUT -p tcp --dport 25 -j ACCEPT
> m, nop, como dije antes el problema esta en poder transmitir el correo,
> el servidor (firewall de la red, aunque ahora es solo un gateway) no
> tiene smtp ni servidor web.
> 
> > > # Acepta acceso al puerto 53
> > > $iptables -A FORWARD -p tcp --dport 53 -j ACCEPT
> > > $iptables -A FORWARD -p udp --dport 53 -j ACCEPT
> > > $iptables -A INPUT -p tcp --dport 53 -j ACCEPT
> > > $iptables -A INPUT -p udp --dport 53 -j ACCEPT
> > >
> > Si tienes el servidor tiene montado un servidor DNS - como sugieren
> > tus reglas de INPUT - ¿para qué necesitas las reglas FORWARD
> > relativas
> > a DNS? (o viceversa ;-) )
> No tengo corriendo un servidor dns en esa maquina, los dns que usamos
> son del proveedor internet.
> 

Si no tienes montado un servidor DNS, te sobrarían las reglas INPUT, ¿no?


> Mi problema creo que esta aca:
> > > # Acepta acceso al puerto 110
> > > $iptables -A FORWARD -p tcp --dport 110 -j ACCEPT
> > > $iptables -A FORWARD -p udp --dport 110 -j ACCEPT
> > > $iptables -A INPUT -p tcp --dport 110 -j ACCEPT
> > > $iptables -A INPUT -p udp --dport 110 -j ACCEPT
> > >
En principio sólo necesitarías la primera linea, ya que POP3 va sobre
TCP, y si en el servidor no vas a descargar correo, tambien sobrarían
las reglas INPUT.
Pero a pesar de estar todo (aparentemente) bien, eso no soluciona el problema.


> > > # IMAP
> > > $iptables -A FORWARD -p tcp --dport 143 -j ACCEPT
> > > $iptables -A FORWARD -p udp --dport 143 -j ACCEPT
> > > $iptables -A FORWARD -p tcp --dport 1430 -j ACCEPT
> > > $iptables -A FORWARD -p udp --dport 1430 -j ACCEPT
> > >
> 
> > > # Acepta acceso al puerto 3128
> > > $iptables -A INPUT -i eth1 -p tcp --dport 3128 -j DROP
> > > $iptables -A INPUT -i eth1 -p udp --dport 3128 -j DROP
> > > $iptables -A INPUT -p tcp --dport 3128 -j ACCEPT
> > > $iptables -A INPUT -p udp --dport 3128 -j ACCEPT
> > > #$iptables -A PREROUTING -p tcp --dport 3128 -j ACCEPT
> >
> > Podrías simplificar un poco esto.
> > Teniendo en cuenta que cuantas menos reglas, menos carga sufrirá el
> > servidor. Aunque en este caso es más por "la forma correcta de
> > hacerlo" aunque lo que tienes también sea correcto...
> > $iptables -A INPUT -i eth0 -p tcp --dport 3128 -j ACCEPT
> > $iptables -A INPUT -i eth0 -p udp --dport 3128 -j ACCEPT
> >
> > La última linea sobraría, porque tienes la política por defecto en
> > ACCEPT
> 
> El acceso al proxy anda de 10, es que en realidad el servidor tiene una
> tercer placa de red, que para el funcionamiento, cumple la misma
> funcion que la eth0, son 2 segmentos separados, pero iguales en
> funcionamiento, es simplemente para separar 2 redes nada mas, pero no
> lo describi porque no tenia sentido alargarlo con una explicacion.
> 
Mueve las reglas que te comento y si sige sin funcionar postea  si
falta alguna regla del iptables y el resultado de iptables -L -n -v

> Gracias Pedro.
> 
De na´, a ver si lo resolvemos...
> Javier
> 
> JaViEr A. Alvarez
> *********************************************
> Linux User #127940
> User: jvralvarez Domain: jabber.org
> 
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> ¡Abrí tu cuenta ya! - http://correo.yahoo.com.ar
>



Reply to: