Bueno, veo que el correo me llego sin el adjunto, al parecer las listas no lo dejan pasar, pego el contenido del script para que lo puedan ver!
#! /bin/bash #---------------------------------------------------------------------- # Description: # Author: Eduardo R. Barrera Pérez <[EMAIL PROTECTED]> # Created at: Fri Aug 29 10:15:23 CDT 2006 # Computer: galileo.jcpn.pri.jovenclub.cu <192.168.2.50> # System: Linux 2.6.18-6 on i686 # #---------------------------------------------------------------------- echo -n Este script activara el firewall # Declaramos las variables es mas optimo trabajar de esta forma ya que si hay que variar algun valor solo tenemos que asignar un nuevo valor a la variable # y no Regla por Regla # Servidores y Router mxi=172.16.22.1 mxe=192.168.2.50 profe=172.16.22.2 #Redes red_local=172.16.22.0/24 loopback_broadcast=127.0.0.0/255.0.0.0 #Cargamos los modulos necesarios (NOTA ES IMPRESCINDIBLE CARGAR LOS MODULOS ip_conntrack_ftp ip_nat_ftp PARA QUE FUNCIONE EL SERVICIO FTP. modprobe ip_tables modprobe ip_conntrack modprobe ip_conntrack_ftp modprobe ip_nat_ftp modprobe iptable_nat modprobe ipt_LOG modprobe ipt_TOS modprobe ipt_REJECT modprobe ipt_pkttype modprobe iptable_filter modprobe ipt_state modprobe ipt_owner modprobe iptable_mangle modprobe ipt_mac modprobe ipt_REDIRECT modprobe ipt_MASQUERADE # Activamos syncookies echo 1 > /proc/sys/net/ipv4/tcp_syncookies # Rechazamos todos los paquete ICMP que pertenezcan a un broadcast echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Activamos ip forward entre Eths echo 1 > /proc/sys/net/ipv4/ip_forward # Aplicamos politica por defecto DROP a las cadenas INPUT FORWARD OUTPUT iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT DROP ####################################################################--INPUT-INPUT-INPUT--############################################################### # Permitir Todo el Trafico a la INTERFAZ LOOPBACK iptables -A INPUT -i lo -j ACCEPT # HACERLE DROP A CUALQUIER PAQUETE QUE CONTENGA UNA CONJUGACION DE FLGAS TCP INCORRECTA iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP iptables -A INPUT -m state --state INVALID -j DROP # Hacer DROP a la direccion de red 127.0.0.0/255.0.0.0 iptables -A INPUT -s $loopback_broadcast -j DROP iptables -A INPUT -d $loopback_broadcast -j DROP # Permitir Conexiones ya establecidas a los protocolos TCP,UDP iptables -A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A INPUT -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT # ICMP En este caso solo permitiremos los dos tipos de echo para el ping (echo-request) (echo-reply) iptables -A INPUT -p icmp --icmp-type echo-reply -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -m state --state NEW -d $mxe -s 192.168.24.0/29 -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -m state --state NEW -d $mxi -s $profe -j ACCEPT iptables -A INPUT -p icmp -i eth1 -s 172.16.22.0/24 -d 172.16.22.1 -m icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p icmp -j DROP # DNS iptables -A INPUT -p udp -m state --state NEW -m udp --dport 53 -s 192.168.0.0/16 -d $mxe -j ACCEPT iptables -A INPUT -p udp -m state --state NEW -m udp --dport 53 -s 172.16.22.0/24 -d $mxi -j ACCEPT # SSH (Permitimos acceso SSH solo al administrador del nodo y a los demas servidores. iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport ssh -s 192.168.24.0/29 -d $mxe -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport ssh -s $profe -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport ssh -s 172.16.22.16 -d $mxi -j ACCEPT #FTP iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -s 192.168.0.0/16 -d $mxe -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -s 172.16.22.0/24 -d $mxi -j ACCEPT # DHCP iptables -A INPUT -p udp -m state --state NEW -m udp --dport 67 -s 172.16.22.0/24 -d $mxi -j ACCEPT # Jabber iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5222 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5223 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5269 -s 192.168.0.0/16 -d $mxe -j ACCEPT # HTTP iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport http -s 192.168.0.0/16 -d $mxe -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport http -s 172.16.22.0/24 -d $mxi -j ACCEPT # HTTPS iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport https -s 192.168.0.0/16 -d $mxe -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport https -s 172.16.22.0/24 -d $mxi -j ACCEPT # PROXY iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3128 -s 172.16.22.0/24 -d $mxi -j ACCEPT # NTP iptables -A INPUT -p udp -m state --state NEW -m udp --dport 123 -s 172.16.22.0/24 -d $mxi -j ACCEPT # SAMBA iptables -A INPUT -p udp -m state --state NEW -m udp --dport 137 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 137 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p udp -m state --state NEW -m udp --dport 138 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 138 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p udp -m state --state NEW -m udp --dport 139 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 139 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p udp -m state --state NEW -m udp --dport 445 -s 172.16.22.0/24 -d $mxi -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 445 -s 172.16.22.0/24 -d $mxi -j ACCEPT # Mysql iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -s 192.168.24.5 -d $mxe -j ACCEPT iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -s $profe -d $mxi -j ACCEPT ###################################################################--OUTPUT-OUTPUT-OUTPUT--############################################################ # Permitir Todo el Trafico a la INTERFAZ LOOPBACK iptables -A OUTPUT -o lo -j ACCEPT # HACERLE DROP A CUALQUIER PAQUETE QUE CONTENGA UNA CONJUGACION DE FLAGS TCP INCORRECTA iptables -A OUTPUT -m pkttype --pkt-type broadcast -j DROP iptables -A OUTPUT -m state --state INVALID -j DROP # Hacer DROP a la direccion de red 127.0.0.0/255.0.0.0 iptables -A OUTPUT -s $loopback_broadcast -j DROP iptables -A OUTPUT -d $loopback_broadcast -j DROP # Permitir Conexiones ya establecidas a los protocolos TCP,UDP iptables -A OUTPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT # ICMP En este caso solo permitiremos los dos tipos de echo para el ping iptables -A OUTPUT -p icmp --icmp-type echo-request -m state --state NEW -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-reply -m state --state ESTABLISHED,RELATED -s $mxi -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-reply -m state --state ESTABLISHED,RELATED -s $mxe -j ACCEPT iptables -A OUTPUT -p icmp -o eth1 -s 172.16.22.1 -d 172.16.22.0/24 -m icmp --icmp-type echo-reply -j ACCEPT # SSH iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -m tcp --dport ssh -j ACCEPT # POP3 iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.24.6 -m tcp --dport 110 -j ACCEPT # SMTP iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.24.6 -m tcp --dport 25 -j ACCEPT # MRTG iptables -A OUTPUT -p udp -m state --state NEW -s $mxe -d 192.168.2.49 -m udp --dport 161 -j ACCEPT # Jabber iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.0.0/16 -m tcp --dport 5222 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.0.0/16 -m tcp --dport 5269 -j ACCEPT # DNS iptables -A OUTPUT -p udp -m state --state NEW -s $mxe -m udp --dport 53 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -m tcp --dport 53 -j ACCEPT # HTTP iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.0.0/16 -m tcp --dport 80 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -s $mxi -d 172.16.22.0/24 -m tcp --dport 80 -j ACCEPT # HTTPS iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.0.0/16 -m tcp --dport 443 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -s $mxi -d 172.16.22.0/24 -m tcp --dport 443 -j ACCEPT # FTP iptables -A OUTPUT -p tcp -m state --state NEW -s $mxe -d 192.168.0.0/16 -m tcp --dport 21 -j ACCEPT # PROXY iptables -A OUTPUT -p tcp -m state --state NEW -o eth0 -s $mxe -d 192.168.24.4 -m tcp --dport 3128 -j ACCEPT # SAMBA iptables -A OUTPUT -p udp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m udp --dport 137 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m tcp --dport 137 -j ACCEPT iptables -A OUTPUT -p udp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m udp --dport 138 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m tcp --dport 138 -j ACCEPT iptables -A OUTPUT -p udp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m udp --dport 139 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m tcp --dport 139 -j ACCEPT iptables -A OUTPUT -p udp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m udp --dport 445 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -o eth1 -s $mxi -d 172.16.22.0/24 -m tcp --dport 445 -j ACCEPT # NTP iptables -A OUTPUT -p udp -m state --state NEW -o eth0 -s $mxe -d 192.168.24.4 -m udp --dport 123 -j ACCEPT # Escritorio Remoto iptables -A OUTPUT -p tcp -m state --state NEW -o eth0 -s $mxe -d 192.168.0.0/16 -m tcp --dport 3389 -j ACCEPT iptables -A OUTPUT -p tcp -m state --state NEW -o eth0 -s $mxi -d 172.16.22.0/24 -m tcp --dport 3389 -j ACCEPT ##############################################################--NAT--NAT--NAT--############################################################ # Hacemos NAT a la conexiones de la PC Intructores iptables -t nat -A POSTROUTING -p tcp -m tcp --dport 110 -s 172.16.22.2 -d 192.168.24.6 -j SNAT --to-source 192.168.2.50 iptables -t nat -A POSTROUTING -p tcp -m tcp --dport 25 -s 172.16.22.2 -d 192.168.24.6 -j SNAT --to-source 192.168.2.50 iptables -t nat -A POSTROUTING -p tcp -m tcp --dport 21 -s 172.16.22.17 -d 192.168.24.3 -j SNAT --to-source 192.168.2.50 ###################################################################--FORWARD-FORWARD-FORWARD--############################################################ # Permitir Todo el Trafico a la INTERFAZ LOOPBACK iptables -A FORWARD -o lo -j ACCEPT # HACERLE DROP A CUALQUIER PAQUETE QUE CONTENGA UNA CONJUGACION DE FLAGS TCP INCORRECTA iptables -A FORWARD -m pkttype --pkt-type broadcast -j DROP iptables -A FORWARD -m state --state INVALID -j DROP # Hacer DROP a la direccion de red 127.0.0.0/255.0.0.0 iptables -A FORWARD -s $loopback_broadcast -j DROP iptables -A FORWARD -d $loopback_broadcast -j DROP # Permitir Conexiones ya establecidas a los protocolos TCP,UDP iptables -A FORWARD -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p tcp -s 172.16.22.2 -d 192.168.24.6 --dport 25 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p tcp -s 172.16.22.2 -d 192.168.24.6 --dport 110 -j ACCEPT iptables -A FORWARD -i eth1 -o eth0 -p tcp -s 172.16.22.17 -d 192.168.24.3 --dport 21 -j ACCEPT > Hola lista, vengo tengo un problema que estoy arrastrando ya hace algún > tiempo el cual no lo he podido solucionar. Tengo una pequeña red de la > siguiente forma: Un servidor Debian Etch con 2 interfaces de RED físicas > (eth0 y eth1) y 11 estaciones de trabajo, con Windows, dicho servidor > tiene los siguientes servicios: DNS (vistas), Proxy (squid), WWW > (apache2), Correo (Postfix), Samba (PDC), etc... Tengo 2 redes > (192.168.2.48/30 y 172.16.22.0/24) donde el router es el 192.168.2.49 y la > eth0 del servidor es 192.168.2.50 con máscara 255.255.255.252 y puerta de > enlace el ip del router. Bueno, todo funciona muy bien, excepto cuando > activo el script con las reglas del firewall, cada vez que activo el > firewall y un usuario va a iniciar sesión en una estación de trabajo, le > dice que el dominio no esta disponible, si ese usuario ya se había logeado > anteriormente en esa maquina, entonces te dice que se iniciará sesión con > un perfil local, pero si el usuario nunca antes había iniciado sesión en > esa PC, pues simplemente no se puede loguear en la estación de trabajo, > pero si el firewall no está corriendo, nada de esto sucede. > > Bien, el DNS esta configurado con vistas, de forma que la RED interna que > usa una clase B, cualquier consulta DNS de una estación de trabajo > referida al nombre del servidor o a alguno de los CNAME que responden a > los varios virtualhost que existen en apache, siempre el DNS del servidor > les responde usando la ip interna, es decir 172.16.22.1 aqui les pongo las > reglas de iptables, para ver si los que dominan bien esta materia > encuentran el problema que yo no veo. > > Nota: Espero que la lista deje pasar el adjunto, es pequeño. > _________________________________________ Eduardo R. Barrera Pérez Administrador Nodo Jovenclub Pinar del Río Web-Site: http://www.pinar.jovenclub.cu Jabber & Email: [EMAIL PROTECTED] _______________________________________________ Cancelar suscripción https://listas.softwarelibre.cu/mailman/listinfo/linux-l Buscar en el archivo http://listas.softwarelibre.cu/buscar/linux-l
