Actualizado el 17 de Abril del 2021 (Publicado el 4 de Agosto del 2018)
601 visualizaciones desde el 4 de Agosto del 2018
64,8 KB
8 paginas
Creado hace 21a (30/01/2004)
Controlar la velocidad de internet: Squid con colas
Controlar la velocidad de internet: Squid con
colas
Por Paco Aldarias Raya
Impreso: 30 de enero de 2004
Email: pacolinux arroba inicia punto es
Web: http://pagina.de/pacodebian
Con Linux Debian. En Valencia (España)
Este documento es de libre reproducción siempre que se cite su fuente.
Realizado con: LATEX
Índice
Índice
1. Introducción
2. Instalación
3. Bajar la última versión de squid
4. Compilar squid para colas
5. Configurar Squid para poder usar la prestación de las delay
pools
6. Usuario squid
7. Bibliografía
Índice alfabético
1
1
1
1
2
2
6
6
7
Por Paco Aldarias
1/7
Controlar la velocidad de internet: Squid con colas
1.
Introducción
Existe un problema en una red local, donde varios usuarios se conectan a
internet y es que cuando algien se quiere bajar un archivo, consume todo el
ancho de banda, dejando al resto de usuarios sin casi velocidad de conexión.
Vamos a controlar el ancho de banda del proxy squid usando colas de
prioridad o delay pools.
Esto está probado con linux debian woody.
2.
Instalación
Instalaremos las utilidades de compilación, desde consola como root:
apt-get install gcc libc-dev make
3. Bajar la última versión de squid
http://www.squid-cache.org
Yo me baje el fichero:
squid-2.5.STABLE4.tar.gz
Descomprimirlo en /var/tmp:
tar xzpf squid-2.5.STABLE4.tar.gz
4. Compilar squid para colas
1. Como usuario normal. Todo es la misma linea:
./configure –prefix=/opt/squid –exec-prefix=/opt/squid –enable-delay-
pools –enable-cache-digests –enable-poll –disable-ident-lookups –enable-
truncate –enable-removal-policies
2. Como usuario normal.
make all
3. Como usuario root:
make install
5. Configurar Squid para poder usar la pres-
tación de las delay pools
/opt/squid/etc/squid.conf
Por Paco Aldarias
2/7
Controlar la velocidad de internet: Squid con colas
#squid.conf
#Todas las opciones de este archivo se encuentran muy bien documentadas en el
#propio squid.conf así
#como en http://www.visolve.com/squidman/Configuration%20Guide.html
#
#Los puertos por los que escuchará nuestro Squid.
http_port 8080
icp_port 3130
#los cgi-bin no se cachearán.
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#La memoria que usará Squid. Bueno, Squid usará mucha más que ésa.
cache_mem 16 MB
#250 significa que Squid usará 250 megabytes de espacio en disco.
cache_dir ufs /cache 250 16 256
#Lugares en los que irán los archivos de bitácora de Squid.
cache_log /var/log/squid/cache.log
cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log
cache_swap_log /var/log/squid/swap.log
#Cuántas veces rotar los archivos de bitácora antes de borrarlos.
#Acuda a la FAQ para más información.
logfile_rotate 10
redirect_rewrites_host_header off
cache_replacement_policy GDSF
acl localnet src 192.168.1.0/255.255.255.0
acl localhost src 127.0.0.1/255.255.255.255
acl Safe_ports port 80 443 210 119 70 20 21 1025-65535
acl CONNECT method CONNECT
acl all src 0.0.0.0/0.0.0.0
http_access allow localnet
http_access allow localhost
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all
maximum_object_size 3000 KB
store_avg_object_size 50 KB
Por Paco Aldarias
3/7
Controlar la velocidad de internet: Squid con colas
#Configure esto si quiere que su proxy funcione de manera transparente.
#Eso significa que por lo general no tendrá que configurar todos los
#navegadores de sus clientes, aunque tiene algunos inconvenientes.
#Si deja esto sin comentar no pasará nada peligroso.
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
#Todos los usuarios de nuestra LAN serán vistos por los servidores web
#externos como si usasen Mozilla en Linux. :)
anonymize_headers deny User-Agent
fake_user_agent Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.6+) Gecko/20011122
#Para acelerar aún más nuestra conexión ponemos dos líneas similares a las
#de más abajo. Apuntarán a un servidor proxy [parent] que usará nuestro propio
#Squid. No olvide cambiar el servidor por uno más rápido para usted.
#Puede utilizar ping, traceroute y demás herramientas para comprobar la
#velocidad. Asegúrese de que los puerto http e icp son los correctos.
#Descomente las líneas que comienzan por "cache_peer" de ser necesario.
#Éste es el proxy que va a usar para todas las conexiones...
#cache_peer w3cache.icm.edu.pl parent 8080 3130 no-digest default
#...excepto para las direcciones e IPs que comiencen por "!".
#No es buena idea usar un mayor
#cache_peer_domain w3cache.icm.edu.pl !.pl !7thguard.net !192.168.1.1
#Esto resulta útil cuando queremos usar el Cache Manager.
#Copie cachemgr.cgi al cgi-bin de su servidor web.
#Podrá acceder a él una vez lo haya hecho introduciendo en un navegador
#la dirección http://su-servidor-web/cgi-bin/cachemgr.cgi
cache_mgr your@email
cachemgr_passwd secret_password all
#Éste es el nombre de usuario con el que trabajará nuestro Squid.
cache_effective_user squid
cache_effective_group squid
log_icp_queries off
buffered_logs on
Por Paco Aldarias
4/7
Controlar la velocidad de internet: Squid con colas
#####DELAY POOLS
#Ésta es la parte más importante para configurar el tráfico entrante con
#Squid. Para una descripción detallada acuda al archivo squid.conf o a la
#documentación de http://www.squid-cache.org
#No queremos limitar las descargas en nuestra red local.
acl magic_words1 url_regex -i 192.168
#Queremos limitar la descarga de este tipo de archivos
#Ponga todo esto en una única línea
acl magic_words2 url_regex -i ftp .exe .mp3 .vqf .tar.gz .gz .rpm .zip .rar .avi .mpeg .mpe .mpg .qt
.ram .rm .iso .raw .wav .mov
#No bloqueamos .html, .gif, .jpg y archivos similares porque por lo general
#no consumen demasiado ancho de banda.
#Queremos limitar el ancho de banda durante el día permitiendo
#el ancho de banda completo durante la noche.
#<Cuidado! con el acl de abajo sus descargas se interrumpirán
#a las 23:59. Lea la FAQ si quiere envitarlo.
acl day time 09:00-23:59
#Tenemos dos delay_pools diferentes
#Acuda a la documentación de Squid para familiarizarse
#con delay_pools y delay_class.
delay_pools 2
#Primer delay pool
#No queremos retrasar nuestro tráfico local
#Hay tres cases de pools; aquí sólo hablaremos de la segunda.
#Primera clase de retraso (1) de segundo tipo (2).
delay_class 1 2
#-1/-1 significa que no hay límites.
delay_parameters 1 -1/-1 -1/-1
#magic_words1: 192.168 que ya hemos puesto antes
delay_access 1 allow magic_words1
Por Paco Aldarias
5/7
Controlar la velocidad de internet: Squid con colas
#Segundo delay pool.
#Queremos retrasar la descarga de los archivos mencionados en magic_words2.
#Segunda clase de retraso (2) de segundo tipo (2).
delay_class 2 2
#Los números siguientes son valores en bytes;
#Debemos recordar que Squid no tiene en cuenta los bits de inicio/parada
#5000/150000 son valores para la red al completo
#5000/120000 son valores para la IP independiente
#una vez los archivos descargados exceden los 150000 bytes,
#(o el doble o el triple)
#las descargas proseguirán a 5000 bytes/s
delay_parameters 2 5000/150000 5000/120000
#Ya hemos configurado antes el día de 09:00 a 23:59.
delay_access 2 allow day
delay_access 2 deny !day
delay_access 2 allow magic_words2
6. Usuario squid
1. Creamos la carpeta y el usuario squid.
mkdir /cache
addgroup squid
useradd -d /cache/ -g squid -s /dev/null squid
2. Las carpetas /opt/squid y /cache perteneceran al usuario squid.
mkdir /var/log/squid/
chown squid:squid /var/log/squid/
chmod 770 /var/log/squid/
chown -R squid:squid /opt/squid/
chown -R squid:squid /cache/
3. Cuando lo hagamos por primera vez tendremos que crear sus directorios
de caché:
/opt/squid/sbin/squid -z
Por Paco Aldarias
6/7
Controlar la velocidad de internet: Squid con colas
4. Arrancamos el squid.
/opt/squid/sbin/squid
7. Bibliografía
1. Limitar el ancho de banda COMO.
http://mural.uv.es/~joferna/doc/Limitar-ancho-de-banda-COMO/
html/index.html
Por Paco Aldarias
7/7
Controlar la velocidad de internet: Squid con colas
Índice alfabético
squid con colas, 2
Por Paco Aldarias
8/7
Comentarios de: Controlar la velocidad de internet: Squid con colas (0)
No hay comentarios