Per far ciò si dovrà fare conoscenza con CBQ e con lo script cbq.init. Può essere scaricato da ftp://ftp.equinox.gu.net/pub/linux/cbq/. Si dovrà scaricare cbq.init-v0.6.2 e copiarlo in /etc/rc.d/.
Servirà anche iproute2. È compreso in tutte le distribuzioni linux.
Si dia ora un'occhiata nella directory /etc/sysconfig/cbq/. Ci dovrebbe essere un file di esempio, che dovrebbe funzionare con cbq.init. Se non è lì, probabilmente non è incluso nel kernel né è presente come modulo. Bene, in questo caso semplicemente si dovrà creare quella directory, metterci dentro i file d'esempio forniti qui sotto e controllare se in questo modo funziona.
Si crei un file chiamato cbq-10.ftp-network nella directory /etc/sysconfig/cbq/:
# touch /etc/sysconfig/cbq/cbq-10.ftp-network
Si inseriscano nel file le righe seguenti:
DEVICE=eth0,10Mbit,1Mbit RATE=15Kbit WEIGHT=1Kbit PRIO=5 RULE=:20,192.168.1.0/24 RULE=:21,192.168.1.0/24 |
La descrizione di queste righe si trova nel file cbq.init-v0.6.2.
Si crei un file chiamato cbq-50.napster-network nella directory /etc/sysconfig/cbq/:
# touch /etc/sysconfig/cbq/cbq-50.napsterandlive
Si inseriscano queste righe nel file:
DEVICE=eth0,10Mbit,1Mbit RATE=35Kbit WEIGHT=3Kbit PRIO=5 # Windows Media Player. RULE=:1755,192.168.1.0/24 # Real Player usa le porte TCP 554, per l'UDP usa porte diverse, # ma generalmente RealAudio in UDP non consuma troppa banda. RULE=:554,192.168.1.0/24 RULE=:7070,192.169.1.0/24 # Napster usa le porte 6699 e 6700, forse anche altre? RULE=:6699,192.168.1.0/24 RULE=:6700,192.168.1.0/24 # Audiogalaxy usa le porte da 41000 fino a probabilmente 41900, # ce ne sono molte, quindi si tenga presente che qui non sono elencate tutte. # Inutile ripetere 900 volte la stessa riga. # Semplicemente si escludano le porte 410031-41900 usando # ipchains o iptables. RULE=:41000,192.168.1.0/24 RULE=:41001,192.168.1.0/24 # ...continua da 41001 a 41030... RULE=:41030,192.168.1.0/24 # Qualche utente ingegnoso potrebbe connettersi a server SOCKS per Napster, # Audiogalaxy ecc.; è una buona idea far così anche quando si usa un proxy SOCKS # locale RULE=:1080,192.168.1.0/24 # Si aggiungano tutte le porta che servono; si potranno facilmente controllare # le porte usate con IPTraf #RULE=:port,192.168.1.0/24 |
/sbin/ipchains -A input -s 192.168.1.1/24 -d ! 192.168.1.1 41031:41900 -p TCP -j REJECT
/sbin/iptables -A FORWARD -s 192.168.1.1/24 -d ! 192.168.1.1 --dport 41031:41900 -p TCP -j REJECT
Ci si ricordi di aggiungere una riga appropriata allo script di inizializzazione.