(me habia equivocado de direccion, hago forward, espero que llegue en condiciones y no os hagais un lio con los quotes O:-)
Besos :-* Deb > Hola Chrisoph! > > Ante todo muchas gracias por tu detallada respuesta, > paso a contestar tu mail :-) > > --- Christoph Simon <[EMAIL PROTECTED]> wrote: > > > > He montado para una asociacion de mi universidad > > un > > > servidor (acceso mediante SSH, con HTTP, SMTP y > > POP3, > > > de momento) en Debian. Para protegerlo lo maximo > > > posible le he instalado el IPtables con el > > siguiente > > > filtrado: > > > > > > ---CUT--- > > No consigo entender completamente la l�gica que > > dicta el orden de los > > comandos. > > Aqui estamos en POST-ROUTING, lo �ltimo que pasa > en > > el procesamiento > > de los packets: > > > iptables -t nat -A POSTROUTING -o lo -j SNAT > > --to-source MI_IP > > Hasta aqui TODOS van a poder salir a la Internet > > enmasquerado con tu > > IP... Al menos que insertas alguna regla al > > principio o en otra > > cadena, todos se alegrar�n de poder usar el > gnutella > > o morpheus... > > En principio el firewall no tiene usuarios > "internos", > todo se realiza desde fuera. Por tanto no tengo > usuarios que puedan utilizar Gnutella o Morpheus... > > No se si te referias a esto... De todas maneras, > �esto > lo pondrias en otro sitio? �Reordenarias las cadenas > de otra manera? �Lo pongo al final de todo? > > > Continuamos en la tabla filter, en su cadena > > FORWARD. > > > iptables -A FORWARD -p tcp ! --syn -m state > > --state NEW \ > > > -j LOG --log-prefix "New not syn:" > > Est�s usando -A (append) en todos los dem�s. Si no > > me enga�o, vas a > > escribir este mensaje para TODOS los packets; como > > esto es un > > firewall, preasumo que tienes poco tr�fico que > > origina en �l mismo. Si > > tienes mucho tr�fico de pasada, imagino que te vas > a > > hinchar el > > /var/log/kern.log > > Exactamente, el trafico originado en el firewall es > minimo, del firewall no cuelga ningun ordenador y > este > no tiene ningun usuario "interno". > > > > iptables -A FORWARD -p tcp ! --syn -m state > > --state NEW -j DROP > > No consigo ver el objetivo de esto. �Est�s > > descartando todos los > > packets que no sean el primero! �Est�s segura que > > esto te funciona? > > [*] > > Respondiendo tamnbien al [*], Ok, quitare entonces > esto mejor... O:-) > > > > iptables -A FORWARD -i eth0 -j ACCEPT > > Esta regla va a acceptar todos los PRIMEROS > packets > > que vienen de > > eth0 (supongo que la tarjeta para la red interna); > > como ya descartaste > > los packets que vendr�n a continuaci�n, no > llegar�n > > a ser evaluados > > por esta regla. Recuerda que nat-prerouting viene > > antes. > > eth0 es la tarjeta de red que conecta el ordenador > con > Internet (y es unica, el firewall no hace de proxy a > una red interna). > > Al comentario: Ok :-) > > > > iptables -A FORWARD -m state --state > > ESTABLISHED,RELATED -j ACCEPT > > Esta es la regla que deberias haber puesto antes. > Si > > no me equivoco, > > todos los packets que son NEW no son ESTABLISHED o > > RELATED y vice > > versa (con alguna excepci�n por ejemplo con el > FTP). > > Como descartaste > > todos los que no sean NEW, nunca habr� packet que > va > > a llegar a esta > > regla. > > Ok O:-) Importante error :-D Ahora lo cambio :-) > ���Gracias!!! :-* > > > > iptables -A FORWARD -m limit --limit 3/minute > > --limit-burst 3 \ > > -j LOG --log-level DEBUG --log-prefix "IPT > > FORWARD > > packet died: " > > Limitar el log es buena idea, s�lo que llega > tarde. > > El target LOG ya > > lo ha encontrado antes, y los que no sean NEW ya > los > > descartaste. > > jejeje, otro peque�o error O:-) > > > > iptables -P INPUT DROP > > > iptables -P OUTPUT DROP > > > iptables -P FORWARD DROP > > > iptables -N icmp_packets > > > iptables -N tcp_packets > > > iptables -N udpincoming_packets > > > iptables -N allowed > > > iptables -A allowed -p TCP --syn -j ACCEPT > > Esto esencialmente es lo mismo que NEW (creo) > > Ok. > > > > iptables -A allowed -p TCP -m state --state > > ESTABLISHED,RELATED -j ACCEPT > > Esto ya lo comprobaste para la cadena FORWARD de > la > > table > > filter. �Porque no lo definista antes y saltas a > > "allowed" ya ahi? > > Pues ni idea, me lo mirare mejor, con tus > comentarios > he visto un poco mas la luz O:-) > > > > iptables -A allowed -p TCP -j DROP > > Creo que no es posible que llegues a esta regla. > > Todos los que sean > > SYN (NEW) plus todos los que sean > > ESTABLISHED,RELATED (!NEW), son 100% > > de los packets. �En que caso entonces puede tocar > > esta? > > Parece ser que en pocos O:-) Intentare mejorar las > cadenas a partir de tu comentario :-) > > > Toda esta tabla hace esencialmente lo mismo que un > > -j ACCEPT. > > > iptables -A icmp_packets -p ICMP -s 0/0 > > --icmp-type 0 -j ACCEPT > > > iptables -A icmp_packets -p ICMP -s 0/0 > > --icmp-type 3 -j ACCEPT > > > iptables -A icmp_packets -p ICMP -s 0/0 > > --icmp-type 5 -j ACCEPT > > > iptables -A icmp_packets -p ICMP -s 0/0 > > --icmp-type 11 -j ACCEPT > > Creo que deberias permitir todos los tipos de > ICMP; > > hay algunos > > mensajes mas o menos esot�ricas (por ejemplo los > que > > pueden ser > > generados en un ruta multipath cuando una l�nea > > cae). Si no quieres > > responder a los pings, puedes prohibir ellos > > explicitamente (o > > permitirlos s�lo desde alg�n IP conocido). > > Ok. Pero, (para los ICMP), si el ordenador no tiene > usuarios, �vale la pena que abra mas tipos ICMP? > > > > iptables -A tcp_packets -p TCP -s IP_PERMITIDA > > --dport 22 -j allowed > > > iptables -A tcp_packets -p TCP -s > > OTRA_IP_PERMITIDA --dport 22 -j allowed > > Aqui puede ser conveniente especificar tambi�n la > > interfaz de entrada > > para dificultar el IP spoofing. > > �aj�! Ahora lo pongo, gracias :-* > > > > iptables -A tcp_packets -p TCP -s X.Y.0.0/16 > > --dport 25 -j allowed > > OK. S�lo los de la univseridad pueden mandarte un > > mensaje. Aunque > > depender� donde llamas a esta tabla. > > Aqui tengo un problema. En el servidor tengo > instalado > el Mailman (el servidor de listas). Hoy he > descubierto > que con esta configuracion del firewall (ya que > antes, > cuando no tenia el firewall, creo que no pasaba) > solo > llegan a las listas los mails enviados desde la > universidad. Todo lo que se origina fuera no llega. > �Tiene algo que ver con esta restriccion? �O es > problema de la configuracion del Postfix? > > Si es problema de esta restriccion, �como hago para > que el SMTP solo se pueda utilizar desde dentro de > la > universidad pero el Mailman pueda recibir (y > reenviar) > mails enviados desde fuera? > > > > iptables -A tcp_packets -p TCP -s 0/0 --dport 80 > > -j allowed > > > iptables -A tcp_packets -p TCP -s 0/0 --dport > 110 > > -j allowed > > > iptables -A udpincoming_packets -p UDP -s 0/0 > > --source-port 53 -j ACCEPT > > > iptables -A udpincoming_packets -p UDP -s 0/0 > > --source-port 2074 -j ACCEPT > > Si tienes un DNS corriendo, tambi�n necesitar�s el > > 53 en tcp. No > > conozco el 2074. > > No tengo DNS, asi que lo quito :-) > > El 2074 ni idea ahora mismo, seguramente me lo copie > del IPtables HOWTO. > > > > iptables -t nat -A PREROUTING -i eth0 -s > > 192.168.0.0/16 -j DROP > > > iptables -t nat -A PREROUTING -i eth0 -s > > 10.0.0.0/8 -j DROP > > > iptables -t nat -A PREROUTING -i eth0 -s > > 172.16.0.0/12 -j DROP > > Antes has escrito: > > iptables -A FORWARD -i eth0 -j ACCEPT > > Con estas reglas invalidas la anterior, porque la > > cadena PREROUTING es > > lo primero que se toca (DROP) y la cadena FORWARD > de > > la tabla filter > > ni va a ver este packet. Aqui estoy asumiendo otra > > vez que eth0 sea la > > interface interna. Hm. Ser� que eth0 es la > externa? > > Si es la externa > > la regla anterior permitit�a el forward de > cualquier > > cosa a la red > > interna. No te estoy siguiendo. > > eth0 es la conexion que tiene el ordenador con > Internet, no hay otra interfaz. > > Entonces la cadena anterior sobra, �no? > > > [...] > > > > ---CUT--- > > > > > > Notas: > > > MI_IP es la IP del servidor. > > > X.Y.0.0/16 esta para que desde cualquier > ordenador > > > de > > > la universidad se puedan enviar mails mediante > el > > > SMTP > > > de mi servidor. > > > IP_PERMITIDA es la IP del ordenador desde el que > > > quiero que se pueda acceder mediante SSH. > > Se te escap� decir que es eth0. > > Es la ethernet que conecta al servidor con Internet, > es la unica ethernet del ordenador. No hay ninguna > red > interna detras del firewall. > > > > Las cadenas estas os sonaran pq me las he > copiado > del > > > IPtables HOWTO, adaptandolas a mis necesidades. > > > Pues no me suenan, y mi firewall es bien > diferente. > > �Este te funciona? > > Funciona con los problemas ya comentados: > > 1. No responde a los pings > 2. Cuando hago un scaneado de puertos desde fuera no > muestra los puertos abiertos > 3. Los mails enviados desde fuera de las IPs de la > universidad a listas gestionadas por el Mailman no > llegan. > > > > _Que os parece este filtrado? Parece estar > bastante > > > bien, _no? Se lo he ense_ado a un par de amigos > que > > > dominan el tema minimamente y me han dicho que > no > > > parece tener ningun fallo descomunal... > > > Bueno, la �ltima palabra la tiene la pr�ctica. Si > > > funciona lo que debe > > y > > si no funciona lo que no debe, el filtrado es > > perfecto. > > Bueno, no acaba de funcionar del todo por lo que > parece... > > > > El "problema" es el que el servidor no se deja > ni > > > pingear ni scannear (un scanner de puertos desde > > > > fuera > > > me devuelve que no hay ninguno abierto). _Esto > es > > > seguridad o *paranoia*? O:-) > > > No. Esto es un error. Ya se que con los iptables > se > > ha puesto de moda > > filtrar los pings. Primero no te ayuda, porque > > entonces usar�n el > > traceroute (hay diferentes versiones, algunos usan > > > UDP), y segundo > > est�s violando los est�ndars RFC. Por otra parte, > si > > quieres cojer tu > > correo, no se como lo vas a hacer si el puerto 110 > > > est� filtrado (si > > todos est�n filtrados, tambi�n el 110, �verdad?) Y > lo > mismo con el > > puerto 80, que no te va a incrementar mucho el > > contador de visitas en > > tu p�gina web. He marcado un comentario arriba con > > > [*], porque creo > > que es la explicaci�n porque el scanner de puertos > no > encuentra nada. > > Bueno, a ver si mis comentarios en este mail ayudan > un > poco mas :-) > > ���Muchas gracias por la respuesta Christoph!!! > > Besos :-* > > Deb > > __________________________________________________ > Do You Yahoo!? > Send your FREE holiday greetings online! > http://greetings.yahoo.com __________________________________________________ Do You Yahoo!? Send your FREE holiday greetings online! http://greetings.yahoo.com

