[Previo por Fecha] [Siguiente por Fecha] [Previo por Hilo] [Siguiente por Hilo]

[Hilos de Discusión] [Fecha] [Tema] [Autor]

[Sop.Tec.LinuxPPP] IPTABLES-como-duda



   Hola muchachos, nuevamente acudiendo a su ayuda
para tratar de solucionar un pequeño gran problema que
tengo. Resulta que leventé un Squid proxy transparente
por el cual toda mi red puede salir. Puedo ver en el
"access.log" cómo se van registrando las consultas e
incluso coloqué restricciones para las páginas
indecorosas (porno) y me ha funcionado. El pequeño
gran problema es que cuando el navegador intenta
entrar a las páginas seguras "https://..."; resulta que
no entran nunca, me manda por un tubo, simplemente
pasa el tiempo y mada el mensaje de que no puede ser
encontrado el servidor, tal como si hubiera escrito
una dirección erronea, y algo muy extraño me pasa
cuando le indico que conecte al MSN Messenger, en
ocasiones se logra conectar y en ocasiones simplemente
no conecta diciendome que verifique mi conexión a
Internet, dejo pasar un rato y entonces si me permite
establecer conexión ¿a alguien le ha sucedido esto?.

Por más que he revisado mis reglas del IPTABLES no
encuentro por dónde me esta fallando. Aquí las coloco
para ver si me pueden ayudarme e indicarme en qué
parte tengo el error y arreglar esto. Ah, y también
algo que tal ves se arregle al solucionar eso es que
por ejemplo, si me conecto dentro de mi misma red a un
servidor FTP me coneta sin ningún problema, pero si
intento acceder a otro servidor fuera de mi red
entonces ya no logro establecer conexión con el
servidor remoto, aunque me responda el ping y
asegurandome de que si está activo y en espera de
conexiones.

Tengo en mi equipo 2 tarjetas:

eth0 = Internet
eth1 = LAN

Y este es el script con el que funciona en este
momento el IPTABLES:

#!/bin/bash

IPT=/sbin/iptables
MOD=/sbin/modprobe

echo "- Eliminando las reglas anteriores..."
$IPT -F
$IPT -X
$IPT -Z

echo "- Cargando los modulos necesarios..."
$MOD ip_tables
$MOD ip_conntrack
$MOD ip_conntrack_ftp
$MOD ip_conntrack_irc
$MOD ipt_REJECT
$MOD ipt_REDIRECT
$MOD ipt_TOS
$MOD ipt_MASQUERADE
$MOD ipt_LOG
$MOD iptable_mangle
$MOD iptable_nat
$MOD ip_nat_ftp
$MOD ip_nat_irc

#$IPT -P INPUT DROP
#$IPT -P FORWARD DROP
#$IPT -P OUTPUT DROP

echo "- Activando el reenvío de paquetes..."
echo 1 > /proc/sys/net/ipv4/ip_forward

echo "- Estableciendo politicas de reenvio..."
$IPT -t filter -P FORWARD DROP

echo "- Reenvio del trafico interno-externo y
externo-interno..."
$IPT -t filter -A FORWARD -d 0/0 -s 192.168.41.0/24 -o
eth0 -j ACCEPT
$IPT -t filter -A FORWARD -d 192.168.41.0/24 -j ACCEPT

echo "- Enmascaramiento de TODO el trafico
saliente..."
$IPT -t nat -A POSTROUTING -o eth0 -j MASQUERADE

echo "- NO enmascaramos el trafico externo..."
$IPT -t nat -A POSTROUTING -o eth0 -d 0/0 -j ACCEPT

echo "- Permitiendo a la red interna ir a donde
sea..."
$IPT -t filter -A INPUT -s 192.168.41.0/24 -d 0/0 -j
ACCEPT
$IPT -t filter -A OUTPUT -s 192.168.41.0/24 -d 0/0 -j
ACCEPT
$IPT -t filter -A OUTPUT -p icmp -s 192.168.41.0/24 -d
0/0 -j ACCEPT

echo "- Redireccionando todas las peticiones al puerto
3128..."
# FTP-data
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 20 -j
REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -i eth1 -p udp --dport 20 -j
REDIRECT --to-port 3128
# FTP
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 21 -j
REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -i eth1 -p udp --dport 21 -j
REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 115
-j REDIRECT --to-port 3128
# HTTP
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j
REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 563
-j REDIRECT --to-port 3128
# HTTPS
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 443
-j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -i eth1 -p udp --dport 443
-j REDIRECT --to-port 3128
# MSN Messenger
$IPT -t nat -A PREROUTING -i eth1 -p tcp --dport 1863
-j REDIRECT --to-port 3128

echo "Permitiendo la comunicación con el servidor
DNS..."
$IPT -A INPUT -p udp --dport 53 -j ACCEPT

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

Hasta aquí llega el script, espero alguien me pueda
ayudar ya que es lo único que me hace falta para poder
migrar todos mis equipos a mi cajita Linux.

Ojalá me puedan hechar la mano en este "misterio sin
resolver" :)

Saludos.


_________________________________________________________
Do You Yahoo!?
Información de Estados Unidos y América Latina, en Yahoo! Noticias.
Visítanos en http://noticias.espanol.yahoo.com
-- 
Lista de soporte de LinuxPPP
Dirección email: Linux en linuxppp com
Dirección web: http://mail.linuxppp.com/mailman/listinfo/linux
Reglas de la lista: http://linuxppp.net/reglas.html



[Hilos de Discusión] [Fecha] [Tema] [Autor]