limitar descargas de archivos .iso.exe.rar

Forums: 

hola que tal amigos , aqui nuevamente , molestandoles
tengo un pequeño `problema con respecto a limitar descargar de archivos iso.exe

veran para eso estoy usando delay pools esta es mi confi con los delay pools

delay_pools 1 #1
delay_class 1 2 #1 2
delay_parameters 1 -1/-1 3200/3200 #delay_parameters 1 -1/-1 20000/22000
acl Descargas urlpath_regex -i \.(iso|cab|dll|exe|arj|rar|tar|zip|7z|lzh|lha|png|bmp)$
delay_access 1 allow Descargas

ok esa es mi confi , con los delay pools algunos exe,rar,si me los limita , cuando descargo algun programa , un ejemplo descargo el windows livw msn que pesa 15 MB y lo limita a 3.2 KB , hasta ahy todo bien peri el problema esya que si descargo algun archivo iso que pesa unos 600 MB , y tambien probe descargando un antivirus , pro me he dado cuenta que esos no los limita p, que raro si en mi confi de delay pools he puestyo que debe de limitar esas extentiones , pero parece ser que no lo hace con algunso exe si pero con otros exe no los hace y tampoco con lo iso

alguien por favor podria decirme , que esta pasando porque no los limita

hola acl

hola acl con respecto a tu ayuda


La solución es simple. Haz que también los paquetes al puerto 8080 se redireccionen al squid. Eso lo configuras en el filtro de paquetes. Como tu proxy es transparente ya debe existir una regla que redireccione tráfico sobre el puerto 80; simplemente debes hacer una equivalente para el 8080 (y cualquier otro que veas que tus clientes usen).

efectivamente acl mi proxy esta en el puerto 8080 y esta transparente


Como tu proxy es transparente ya debe existir una regla que redireccione tráfico sobre el puerto 80; simplemente debes hacer una equivalente para el 8080 (y cualquier otro que veas que tus clientes usen).

haber como lo haria para que estas iso que estan en esta url y que llevam un iso , que tienen el puerto 8080 lo mismo que el puerto de mi proxy, necesito que mi esas url pasen al puerto del squid para ser limitados


http://download.wifislax.com:8080/wifislax-3.1.iso

esta es mi confi de squid asi lo tengo


http_port 8080 transparent
icp_port 0
acl video_cache dstdomain -i "/usr/local/squid/etc/cache.flt"
cache allow video_cache
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF
cache_mem 200 MB
maximum_object_size 40000 KB
minimum_object_size 4 KB
maximum_object_size_in_memory 64 KB
cache_dir diskd /partition/squid/cache 5000 16 256 Q1=72 Q2=64
access_log /partition/squid/logs/access.log
cache_log /partition/squid/logs/cache.log
cache_store_log none

cache_effective_user nobody
cache_effective_group nogroup
pid_filename /var/run/squid.pid
half_closed_clients off
server_persistent_connections off
client_persistent_connections off
memory_pools on
buffered_logs on
pipeline_prefetch on

dns_retransmit_interval 15 seconds

#cache_swap_low 70
#cache_swap_high 90

refresh_pattern -i ^http://.*\.(css|htm|html|ico|js|jsp|xml)$ 1440 80% 999999
refresh_pattern -i ^http://.*\.(bmp|gif|jpeg|jpg|png)$ 1440 80% 999999 ignore-reload
refresh_pattern -i ^http://.*\.(ace|adt|arj|asf|avi|bin|bz2|bzip|cab|dat|dll|doc|dot|exe|fla|flv|gz|iso|lha|log|lzh|mdb|mid|mov|mp3|mpeg|mpg|msi|mso|ogg|pps|ppt|rar|rm|rtf|shs|src|sys|swf|tgz|tif|ttf|wav|wma|wri|wmv|vpu|vpaa|vqf|vob|zip)$ 43200 100% 999999 ignore-reload

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1/255.255.255.255
#acl to_localhost dst 127.0.0.1/32

acl SSL_ports port 443 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 8180
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl Safe_ports port 901

acl manager proto cache_object
acl PURGE method PURGE
acl CONNECT method CONNECT

http_access allow PURGE localhost
http_access allow manager localhost
http_access deny PURGE
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

############### DELAY POOLS ###################
delay_pools 3 #1
delay_class 1 2 #1 2
delay_parameters 1 -1/-1 3200/3200 #delay_parameters 1 -1/-1 6400/6400
acl Descargas urlpath_regex -i \.(iso|cab|dll|exe|arj|rar|tar|zip|7z|lzh|lha|png|bmp|mp3|mpga|wav|ra|ram|rm|mov|movie|mpeg|mpg|mpe|wmv|avi|rpm|gz|bz2|deb|ogg|ppt)$
delay_access 1 allow Descargas
################## FIN DELAY POOLS ###################

### Zero Penalty Hits ###
server_persistent_connections off
zph_mode tos
zph_local 0x30
acl downloads_blocked urlpath_regex -i \.scr$ \.bat$ \.pif$ \.cmd$
acl internal_net src "/usr/local/squid/etc/ipaccess.yes"

#Access deny to Squid ident. header
header_access Via deny all
header_access X-Forwarded-For deny all
header_access Proxy-Connection deny all
header_access Accept-Encoding deny all
http_reply_access deny downloads_blocked
http_access allow internal_net
http_access deny all
#http_reply_access allow all
#icp_access allow all
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
visible_hostname brazilfw
coredump_dir /partition/squid/cache
error_directory /usr/local/squid/share/errors/Spanish

agradeceria me dijieras como puedo hacer para que esa url que tiene isos que pasen por mi squid para ser limitados

Cita: efectivamente acl mi

Imagen de acl

[quote]
efectivamente acl mi proxy esta en el puerto 8080 y esta transparente
[/quote]
Eso está bien. Sin embargo, no creo haber sido lo suficientemente claro. Lo que tienes que configurar no es squid, sino iptables. Lo que necesitas es una regla en iptables más o menos así:


iptables -A PREROUTING -i interfazinterna -s ips.tu.red.interna/máscara -p tcp --dport 8080 -j REDIRECT --to-destination ip.de.tu.proxy:8080

Adáptala a tus necesidades.

Cuando un cliente inicia una conexión tcp a http://example.com:8080/ruta/a/un/archivo.iso, los paquetes llegan primero al gateway del cliente. El filtro de paquetes inspecciona las cabeceras de tcp e ip y como el puerto de destino no es 80, entonces la regla de redirección a squid no coincide y pasa a las siguientes, y lo reenvía al destinatario final (example.com, puerto 8080). Fíjate que squid no ha recibido el paquete y nada sabe de dicha conexión. Eso es lo que quieres evitar.

Para paquetes al puerto 80 lo que está sucediendo es que al llegar el paquete al filtro, se ve que va al puerto 80 y el filtro lo redirige a squid (la máquina local, puerto 8080). Ahí squid hace lo suyo, abre una nueva conexión al destinatario y te pasa los datos en la conexión original.

Páginas