:.     Home     .:.     Cours     .:.     Faits divers     .:.     Blagues     .:.     Liens     .:.     Perso     .:

 

Configuration de Squid

 

Squid permet à une machine (serveur) de jouer le rôle de serveur cache pour les machines d'un réseau local.

1. Préalable :

* S'assurer que les partitions " /squid " et " swap " existent, ou bien les créer.
* Récupérer la dernière version de squid stable sur : http://www.squid-cache.org ou http://squid.nlanr.net. Il est préférable de le mettre dans le répertoire " /usr/local/src/ "
* tar -zxvf <PackageRécupéré> --directory=/usr/local/src
* ./configure --prefix=/usr/local/squid/ --enable-err-language=French
(On peut ajouter l'option --enable-snmp, si on veut surveiller l'activité via SNMP avec MRTG par exemple)
* make all
* make install
Avec les directives passées, squid est installé dans le répertoire " /usr/local/squid/ ".
Sinon, on peut l'installer en même temps que le système : il suffit juste de sélectionner les packages nécessaires. Dans ce cas, il est installé dans " /etc/squid/ ". Dans la suite, nous supposerons que c'est ce qui a été fait.

2. Configuration au niveau du fichier " squid.conf " :

Editez le fichier "/etc/squid/squid.conf", et apportez les modifications aux différentes sections comme suit :

a/ http_port 8080   /*Port d'écoute des requêtes clients. A mettre au niveau du navigateur (IE) (/usr/local/bin/squid -a 8080) */

b/ icp_port 5050    /*Port sur lequel il communique avec les autres caches (/usr/local/bin/squid -u 5050) */

c/ cache_mgr roger@yerbsy.com    /* l'email de l'administrateur qui sera avertit quand le cache s'arrêtera */

d/ cache_effective_user squid    /* l'utilisateur et le groupe du squid */

e/ cache_effective_group squid

f/ visible_hostname <NomDuCache>    /* If you want to present a special hostname in error messages */
Exemple : visible_hostname cache.cjamali.org

g/ cache_mem 64 MB    /* Taille mémoire utilisée par cache, on peut prendre le quart ou le tiers de la mémoire totale */

h/ cache_dir ufs /squid 37000 16 256   /* 37000=espace disque utilisable par le squid, à voir avec la commande df la taille de la partition /squid */

i/ cache_access_log /squid/log/access.log   /*Log the clients requests activity */

j/ cache_log /squid/log/cache.log   /* This is where general information about the cache's behaviour goes */

k/ cache_store_log  none (ou bien /squid/log/store.log) /* Used to specify the location of store log */

l/ Ajouter cette ligne au niveau des ACL :
acl CLIENTS src 10.0.0.0/255.255.255.0    /* Permet de spécifier l'adresse du réseau local du client. Ici, il s'agit de 10.0.0.0, avec 254 machines */

m/ Mettre ces lignes au niveau des http_access :
http_access allow localhost   /* Permet de contrôler les accès au cache */
http_access allow CLIENTS    /* La ligne à ajouter, la plus importante */
http_access deny all

n/ Facultatif
icp_access allow localhost
icp_access allow CLIENTS
icp_access deny all

3. Suite et fin de l'installation

$> chown -R squid.squid /squid /* Rendre squid propriétaire de certains répertoires */
$> mkdir /squid/log/
$> chown -R squid.squid /squid/log/

4. Lancement et test

$> /usr/local/squid/bin/squid -z ou bien
$> /usr/sbin/squid -z

Lancer squid avec /etc/rc.d/init.d/squid start
Consulter cache.log pour voir si tout s'est bien passé

Sources :

http://squid.visolve.com/squid24s1/contents.htm
http://stargate.ac-nancy-metz.fr/linux/cache/configuration/configuration.htm
http://en.tldp.org/LDP/solrhe/Securing-Optimizing-Linux-RH-Edition-v1.3/chap28sec231.html


L'information, n'est-elle pas précieuse ? Partageons la tous ensemble !

© Janvier 2005
Roger YERBANGA
www.yerbynet.com