5. Preguntas de Uso Frecuente

5.1. ¿Es posible limitar el ancho de banda en base a un usuario mediante las delay pools?

Sí. Mire en el squid.conf original y échele un vistazo a la documentación de Squid en http://www.squid-cache.org

5.2. ¿Cómo puedo utilizarwget con Squid?

Es sencillo. Cree un archivo llamado .wgetrc y colóquelo en su directorio home. Inserte las siguientes líneas en él ¡y ya está!

HTTP_PROXY=192.168.1.1:8080
FTP_PROXY=192.168.1.1:8080

Puede hacer que funcione globalmente para todos los usuarios, acuda a man wget para averiguar cómo.

5.3. Tengo configurado mi propio servidor SOCKS escuchando en el puerto 1080 y ahora ya no puedo conectarme a ningún servidor de irc.

Aquí pueden darse dos casos:

Que su proxy SOCKS esté abierto a reenvíos, eso significa que puede usarlo cualquier desde cualquier parte. Eso es una cuestión de seguridad, por lo que debería volver a comprobar la configuración de su proxy SOCKS - por lo general los servidores de irc no permiten conexiones por parte de servidores SOCKS que permitan el reenvío.

Si está seguro de que su servidor SOCKS no está abierto a reenvíos, quizá aún así no se le permita acceder a ciertos servidores de irc - eso es porque la mayoría de ellos simplemente comprueban si el servidor SOCKS está corriendo en el puerto 1080 de un cliente que esté intentando conectarse. En ese caso simplemente reconfigure el software de su LAN para que use un servidor y un puerto SOCKS adecuados.

5.4. No me gusta que Kazaa ni Audiogalaxy llenen mi ancho de banda de subida.

Puede tratarse de algo doloroso pero existe una solución bien sencilla.

Cree un archivo llamado por ejemplo /etc/sysconfig/cbq/cbq-15.ppp.

Inserte en él las siguientes líneas y ni Kazaa ni Audiogalaxy subirán archivos a más de 15 kbits/s. Asumo que su interfaz de salida a internet es ppp0.

DEVICE=ppp0,115Kbit,11Kbit
RATE=15Kbit
WEIGHT=2Kbit
PRIO=5
TIME=01:00-07:59;110Kbit/11Kbit
RULE=,:21
RULE=,213.25.25.101
RULE=,:1214
RULE=,:41000
RULE=,:41001
#Y así hasta :41030
RULE=,:41030

5.5. Mi servidor de correo saliente está consumiendo todo mi ancho de banda

Puede limitar su SMTP Postfix, Sendmail o el que sea de una manera similar a la de la pregunta anterior. Simplemente cambie o añada una regla:

RULE=,:25

Es más, si tiene un servidor SMTP puede forzar a los usuarios de su LAN local para que lo usen, incluso aunque hayan configurado sus propios servidores SMTP como smtp.algun.servidor Lo haremos de una manera transparente tal y como lo hicimos antes con Squid.

5.6. ¿Puedo limitar mi propio servidor FTP o WEB de una manera similar a como se muestra en la cuestión anterior?

Por lo general sí pero normalmente estos servidores tienen sus propias configuraciones para limitar el ancho de banda por lo que probablemente querrá echar un vistazo a la documentación de los mismos.

Núcleos 2.2.x

/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 25 -p TCP -j REDIRECT 25

Núcleos 2.4.x

/sbin/iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j REDIRECT --to-port 25

No olvide añadir la línea apropiada a sus guiones de inicio.

5.7. ¿Es posible limitar el ancho de banda en relación con los usuarios mediante el guión cbq.init?

Sí. Observe este guión, hay dos ejemplos.

5.8. Cuando inicio cbq.init, dice que falta sch_cbq.

Probablemente no tiene CBQ como módulos en su sistema. Si ha compilado CBQ en su núcleo descomente la siguientes líneas en su guión cbq.init-v0.6.2.

### Si tiene cbq, tbf y u32 compilados en el núcleo descoméntelos aquí
#for module in sch_cbq sch_tbf sch_sfq sch_prio cls_u32; do
#        if ! modprobe $module; then
#               echo "**CBQ: could not load module $module"
#               exit
#        fi
#done

5.9. CBQ a veces no funciona por algún motivo

Normalmente no debería ocurrir. A veces pueden observarse descargas en masa aunque haya creído haber bloqueado todos los puertos que usan Napster o Audiogalaxy. Bien, siempre hay un puerto abierto de más para las descargas en tropel. Para encontrarlo puede usar IPTraf. Como pueden haber posiblemente miles de puertos así resultará una ardua tarea. Para hacerla más sencilla puede considerar ejecutar su propio proxy SOCKS - Napster, Audiogalaxy y muchos otros programas pueden usar proxies SOCKS por lo que resulta mucho más sencillo pelearse con un único puerto que hacerlo con miles de posibilidades (el puerto SOCKS estándar es el 1080, si pone su propio servidor proxy SOCKS podrá configurarlo de manera diferente o hacer correr múltiples instancias escuchando en diferentes puertos). No olvide cerrar todos los puertos al tráfico y dejar abiertos puertos como el 25 o el 110 (SMTP y POP3) y otros que considere podrían resultarle de utilidad. Encontrará un enlace al impotente servidor proxy socks Nylon al final de este COMO.

5.10. Las delay pools son bobas, ¿por qué no me dejan descargar algo utilizando todo el ancho de banda si sólo estoy usando yo la red?

Desgraciadamente no puedes hacer mucho al respecto.

Lo único que puede hacer es usar cron y reconfigurarlo a, por ejemplo, la 1:00 AM, de manera que Squid no use delay pools y volver a configurarlo digamos a las 7:30 AM de forma que vuelva a usar las delay pools.

Para hacer esto cree dos archivos de configuración separados llamándoles por ejemplo squid.conf-day y squid.conf-night, y colóquelos en /opt/squid/etc/.

squid.conf-day sería una copia exacta de una configuración que hubiésemos creado anteriormente.

squid.conf-night, al contrario, no tendría ninguna línea de delay pool, así que lo único que tiene que hacer es descomentarlas.

Lo siguiente que tendría que hacer sería configurar correctamente las entradas de su /etc/crontab.

Edite /etc/crontab y coloque en él las siguientes líneas:

#SQUID - cambio de configuración día/noche
01 9 * * * root /bin/cp -f /opt/squid/etc/squid.conf-day /opt/squid/etc/squid.conf; /opt/squid/bin/squid -k reconfigure
59 23 * * * root /bin/cp -f /opt/squid/etc/squid.conf-night /opt/squid/etc/squid.conf; /opt/squid/bin/squid -k reconfigure

5.11. Mis descargas se interrumpen a las 23:59 con "acl day time 09:00-23:59" en squid.conf. ¿Puedo hacer algo al respecto?

Puede retirar ese acl de su squid.conf así como el "delay_access 2 allow dzien delay_access 2 deny !dzien".

Intente hacerlo ahora con cron como en la cuestión anterior.

5.12. Los archivos de bitácora de Squid crecen y crecen muy rápido ¿qué puedo hacer para evitarlo?

De hecho, cuantos más usuarios tenga más información - a veces útil - se registrará.

La mejor manera de arreglarlo sería usar logrotate, pero tendrá que emplear un pequeño truco para lograr que funcione con Squid: entradas adecuadas en cron y logrotate.

Entradas en /etc/crontab:

#SQUID - logrotate
01 4 * * * root /opt/squid/bin/squid -k rotate; /usr/sbin/logrotate /etc/logrotate.conf; /bin/rm -f /var/log/squid/*.log.0

Aquí hemos hecho que logrotate arranque diariamente a las 04:01 am de forma que elimina cualquier punto de inicio de logrotate que pudiese quedar pendiente, por ejemplo de /etc/cron.daily/.

Entradas de /etc/logrotate.d/syslog:

#SQUID logrotate - guardará los archivos de bitácora durante 40 días
/var/log/squid/*.log.0 {
rotate 40
compress
daily
postrotate
/usr/bin/killall -HUP syslogd
endscript
}

5.13. CBQ es estúpido; ¿por qué no puedo descargar algo a toda velocidad si sólo yo uso la red?

Está de suerte ¡eso es posible!

Hay dos maneras de conseguirlo.

La primera es la más fácil, similar a la solución del caso Squid. Inserte una línea similar a la de aquí abajo en sus archivos de configuración de CBQ en /etc/sysconfig/cbq/:

TIME=00:00-07:59;110Kbit/11Kbit

Puede tener múltiples variables TIME en sus archivos de configuración de CBQ.

Eso sí, vaya con ojo porque hay un pequeño fallo en ese cbq.init-v0.6.2 - no le dejará configurar ciertas horas, como por ejemplo 00:00-08:00 Para asegurarse de que todo funciona correctamente inicie cbq.init-v0.6.2, y durante el periodo de tiempo que haya configurado use la orden

/etc/rc.d/cbq.init-v0.6.2 timecheck

Esto es un ejemplo de cómo debería ser la salida adecuada:

[root@mangoo rc.d]# ./cbq.init start; ./cbq.init timecheck **CBQ: 3:44: class 10 on eth0 changed rate (20Kbit -> 110Kbit) **CBQ: 3:44: class 40 on ppp0 changed rate (15Kbit -> 110Kbit) **CBQ: 3:44: class 50 on eth0 changed rate (35Kbit -> 110Kbit)

En este ejemplo algo fue mal, probablemente en el segundo archivo de configuración situado en /etc/sysconfig/cbq/; segundo contando a partir del número más bajo de su nombre:

[root@mangoo rc.d]# ./cbq.init start; ./cbq.init timecheck **CBQ: 3:54: class 10 on eth0 changed rate (20Kbit -> 110Kbit) ./cbq.init: 08: value too great for base (error token is "08")

El segundo método de hacer a CBQ más inteligente es algo más complejo - no está relacionado con el tiempo. Puede leer sobre él en el COMO sobre Enrutado Avanzado en Linux 2.4 y jugar con la orden tc command.