Hola comunidad una abrazo a todos, y agradeciendo la molestias que se toman
en leer este mail, aqui le vamos...

Bueno en mi trabajo tenemos un squid 2.6 + iptables, con accesso a 50
maquinas por red:

primero:

Las conexiones https: son encriptadas, tal es el uso de estas en gmail, para
que este protocolo pueda salir a la internet
simplemente dicho puerto 443 se lo redirecciona hacia fuera

iptables -A FORWARD -s <red_interna> -p tcp -m state --state NEW,ESTABLISHED
--dport 443 -j ACCEPT
iptables -A FORWARD -d <red_interna> -p tcp -m state --state ESTABLISHED
--sport 443 -j ACCEPT

hasta ahi todo bien pero ups un detalle, este protocolo no pasa por squid
bueno podrias redireccionarlo al squid mediante
el siguiente comando:

iptables -t nat -A PREROUTING -s <red_interna> -d ! <red_interna> -p tcp
--dport 443 -j REDIRECT --to-ports 3128

==> pero aqui pasa un pequeño detall sale un error... es decir el squid no
interpreta conexiones encriptadas mediante ssl, bueno pues me dije algo esta
mal hecho o algo no considere... bueno leyendo en san google
http://www.lanux.org.ar/pipermail/lista/2006-March/001886.html encontre lo
siguiente el famoso metodo CONNECT definido en el squid:

acl SSL_ports port 443 563
acl SAFE_ports port 80
acl SAFE_ports port 8080
acl SAFE_ports port 10000
acl CONNECT method CONNECT
http_access deny !SSL_ports !SAFE_ports
http_access deny CONNECT !SSL_ports

Según algunas paginas en google esto me debería funcionar pero no funciona
:( , eso sucede solo cuando agrego al firefox el proxy, me dirijos a la
pestaña de hermientas->opciones->Avanzado->red y coloco mi proxy que en mi
caso seria 192.168.5.10 (ejemplo), reinico el navegador ya no me conecta a
ninguna pagina https:\\ bueno ustedes me diran ya pes no conectes y que todo
salga de frente, lo que va al puerto 80 se redireccione al 3128 y lo que va
al puerto 443 se valla no mas hacia fuera, pero existe una tendencia a usar
protocolos https, que pasara cuando esto se generalice.

bueno pero hay un pequeño detalle de todo esto si no coloco el proxy en el
firefox por ejemplo cuando pongo http://localhost , para que me carge el
apache, nada no carga nada, le pongo el proxy ahi mismo me carga :S en donde
estare haciendo mal aqui mi configuracion de squid e iptables

squid.conf


# Puerto de escucha
http_port        3128 transparent


######################################################################
########################## Opciones de cache #########################
######################################################################

# Patrones cuya coincidencia haran que no sean guardadas en la cache
acl        QUERY    urlpath_regex cgi-bin \? \.php \.asp
no_cache    deny    QUERY

# Modelo de reemplazo de objetos de la cache para su mantenimiento y
# uso de espacio en disco
cache_replacement_policy heap LFUDA

#Maximo tamano de objetos en la cache
maximum_object_size 156 MB

# El limite menor y mayor en porcentaje de uso del espacio designado
# para la cache. Dentro de esos limites se maneja el reemplazo de
# objetos antiguos
cache_swap_low 80
cache_swap_high 95

######################################################################################
######################################################################
##################### Parametros administrativos #####################
######################################################################

# Usuario y grupo con el que se ejecuta Squid
cache_effective_user    proxy
cache_effective_group    proxy

####################################################################
########################## Rutas de archivos #########################
######################################################################

# Directorio de la cache y sus opciones
cache_dir         ufs /var/spool/squid 2000 16 256

# Ruta del archivo de registro de consultas de los clientes
cache_access_log    /var/log/squid/access.log

# Ruta de archivo de registro del desempeño de la cache
cache_log         /var/log/squid/cache.log

# Ruta del archivo de registro de los objetos guardados y removidos
# de la cache
cache_store_log        none

# Deshabilitar el registro de la swap de la cache
cache_swap_log        /var/log/squid/swap.log

# Archivo de registro del campo User-Agent para todas las peticiones
# HTTP
useragent_log        /var/log/squid/useragent.log

# Registrar los tipos MIME en cada peticion HTTP
log_mime_hdrs        off

# Ruta del archivo PID de Squid
pid_filename         /var/run/squid.pid

######################################################################
######################## Opciones miscelaneas ########################
######################################################################

# Numero de rotaciones a realizar en los logs
logfile_rotate        3

# Idioma usado para los mensajes de error mostrados por Squid
error_directory        /usr/share/squid/errors/Spanish

# Aplicacion de redireccion para filtrado
redirect_program    /usr/bin/squidGuard -c /etc/squid/squidGuard.conf

# Numero de procesos a ejecutarse del redirector
redirect_children    15

# No mostrar la IP desde la que el cliente hace la peticion
forwarded_for        off
mime_table        /etc/squid/mime.conf

######################################################################
######################### Control de accesos #########################
######################################################################

# Listas de acceso genericas
acl all         src 0.0.0.0/0.0.0.0

#hi5
acl redsocial   url_regex -i "/etc/squid/redsocial"
acl permitidos-redsocial   src "/etc/squid/acl/permitidos-redsocial"

#rapidshare
acl webarchivos   url_regex -i "/etc/squid/webarchivos"
acl permitidos-webarchivos src "/etc/squid/acl/permitidos-webarchivos"

#Videos para ver
acl webvideos   url_regex -i "/etc/squid/webvideos"
acl permitidos-webvideos  src "/etc/squid/acl/permitidos-webvideos"

#otras paginas
acl otrasPaginas url_regex -i "/etc/squid/otrosWeb"

###nueva sub red
acl laboratorio1    src 172.16.0.0/24
acl laboratorio2     src 172.16.1.0/24

## ips que no pasan por delay pools ##
acl laboratorio1-libre src "/etc/squid/acl/laboratorio1-libre"
acl laboratorio2-libre src "/etc/squid/acl/laboratorio2-libre"

# Puertos permitidos
acl    SSL_ports     port 443 563
acl    Safe_ports    port 80
acl    Safe_ports    port 8080
acl     CONNECT method CONNECT

## acl de extensiones con trafico reducido ##
acl extensiones url_regex -i "/etc/squid/acl/extensiones"
acl tipo_mime_req.videos req_mime_type "/etc/squid/mime_agr.videos"
acl tipo_mime_rep.videos rep_mime_type "/etc/squid/mime_agr.videos"

acl tipo_mime_req.ficheros req_mime_type "/etc/squid/mime_agr.ficheros"
acl tipo_mime_rep.ficheros rep_mime_type "/etc/squid/mime_agr.ficheros"

# Listas de acceso especiales
acl    paginas-adm    dstdomain "/etc/squid/nocache"

# Acceso a todos
http_access deny redsocial !permitidos-redsocial
http_access deny webarchivos !permitidos-webarchivos
http_access deny webvideos !permitidos-webvideos
http_access deny otrasPaginas
##Aqui ta el dilema esta coneccion es la que no funca
http_access deny !SSL_ports !Safe_ports !paginas-adm
http_access deny CONNECT !SSL_ports
http_access deny gtalk
http_access allow laboratorio1
http_access allow laboratorio2
http_access allow laboratorio1-libre
http_access allow laboratorio2-libre
http_access deny all

delay_initial_bucket_level 75
delay_pools             4

# Definicion de las clases de cada delay pool
delay_class             1       2
delay_class             2       2
delay_class        3    2
delay_class        4    2

# Parametros de control de cada delay pool definida
delay_parameters        1       131072/131072    65536/65536
delay_parameters        2       65536/65536      32768/32768
delay_parameters        3       32768/32768     16384/16384
delay_parameters        4           -1/-1              -1/-1

# Control de accesos al control de las delay pools
delay_access        1    allow laboratorio1
delay_access        1    allow laboratorio2
delay_access        2    allow extensiones
delay_access        2    allow tipo_mime_req.ficheros
delay_access        3    allow tipo_mime_req.videos
#delay_access      2    allow tipo_mime_rep
delay_access        4    allow laboratorio1-libre
delay_access        4    allow laboratorio2-libre

iptables ...

#e Generated by iptables-save v1.4.2 on Thu Jun 18 03:26:50 2009
*nat
:PREROUTING ACCEPT [47:3720]
:POSTROUTING ACCEPT [77:4638]
:OUTPUT ACCEPT [71:4258]

######  Proxy transparente
-A PREROUTING -s 172.16.0.32/27 -d ! 172.16.0.32/27 -i eth1 -p tcp -m tcp
--dport 80 -j REDIRECT --to-ports 3128

##### Enmascaramiento de la red
-A POSTROUTING -s 172.16.0.0/16 -o eth0 -j MASQUERADE

COMMIT
# Completed on Thu Jun 18 03:26:50 2009
# Generated by iptables-save v1.4.2 on Thu Jun 18 03:26:50 2009
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]

-A FORWARD -s 172.16.1.0/24 -d ! 172.16.1.0/24 -p tcp --dport 443 -j ACCEPT
-A FORWARD -s ! 172.16.1.0/24 -d 172.16.1.0/24 -p tcp --sport 443 -j ACCEPT
########################################################################
################ ACCESO LOCALHOST
########################################################################
-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT

#########################################################################
########## SALIDA PA EL PROXY
#########################################################################
-A INPUT -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j
ACCEPT

#Internet para las redes locales

-A INPUT -s 172.16.0.0/24 -i eth1 -p tcp -m tcp --dport 3128 -m state
--state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth1 -p tcp -m tcp --sport 3128 -d 172.16.0.0/24 -m state
--state ESTABLISHED -j ACCEPT

-A INPUT -s 172.16.1.0/24 -i eth1 -p tcp -m tcp --dport 3128 -m state
--state NEW,ESTABLISHED -j ACCEPT
-A OUTPUT -o eth1 -p tcp -m tcp --sport 3128 -d 172.16.1.0/24 -m state
--state ESTABLISHED -j ACCEPT
#---------------------------------------------------------------------------------------------------------

### Para dns
-A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT

-A FORWARD -s 172.16.0.0/24 -d ! 172.16.0.0/24 -p udp -m udp --dport 53 -j
ACCEPT
-A FORWARD -s ! 172.16.0.0/24 -d 172.16.0.0/24 -p udp -m udp --sport 53 -j
ACCEPT

-A FORWARD -s 172.16.1.0/24 -d ! 172.16.1.0/24 -p udp -m udp --dport 53 -j
ACCEPT
-A FORWARD -s ! 172.16.1.0/24 -d 172.16.1.0/24 -p udp -m udp --sport 53 -j
ACCEPT

############################################################################
##################### PING
###########################################################################
-A INPUT -i eth0 -p icmp -j ACCEPT
-A OUTPUT -o eth0 -p icmp -j ACCEPT

-A INPUT -i eth1 -p icmp -j ACCEPT
-A OUTPUT -o eth1 -p icmp -j ACCEPT

-A FORWARD -i eth1 -o eth0 -p icmp -j ACCEPT
-A FORWARD -i eth0 -o eth1 -p icmp -j ACCEPT

#########################################################
### Configuracion avanzada #####
#########################################################
### Bloqueo de paginas
-A FORWARD -s 172.16.0.0/16 -d 59.106.108.86 -j DROP

# https libre
-A FORWARD -s 172.16.0.0/24 -p tcp -m tcp --dport 443 -j ACCEPT
-A FORWARD -d 172.16.0.0/24 -p tcp -m tcp --sport 443 -j ACCEPT

#### Acceso al skype ####
#-A FORWARD -s 172.16.0.36/27 -d ! 172.16.0.36/27 -j ACCEPT
#-A FORWARD -s ! 172.16.0.36/27 -d 172.16.0.36/27 -j ACCEPT

##Acceso al skype por rango de ip
#-A FORWARD -d ! 172.16.0.0/16 -p tcp -m iprange --src-range
172.16.0.1-172.16.0.254 -j ACCEPT
#-A FORWARD -d ! 172.16.0.0/16 -p tcp -m iprange --dst-range
172.16.0.1-172.16.0.254 -j ACCEPT

##Acceso al MSN
-A FORWARD -s 172.16.0.44 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT
-A FORWARD -s 172.16.0.135 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT
-A FORWARD -s 172.16.0.136 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT
-A FORWARD -s 172.16.0.139 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT
-A FORWARD -s 172.16.0.48 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT
-A FORWARD -s 172.16.0.53 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT
-A FORWARD -s 172.16.0.60 -d ! 172.16.0.0/16 -p tcp -m tcp --dport 1863 -j
ACCEPT

#Acceso de la red local a la maquina servidor 192.168.6.10
-A FORWARD -s 172.16.1.0/24 -d 192.168.6.10 -p tcp --dport 381 -m state
--state NEW,ESTABLISHED -j ACCEPT
-A FORWARD -d 172.16.1.0/24 -s 192.168.6.10 -p tcp --sport 381 -m state
--state ESTABLISHED -j ACCEPT

COMMIT



:P gracias de antemano

--~--~---------~--~----~------------~-------~--~----~
GUS-BR - Grupo de Usuários de Slackware Brasil
http://www.slackwarebrasil.org/
http://groups.google.com/group/slack-users-br

Antes de perguntar:
http://www.istf.com.br/perguntas/

Para sair da lista envie um e-mail para:
[email protected]
-~----------~----~----~----~------~----~------~--~---

Responder a