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

Responder a