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

RE: Acceder a red de oficina via VPN - iptables



 Creo que lo correcto sería establecer la política por defecto en drop y
luego ir abriendo... Tú lo que haces es establecer la política por defecto
en accept, luego aceptar (es redundante) algunas cosas y al final denegar
todo. Mareas mucho la perdiz. Además tendría q estar en otro orden para que
funcionara. Si quisieramos hacerlo a tu forma (que no es la correcta) sería
así: política por defecto en aceppt, luego deniego todo y al final acepto
las excepciones... El orden lo tienes cambiado e influye.

Un saludo.

Elvis

-----Mensaje original-----
De: KEBRA [mailto:kebranegest@gmail.com] 
Enviado el: jueves, 17 de abril de 2008 1:30
Para: debian-user-spanish@lists.debian.org
Asunto: Acceder a red de oficina via VPN - iptables

Estimados, hace unos días que intento conectarme a la red de mi trabajo
donde hay un router NORTEL el cual tiene la capacidad de configurar tuneles
VPN. Está todo bien configurado ya que tengo usuarios que desde distintas
partes del mundo se conectan a la red local de la empresa y trabajan
perfectamente.
Mi problemita es que desde mi casa no logro conectarme al trabajo, a menos
que salga directamente a Internet, sin pasar por mi firewall.

Iptables NO es mi fuerte, y he configurado el firewall con ayuda de colegas,
pero en este punto me he trabado más de la cuenta.

El firewall está montado en un etch 4.0, con dos tarjetas de red, una que
conecta al modem ADSL configurada como eth1 (conecta como ppp0) y otra
conectada al switch como eth0.

Adjunto el script de iptables a ver si alguien con mas experiencia que yo
puede ver el error.

----------------------------------------------------------------------------
------------------------------------
echo -n Aplicando reglas de Firewall...

## Aplicamos Flush de reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

## Establecemos politica por defecto
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT

## Empezamos a filtrar
## El localhost se deja
/sbin/iptables -A INPUT -i lo -j ACCEPT

# Al firewall tenemos acceso desde la red local iptables -A INPUT -s
10.0.0.0/24 -i eth0 -j ACCEPT

## http
iptables -A FORWARD -s 10.0.0.0/24 -i eth0 -p tcp --dport 80 -j ACCEPT

## https 443
iptables -A FORWARD -s 10.0.0.0/24 -i eth0 -p tcp --dport 443 -j ACCEPT

## Consulta de DNS
iptables -A FORWARD -s 10.0.0.0/24 -i eth0 -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -s 10.0.0.0/24 -i eth0 -p udp --dport 53 -j ACCEPT

## Mulita
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p tcp --dport 61116 -j ACCEPT
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p udp --dport 61117 -j ACCEPT
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p tcp --dport 4662 -j ACCEPT
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p udp --dport 4672 -j ACCEPT
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p udp --dport 4662 -j ACCEPT
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p tcp --dport 4672 -j ACCEPT
iptables -A FORWARD -s 10.0.0.2 -i eth0 -p tcp -j ACCEPT iptables -A FORWARD
-s 10.0.0.2 -i eth0 -p udp -j ACCEPT iptables -t nat -A PREROUTING -p tcp
--dport 61116:61119 -j DNAT --to
10.0.0.2:61116

##VPN
iptables -A OUTPUT -p tcp --dport 500 -j ACCEPT iptables -A FORWARD -i ppp0
-p tcp --dport 500 -j ACCEPT iptables -t nat -A PREROUTING -i ppp0 -p 17
--dport 500 -j DNAT --to 10.0.0.2:500


iptables -A INPUT -p udp --sport 500 --dport 500 -j ACCEPT iptables -A
OUTPUT -p udp --sport 500 --dport 500 -j ACCEPT iptables -A INPUT -p udp
--sport 50 --dport 50 -j ACCEPT iptables -A OUTPUT -p udp --sport 50 --dport
50 -j ACCEPT iptables -A INPUT -p 50 -j ACCEPT iptables -A OUTPUT -p 50 -j
ACCEPT ## Torrent iptables -A FORWARD -s 10.0.0.2 -i eth0 -p tcp --dport
42218 -j ACCEPT iptables -t nat -A PREROUTING -p tcp --dport 42218:42220 -j
DNAT --to
10.0.0.2:42218


## Gmail
iptables -A FORWARD -s 10.0.0.0/24 -i eth0 -p tcp --dport 465 -j ACCEPT
iptables -A FORWARD -s 10.0.0.0/24 -i eth0 -p tcp --dport 995 -j ACCEPT

################ Aceptamos ingresos con ssh solo desde la red local iptables
-A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT #### La siguiente linea
hablilita ssh desde el exterior. Cerrada esta mejor.
###iptables -A INPUT -p tcp --dport 22 -j ACCEPT

### Logueamos ###
#iptables -j LOG

# Y denegamos el resto. Si se necesita alguno, ya avisaran iptables -A
FORWARD -s 10.0.0.0/24 -i eth0 -j DROP

# Ahora hacemos enmascaramiento de la red local # y activamos el BIT DE
FORWARDING (imprescindible!!!!!) iptables -t nat -A POSTROUTING -s
10.0.0.0/24 -o ppp0 -j MASQUERADE

# Con esto permitimos hacer forward de paquetes en el firewall, o sea # que
otras maquinas puedan salir a traves del firewall.
echo 1 > /proc/sys/net/ipv4/ip_forward

## Y ahora cerramos los accesos indeseados del exterior:

# Nota: 0.0.0.0/0 significa: cualquier red

# Cerramos el rango de puerto bien conocido iptables -A INPUT -s 0.0.0.0/0
-p tcp --dport 1:1024 -j DROP iptables -A INPUT -s 0.0.0.0/0 -p udp --dport
1:1024 -j DROP

# Cerramos un puerto de gestion: webmin
#iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 10000 -j DROP # En este caso
comentado porque me gusta el webmin

# Cerrando Puerto 83 desconocido (es necesario eliminar ese servicio)
iptables -A INPUT -s 0/0 -p tcp --dport 83 -j DROP


echo " OK . Verifique que lo que se aplica con: iptables -L -n"
echo "Ejecutar ifconfig para verificar la configuracion de la red"

# Fin del script

----------------------------------------------------------------------------
------------------------------------



Desde ya agradeceré cualquier sugerencia.

Saludos.....




Reply to: