Squid - SquidGuard
Olivier Blaivie
1
Squid - SquidGuard
Installation et configuration du proxy Squid
Squid - SquidGuard
Olivier Blaivie
2
Sommaire
1. Présentation de Squid ................................................................................................ 3
2. Présentation de SquidGuard ...................................................................................... 3
3. Installation et configuration de Squid ......................................................................... 3
3.1. Installation sur le serveur ....................................................................................... 3
3.2. Ajout d’acl dans Squid ............................................................................................ 5
3.3. Ajout du Proxy et tests de blocage url .................................................................... 6
4. Mise en place de SquidGuard .................................................................................... 7
4.1. Installation de SquidGuard ..................................................................................... 7
4.2. Déclaration des blacklist ........................................................................................ 8
4.3. Liaison Squid-SquiGuard ........................................................................................ 9
4.4. Tests du proxy avec les blacklists.......................................................................... 10
5. Ajout de plages horaires .......................................................................................... 10
6. Accès aux Logs ......................................................................................................... 11
7. Déploiement du proxy par GPO ............................................................................... 12
8. Conclusion ............................................................................................................... 15
Squid - SquidGuard
Olivier Blaivie
3
1. Présentation de Squid
Squid est un proxy entièrement libre sous Linux. Il permet de gérer les protocoles
FTP, HTTP, HTTPS. Squid permet de filtrer des URL, bloquer des pages web et
effectuer des redirections vers une autre adresse web.
Il est rapide à mettre en place et permet de filtrer des pages web par mot clé ou
adresse web.
2. Présentation de SquidGuard
SquidGuard est un complément de Squid, c’est un outil permettant de filtrer les
pages web en se servant de blacklist et également des noms d’utilisateurs liés à
l’Active Directory. Les blacklists regroupent un très grand nombre de site
(modifiable et adaptable selon les besoins), d’expressions ou de domaines
bloqués.
3. Installation et configuration de Squid
La société PISCINAS à un serveur principal (AD, DNS, DHCP, Serveur de fichiers)
sous Windows Server 2008 R2 et un routeur sous Debian.
Ce sera donc sur ce routeur que sera installé et configuré le proxy.
3.1. Installation sur le serveur
Première étape, mettre sa machine à jour
apt-get update
apt-get upgrade
Lancer l’installation de Squid3
apt-get install squid3
Squid est installé, on va aller voir le fichier de configuration
cd /etc/squid3/
Copier le fichier de configuration « squid.conf » pour conserver un exemplaire
cp squid.conf squid.conf.old
Squid - SquidGuard
Olivier Blaivie
4
Pour plus de lisibilité du fichier, supprimer les commentaires et éditer le fichier
grep –E –v ‘^(#|$|;)’ squid.conf.old > /etc/squid3/squid.conf
nano squid.conf
Laisser les réglages par défaut et ajouter les lignes comme ci-dessous :
La première ligne permet de déclarer le réseau local, avec son adresse réseau et
son masque.
La seconde ligne permet d’autoriser la connexion déclarée ci-dessus. L’ordre des
accès est très important, les règles sont testées ligne par ligne.
Sauvegarder le fichier et relancer Squid
/etc/init.d/squid3 restart
Squid est configurer et fonctionnel, il ne reste plus qu’a le personnaliser.
L’installation d’OCS et ses modules est terminée.
Squid - SquidGuard
Olivier Blaivie
5
3.2. Ajout d’acl dans Squid
Maintenant que le fichier de configuration de base est édité, on va créer un
blocage url.
Par exemple on décide de bloquer les deux sites suivants : Facebook et
Eurosport. Editer le fichier de configuration de Squid et ajouter les 2 lignes
suivantes aux endroits appropriés :
acl FACEBOOK url_regex .facebook.com*
acl : Permet de déclarer l’acl
FACEBOOK : Nom donné à l’acl
url_regex : Signifie que le proxy filtrera les expressions régulières dans
l’url
*.facebook.com* : L'étoile devant .facebook signifie que dans l'url on filtre
également tout ce qui se trouve avant .facebook
l'étoile après .com signifie que dans l'url on filtre également tout ce qui se trouve
après .com
http_access deny FACEBOOK
http_access : Signifie que la règle portera sur un accès http
deny : Signifie que l’on refuse la connexion
allow : Signifie que l’on autorise la connexion
FACEBOOK : Nom de l’acl déclarée
Sauvegarder le fichier et relancer Squid pour que les dernières modifications
soient prises en compte.
Une autre méthode consiste à créer un fichier, « /etc/squid3/interdictions » par
exemple, de déclarer toutes les acl souhaitées à l’intérieur et d’insérer dans le
fichier de configuration de Squid le chemin du fichier.
Donc, créer un fichier
nano /etc/squid3/interdictions
Ajouter les urls à bloquer
.facebook.com*
.eurosport.com*
.eurosport.fr*
Sauvegarder le fichier et éditer le fichier de configuration de Squid
nano squid.conf
Squid - SquidGuard
Olivier Blaivie
6
Ajouter les deux lignes en déclarant le fichier « interdictions »
IMPORTANT : Le proxy applique les accès dans l’ordre de haut en bas
Redémarrer Squid
/etc/init.d/squid3 restart
L’acl est ajoutée.
3.3. Ajout du Proxy et tests de blocage url
Pour tester le bon fonctionnement de Squid, il faut paramétrer le proxy sur le
navigateur.
Pour commencer, tester le proxy en local sur le serveur. Ouvrir le navigateur
« Iceweasel » et se rendre dans « Préférences » : Onglets
« Avancé/Réseau/Paramètres ».
Renseigner l’adresse du serveur proxy et le port utilisé (3128 par défaut)
Cliquer sur « OK » et relancer le navigateur.
Squid - SquidGuard
Olivier Blaivie
7
Essayer de se connecter aux sites bloqués précédemment, « eurosport » par
exemple. La connexion devrait être bloquée par le proxy et la page suivante
devrait s’afficher :
Le proxy est bien configuré.
Remarque : Il peut être nécessaire de vider le cache du navigateur pour que le
proxy fonctionne.
4. Mise en place de SquidGuard
4.1. Installation de SquidGuard
Première étape, mettre sa machine à jour
apt-get update
apt-get upgrade
Installer SquidGuard
apt-get install squidguard
L’installation est terminée, il faut récupérer les blacklists sur internet.
Plusieurs sites en proposent, j’ai choisi celles de l’université de Toulouse car elle
est complète et à jour
wget ftp://ftp.univ-tlse1.fr/pub/reseau/cache/squidguard_contrib/blacklists.tar.gz
Dézipper l’archive
tar zxvf blacklists.tar.gz
Copier le dossier des blacklists dans le dossier de Squidguard
cp -R blacklists/* /var/lib/squidguard/db/ (-R pour copier tout le dossier)
Squid - SquidGuard
Olivier Blaivie
8
SquidGuard est installé, on va maintenant le configurer.
4.2. Déclaration des blacklist
Tout d’abord, copier le fichier de configuration « squidGuard.conf » pour
conserver un exemplaire
cp squidGuard.conf squidGuard.conf.old
Pour plus de lisibilité du fichier, supprimer les commentaires et éditer le fichier
grep –E –v ‘^(#|$|;)’ squidGuard.conf.old > /etc/squidguard/squidGuard.conf
nano squidGuard.conf
On va tester de bloquer toutes les pages se référant au shopping et aux sites pour
adultes :
dbhome : Chemin d’accès au dossier des blacklists
logdir : Chemin d’accès aux logs
dest shopping : Déclaration de la blacklist
domainlist : Déclaration des domaines référenciés dans la blacklist
urllist : Déclaration des url’s référenciées dans la blacklist
expressionlist : Déclaration des expréssions référenciées dans la blacklist
Toujours dans le fichier de configuration, ajouter plus bas :
Squid - SquidGuard
Olivier Blaivie
9
pass : Déclaration des acls actives
redirect : Page web de redirection (optionnel)
Sauvegarder le fichier.
Pour prendre en compte les règles déclarées, il est nécessaire de compiler les
blacklists :
squidGuard –C all
4.3. Liaison Squid-SquiGuard
Le fichier de configuration de SquidGuard configuré, il va falloir faire la liaison
entre Squid et SquidGuard. Pour cela :
Créer un lien symbolique (un raccourci) entre les deux
ln -s /etc/squidguard/squidGuard.conf /etc/squid3/
Modifier les droits pour les dossiers de SquidGuard
chown -R proxy:proxy /var/log/squid3 /var/lib/squidguard
Editer le fichier de configuration de Squid
nano /etc/squid3/squid.conf
Ajouter la ligne à la fin du fichier, qui fera le lien :
Sauvegarder le fichier et relancer Squid
etc/init.d/squid3 restart
Le proxy Squid s’appuiera maintenant sur SquidGuard.
Squid - SquidGuard
Olivier Blaivie
10
4.4. Tests du proxy avec les blacklists
Avec l’intégration de SquidGuard précédemment et l’ajout des urls /domaines
excluant le Shopping et les sites pour adultes, le proxy devrait donc bloquer
toutes les tentatives d’accès aux sites se référant à ces deux mots-clés.
Toujours en local, lancer le navigateur et faire une recherche « sexe » ou
« shopping » sur Google. Cliquer sur les liens, le site ne devrait pas s’afficher et
être rediriger vers www.google.fr comme configuré dans le fichier.
5. Ajout de plages horaires
Il est possible de mettre en place plusieurs types de restrictions en fonction des
horaires. En effet, le proxy peut être moins restrictif pour les horaires du midi (de
12h à 14h par exemple).
Premièrement, il faut synchroniser l’heure et la date avec le serveur principal.
Pour cela, installer le service « ntpdate » :
apt-get install ntpdate
Synchroniser l’horaire du serveur Debian (Proxy) avec le serveur Active
Directory :
ntpdate 192.168.25.1
Editer le fichier de configuration de Squidguard
nano /etc/squidguard/squidGuard.conf
Entrer les paramètres horaires
L’option « mtwhf » représente les 5 jours de la semaine, suivi des horaires.
Entrer les paramètres des machines ciblées
Dans l’ACL, rajouter une condition pour les machines ciblées, comme ci-dessous :
Squid - SquidGuard
Olivier Blaivie
11
Relancer le service Squid
etc/init.d/squid3 restart
Les horaires sont ajoutés, comme demandé dans le cahier des charges.
6. Accès aux Logs
Les fichiers de log peuvent être utiles pour corriger les erreurs, ou simplement
pour superviser les connexions des utilisateurs sur leur navigateur.
Pour vérifier les logs du fichier de configuration de Squid, taper la commande
suivante :
cat /var/log/squid3/access.log
Une liste de lignes apparait avec les informations suivantes :
On peut voir l’adresse IP de la machine et le site sur lequel elle essaye d’accéder.
Pour vérifier les logs du fichier de configuration de SquidGuard, taper la
commande suivante :
cat /var/log/squidguard/squidGuard.log
Une liste de lignes apparait avec les informations suivantes :
Des erreurs peuvent être visibles depuis cette commande. Il y aura le détail des
erreurs rencontrées.
Squid - SquidGuard
Olivier Blaivie
12
Pour filtrer le nombre de résultats affichés par les logs, utiliser la commande
suivante :
tail -20 /var/log/squid3/access.log (pour 20 lignes par exemples)
7. Déploiement du proxy par GPO
La configuration manuelle du proxy sur le navigateur est testée et fonctionne,
nous allons maintenant créer une GPO pour mettre en place automatiquement le
proxy.
Depuis le serveur srv1, se rendre dans « Utilisateurs et Ordinateurs Active
Directory » et créer un groupe d’utilisateurs en cochant l’option « Domaine local »
comme ci-dessous
Ajouter les utilisateurs concernés et valider.
Ouvrir les stratégies de groupe et créer une GPO dans l’UO concernée
Clic droit sur « Proxy » puis « Modifier ».
Squid - SquidGuard
Olivier Blaivie
13
Se rendre dans « Configuration utilisateur/Stratégies/Paramètres
Windows/Maintenance de Internet Explorer/Connexion »
Cliquer sur « Paramètres du proxy », ajouter l’adresse et le port du proxy et
cocher les trois options disponibles
Cliquer sur « Appliquer »
Se rendre dans « Configuration utilisateur/Stratégies/Modèles
d’administration/Composants Windows/Internet Explorer ».
Dans le volet de droite, double cliquer sur « Désactiver la modification des
paramètres du proxy », choisir « Activé » et « Appliquer ».
Faire la même manipulation en double cliquant sur « Désactiver la modification des
paramètres de connexion » pour que les utilisateurs ne puissent pas modifier les
paramètres configurés .
Squid - SquidGuard
Olivier Blaivie
14
Activer la GPO
Ajouter le groupe dans le « Filtrage de sécurité »
Enfin, exécuter un « gpupdate /force » pour mettre à jour la nouvelle stratégie.
Pour tester, se connecter avec un utilisateur présent dans le groupe du proxy,
ouvrir Internet Explorer et essayer d’aller sur un site bloqué par le proxy.
Squid - SquidGuard
Olivier Blaivie
15
8. Conclusion
Cette documentation résume l’installation et la configuration du proxy Squid et
Squidguard. Via le fichier e configuration de SquidGuard il existe une multitude
d’options à configurer en plus comme le filtrage par adresse IP, par adresse MAC
entre autre à adapter selon les besoins.
Le cahier des charges à été respecté avec la mise en place d’un proxy,
automatiquement configuré sur le navigateur Internet Explorer ainsi qu’une
documentation détaillée sur l’installation et la configuration du proxy.
Top Related