15
Squid - SquidGuard Olivier Blaivie 1 Squid - SquidGuard Installation et configuration du proxy Squid

Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

  • Upload
    leliem

  • View
    280

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

Squid - SquidGuard

Olivier Blaivie

1

Squid - SquidGuard

Installation et configuration du proxy Squid

Page 2: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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

Page 3: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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

Page 4: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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.

Page 5: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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

Page 6: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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.

Page 7: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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)

Page 8: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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 :

Page 9: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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.

Page 10: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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 :

Page 11: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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.

Page 12: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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 ».

Page 13: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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 .

Page 14: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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.

Page 15: Squid - SquidGuard · l’Active Directory. ... sous Windows Server 2008 R2 et un routeur sous Debian. ... Cliquer sur les liens, le site ne devrait pas s’afficher et

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.