# [Howto]: Squid et SquidGuard (introduction)

## fb99

traduction de ce howto italien de DGilmour [Mini::HowTo] Squid e squidGuard

Intro (définition + exemple)

installation squid & squidGard

configuration squid

initialision et lancement squid

ajout + configuration squidGard

Introduction :

Avant de commencer la traduction, je vous met un définition de ce qu'est un squid, faut dire que je ne connaissais pas du tout.

Définition:(lien)

 *wikipedia wrote:*   

> Un serveur Squid est un serveur proxy performant, il est capable d'utiliser les protocoles FTP, HTTP, Gopher, et HTTPS.
> 
> Contrairement aux serveurs proxy classiques, un serveur squid gère toutes les requêtes en un seul processus d'E/S, non bloquant.
> 
> Squid garde les meta-données et plus particulièrement les données les plus fréquemment accédées en mémoire.
> ...

 

Un exemple:(lien)

 *ze-linux wrote:*   

> Le principe du proxy Squid est assez simple, prenons par exemple notre réseau ze-linux.
> 
> Le réseau ze-linux est composé d'une dizaine de postes équipés de cartes réseaux ethernet à 100Mb/s.
> 
> Ce réseau est relié via un routeur à internet via une ligne Adsl.
> ...

 

1ère partie : Installation

```
emerge squid squidGuard
```

2ème partie : Configuration (avec 192.68.03 comme IP)

conserver le fichier original, au cas où:

```
cp /etc/squid/squid.conf /etc/squid/original.squid.conf
```

éditer le fichier /etc/squid/squid.conf

```
http_port       192.68.0.3:3128                                   <--À modifier par votre IP : port  (3128=port par défaut où écoute squid)

icp_port                   3130 

cache_access_log        /var/log/squid/access.log

cache_log               /var/log/squid/cache.log

cache_store_log         /var/log/squid/store.log

useragent_log           /var/log/squid/useragent.log

referer_log             /var/log/squid/referer.log

emulate_httpd_log       on

logfile_rotate          7

mime_table              /etc/squid/mime.conf

pid_filename            /var/run/squid.pid

cache_mem               128 MB                                   <-- Memoire RAM allouée à squid... Voir manuel pour éclaircissement

high_memory_warning     140 MB

cache_dir       ufs     /var/cache/squid 8192 16 256

cache_mgr               info@kerescontorni.com                   <-- À modifier par votre proper em@il

visible_hostname        lupin.fidelionet.org                     <-- À modifier par votre nom fqdn

append_domain           .fidelionet.org                          <-- À modifier par votre domaine 

cache_effective_user    squid

cache_effective_group   squid

acl deny_download url_regex -i ^http://.*\.(exe|src|bat|pif|com|sys|reg|ini|inf)$   <--  ^^

acl all src 0.0.0.0/0.0.0.0

acl manager proto cache_object

acl localhost src 127.0.0.1/255.255.255.255

acl locallans src 192.68.0.0/255.255.255.0

acl to_localhost dst 127.0.0.0/8

acl SSL_Ports port 443 563

acl Safe_ports port 80 443

acl CONNECT method CONNECT

http_access     deny    deny_download

http_access     allow   manager localhost

http_access     deny    manager

http_access     deny    !Safe_ports

http_access     deny    CONNECT !SSL_Ports

http_access     allow   locallans

http_access     deny    all

icp_access      deny    all 
```

Remarquer le fabuleux acl deny_download. Ainsi il est possible de décider quels fichiers ne doivent absoluement pas être télécharger.. Il est possible d'ajouter ce que l'on veut (extensions et tutti quanti).....

3ème partie : Initialisation et lancement

initialiser le répertoire de swap :

```
squid -z
```

démarrer squid et l'ajouter au runlevel:

```
#/etc/init.d/squid start

#rc-update add squid default 
```

ensuite il ne reste plus qu'à configuer son client, en le paramétrant comme un Lan qui se connecte depuis un serveur proxy (l'addresse IP du serveur proxy et port choisis auparavant .( je sais pas si c'est clair mais là il met un exemple à la windows donc voilà...si vous le souhaitez je vous le metterez)

4ème partie: Ajouter et configurer squidGuard

SquidGuard est un magnifique programme libre qui permet de contrôler les domaines visible sur le Lan. Il est possible de faire beaucoup de chose, mais par souci de justesse je vous explique juste la configuration de base et pour le reste je vous laisse le site qui est beaucoup mieux illustré et complet -->http://www.squidguard.org

arrêter squid :

```
/etc/init.d/squid stop
```

Ajouter au fichier /etc/squid/squid.conf la ligne suivante:

```
redirect_program /usr/bin/squidGuard -c /etc/squidGuard/squidGuard.conf
```

se positionner dans le répertoire de squidGuard :

```
#cd /etc/squidGuard

#mkdir db

#nano -w squidGuard.conf
```

éditer le fichier suivant comme suit :

```
logdir /var/log/squidGuard

dbhome /etc/squidGuard/db

dest blockedsites {

        domainlist blacklists/porn/domains            <-- Ajouter ici les autres liste noire...

}

acl {

        default {

                pass !blockedsites all

                redirect http://www.sample.com/empty.png <-- Inscrire ici le lien de retour.

        }

}
```

télécharger depuis internet le block de fichier avec la liste complète des site bloqués: 

```
#cd /etc/squidGuard/db

#wget ftp://ftp.teledanmark.no/pub/www/proxy/squidGuard/contrib/blacklists.tar.gz

#tar xvfz blacklists.tar.gz 
```

tester la configuration de squidGuard :

```
squidGuard -c /etc/squidGuard/squidGuard.conf
```

contrôler dans les logs que le programme fonctionne :

```
tail -f /var/log/squidGuard/squidGuard.log
```

relancer squid :

```
/etc/init.d/squid start
```

vous pouvez maintenant jeter un petit coup d'oeil au répertoire db et voir par vous-mêmes ce qu'il faut y ajouter....

Il est aussi possible de créer des fichiers avec les sites que l'on ne souhaite pas voir....

EN ESPÉRANT AVOIR FAIT QUELQUE-CHOSE DE BON ET CORRECT ET UTILE, ciao.   :Wink: 

par la suite je vous metterez les compléments citer en dessous.. 

[nb]:J'ai mis introduction dans le titre vu tout ce dont squid est capable, connaisseurs et expérimentateurs n'hésitez pas à vous manifester.

-- 

NDM : modification du lien et ajout de quelques "u" sur la remarque de 'lbr"

Enjoy !

[EDIT] : orthographe merci lbr & kolinux

----------

## lbr

Je vais essayer ca. Mais une petite erreur s'est glissée dans l'adresse url de squidguard  *Quote:*   

> de chose, mais par souci de justesse je vous explique juste la configuration de base et pour le reste je vous laisse le site qui est beaucoup mieux illustré et complet -->http://www.squidgard.org 

  Il faut lire (...) -->http://www.squidguard.org

C'est rien, le diable est dans les détails  :Wink: 

Merci pour cette traduc.

----------

## kolinux

Bonjour

je bloquais sur l'utilisation de squidguard..... il fallait tout simplement changer les droit de /etc/squiguard/db....

Merci pour le tuto!!

kolinux

PS: une autre erreur s'est glisse dans le fichier de squidguard

L1 il faut lire logdir /var/log/squidGuard  et non ogdir /var/log/squidGuard   enfin je pense ^^

----------

## sd44

Salut

je me posait une question sur la ligne

acl deny_download url_regex -i ^http://.*\.(exe|src|bat|pif|com|sys|reg|ini|inf)$   <--  ^^ 

que se passe t'il si on tente de télécharger toto.Exe ou toto.EXE ?

d'autre part la ligne cache_dir ufs ...

c'est quoi ca ufs ? system de fichier ? et les chiffre qui suive ?

merci de tes reponses et de ce howto ma foi bien fait  :Smile: 

----------

