Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel_squid_ubuntu_intrepid [Le 19/01/2009, 12:26]
213.95.41.13 bug dans la config, un http-access en trop
— (Version actuelle)
Ligne 1: Ligne 1:
-Pour installer le proxy SQUID 2.7 + Squidguard 1.2.0 sans authentification,​ il faut [[http://​doc.ubuntu-fr.org/​tutoriel/​comment_installer_un_paquet|installer]] les paquets squid, squidguard, squid-common,​ squid-cgi 
- 
-<​code>​ 
-sudo apt-get install squid squidguard squid-common squid-cgi 
-</​code>​ 
- 
-Par défaut, vous aurez dans /etc/squid 2 fichiers de configuration :  
- 
-squid.conf & squidGuard.conf 
- 
-Le fichier squid.conf est énormément commenté, je vous conseil de faire un copie de sauvegarde en exécutant :  
- 
-<​code>​ 
-cd /etc/squid 
-sudo cp squid.conf squid.conf.old 
-</​code>​ 
- 
-puis exécuter la commande suivante pour supprimer les commentaires : 
- 
-<​code>​ 
-sudo sed '/​^\#/​d'​ /​etc/​squid/​squid.conf > /​etc/​squid/​squid.conf ​ 
-</​code>​ 
- 
-(au cas ou le fichier squid.conf d'​origine serait effacé, il est disponible dans le répartoire /​usr/​share/​doc/​squid/​examples/​squid.conf) 
- 
-Nous obtenons normalement le fichier suivant : 
- 
-<​file>​ 
-acl all src all 
-acl manager proto cache_object 
-acl localhost src 127.0.0.1/​32 
-acl to_localhost dst 127.0.0.0/8 
-acl localnet src 10.0.0.0/​8 ​    # RFC1918 possible internal network 
-acl localnet src 172.16.0.0/​12 ​ # RFC1918 possible internal network 
-acl localnet src 192.168.0.0/​16 # RFC1918 possible internal network 
-acl SSL_ports port 443          # https 
-acl SSL_ports port 563          # snews 
-acl SSL_ports port 873          # rsync 
-acl Safe_ports port 80          # http 
-acl Safe_ports port 21          # ftp 
-acl Safe_ports port 443         # https 
-acl Safe_ports port 70          # gopher 
-acl Safe_ports port 210         # wais 
-acl Safe_ports port 1025-65535 ​ # unregistered ports 
-acl Safe_ports port 280         # http-mgmt 
-acl Safe_ports port 488         # gss-http 
-acl Safe_ports port 591         # filemaker 
-acl Safe_ports port 777         # multiling http 
-acl Safe_ports port 631         # cups 
-acl Safe_ports port 873         # rsync 
-acl Safe_ports port 901         # SWAT 
-acl purge method PURGE 
-acl CONNECT method CONNECT 
-http_access allow manager localhost 
-http_access allow purge localhost 
-http_access deny purge 
-http_access deny !Safe_ports 
-http_access deny CONNECT !SSL_ports 
-http_access allow localhost 
-icp_access allow localnet 
-icp_access deny all 
-http_port 3128 
-hierarchy_stoplist cgi-bin ? 
-access_log /​var/​log/​squid/​access.log squid 
-refresh_pattern ^ftp:           ​1440 ​   20%     10080 
-refresh_pattern ^gopher: ​       1440    0%      1440 
-refresh_pattern -i (/​cgi-bin/​|\?​) 0     ​0% ​     0 
-refresh_pattern .               ​0 ​      ​20% ​    4320 
-acl apache rep_header Server ^Apache 
-broken_vary_encoding allow apache 
-extension_methods REPORT MERGE MKACTIVITY CHECKOUT 
-hosts_file /etc/hosts 
-coredump_dir /​var/​spool/​squiddeny manager 
-</​file>​ 
- 
-Pour rendre squid transparent,​ il faut modifier la ligne : 
-<​code>​ 
-http_port 3128 
-</​code> ​ 
-en  
-<​code>​ 
-http_port 3128 transparent 
-</​code>​ 
- 
-il faut aussi gérer la redirection vers squidGuard en ajoutant a la fin du fichier squid.conf ces 2 lignes :  
- 
-<​code>​ 
-redirect_program /​usr/​bin/​squidGuard -c /​etc/​squid/​squidGuard.conf 
-redirect_children 10 
-</​code>​ 
- 
-La configuration de Squid est terminée, essayez de lancer squid avec les commandes suivantes :  
- 
-<​code>​ 
-sudo squid -z 
-</​code> ​ 
-puis : 
-<​code>​ 
-sudo /​etc/​init.d/​squid start 
-</​code>​ 
- 
-Pour vérifier que squid a bien démarré, tapez la commande : 
- 
-<​code>​ 
-ps -A | grep squid 
-</​code>​ 
-  
-vous devriez obtenir ceci : 
-<​code>​ 
-xxxx ?        00:00:00 squid 
-xxxx ?        00:00:00 squid 
-</​code>​ 
-Sinon allez voir dans les fichiers de logs suivants les erreurs que squid retourne : 
-<​code>​ 
-less +F /​var/​log/​messages 
- 
-less +F /​var/​log/​daemon.log 
- 
-less +F /​var/​log/​squid/​cache.log 
-</​code>​ 
- 
-Nous allons maintenant télécharger une blackliste qui sera ensuite intégrée à squidGuard grâce aux commandes suivantes : 
- 
-<​code>​ 
-cd ~ 
-wget http://​cri.univ-tlse1.fr/​blacklists/​download/​blacklists.tar.gz 
-sudo tar zxvf blacklists.tar.gz -C /​var/​lib/​squidguard/​db/​ 
-sudo su 
-cd /​var/​lib/​squidguard/​db 
-mv blacklists/​* . 
-rm -rf blacklists 
-</​code>​ 
- 
-il faut maintenant éditer le fichier /​etc/​squid/​squidGuard.conf pour lui insérer sa configuration,​ mais nous allons faire un copie de sauvegarde avant : 
- 
- 
-<​code>​ 
-sudo cd /etc/squid 
-sudo cp squidGuard.conf squidGuard.conf.old 
-</​code>​ 
- 
-Voici une configuration d'​exemple que je vous laisse adapter a vos besoins : 
- 
-<​file>​ 
-# 
-# Configuration File for SquidGuard 
-# 
- 
-dbhome /​var/​lib/​squidguard/​db 
-logdir /​var/​log/​squid 
- 
-# ------------------------------------------------------------ 
-# Definition de la base de données de filtrage utilisée 
-# ------------------------------------------------------------ 
- 
-dest adult { 
-        domainlist adult/​domains 
-        urllist adult/urls 
-} 
- 
-dest publicite { 
-        domainlist publicite/​domains 
-        urllist publicite/​urls 
-} 
- 
-dest warez { 
-        domainlist warez/​domains 
-        urllist warez/urls 
-} 
- 
-dest porn { 
-        domainlist porn/​domains 
-        urllist porn/urls 
-} 
- 
-dest violence { 
-        domainlist violence/​domains 
-        urllist violence/​urls 
-} 
- 
-# ajoutez ici les thèmes supplémentaires de votre choix présents dans la blacklist de la façon suivante 
-# dest <nom du thème> { 
-#        domainlist <nom du thème>/​domains 
-#        urllist <nom du thème>/​urls 
-# } 
- 
-# ------------------------------------------------------------ 
-# Definition des ACL 
-# ------------------------------------------------------------ 
- 
-acl { 
-  default { 
-# les thèmes supplémentaires sont à ajouter avant le mot-clé all par !<nom du thème> 
-         pass !porn !adult !publicite !warez !violence all 
-                 ​redirect http://​roozeec.free.fr/​interdiction.html 
-                   } 
-                 } 
-# ------------------------------------------------------------ 
-</​file>​ 
- 
-Il faut désormais que suidGuard construise sa base de données avec la blackliste que nous avons téléchargé :  
- 
-<​code>​ 
-sudo squidGuard -C all 
-</​code>​ 
- 
-Pour fonctionner,​ squid et squidGuard ont besoin d'​accès a différents répertoires,​ pour donner ces accès, nous avons besoin de savoir avec quel utilisateur est lancé le processus squid grâce à la commande suivante (lorsque Squid est démarré) :  
- 
-<​code>​ 
-ps aux | grep squid 
-</​code>​ 
- 
-vous devriez obtenir ceci :  
-<​code>​ 
-root     ​xxxx ​ 0.0  0.0   ​4976 ​  672 ?        Ss   ​18:​12 ​  0:00 squid -sY -f /​etc/​squid/​squid.conf 
-proxy    xxxx  0.0  0.1   ​7620 ​ 5008 ?        S    18:12   0:00 (squid) -sY -f /​etc/​squid/​squid.conf 
-</​code>​ 
- 
-nous pouvons donc constater ici que squid est lancé avec l'​utilisateur "​proxy"​ 
- 
-Il faut donc donner les accès a l'​utilisateur proxy aux répertoires suivants : 
- 
-<​code>​ 
-/etc/squid /​var/​log/​squid ​ 
-/​var/​spool/​squid ​ 
-/​usr/​lib/​squid ​ 
-/​usr/​sbin/​squid ​ 
-/​var/​lib/​squidguard 
-</​code>​ 
- 
-avec la commande :  
-<​code>​ 
-sudo chown -R proxy.proxy /etc/squid /​var/​log/​squid /​var/​spool/​squid /​usr/​lib/​squid /​usr/​sbin/​squid /​var/​lib/​squidguard 
-</​code>​ 
- 
-Il faut maintenant rédémarrer squid avec les commandes :  
-<​code>​ 
-sudo /​etc/​init.d/​squid stop 
-</​code>​ 
-puis : 
- 
-<​code>​ 
-sudo /​etc/​init.d/​squid start 
-</​code>​ 
- 
-Vous devriez obtenir : 
-<​code>​ 
- * Starting Squid HTTP proxy squid                                                                                                                             ​[OK] ​ 
-</​code>​ 
-Vous pouvez vérifier que squid s'est bien lancé à l'aide des commandes citées précedemment. 
- 
-Si vous souhaitez administrer plus facilement squid et squidGuard, vous pouvez aussi vous servir de webmin et du module squidGuard. 
- 
-Pour installer webmin, vous pouvez suivre ce tuto : 
- 
-[[http://​doc.ubuntu-fr.org/​webmin]] 
- 
-Pour installer le plugin squidGuard compatible avec webmin, il faut télécahreger le module : 
- 
-<​code>​ 
-cd ~ 
-wget http://​www.niemueller.de/​webmin/​modules/​squidguard/​squidguard-0.91.2.wbm.gz 
-</​code>​ 
- 
-lorsque vous êtes connecté à webmin, cliquer sur webmin : 
- 
-{{:​webmin.png|}} 
- 
-Puis configuration de Webmin et enfin cliquez sur modules webmin : 
- 
-{{:​webmin2.png|}} 
- 
-il faut ensuite aller chercher le module a installer : 
- 
-{{:​webmin3.png|}} 
- 
-puis cliquer sur "​installer le module"​ : 
- 
-{{:​webmin4.png|}} 
- 
-Déconnectez-vous puis reconnectez vous à webmin. ​ 
- 
-Vous devriez avoir maintenant dans la liste "​Serveur proxy Squid" & "​SquidGuard"​ 
- 
-{{:​webmin5.png|}} 
- 
-Pour commencer, il faut cliquer sur "​Serveur proxy Squid" puis cliquer sur "​configuration du module"​ 
- 
-Il faut modifier la ligne "​Chemin de l'​exécutable '​cachemgr.cgi'"​ en insérant : 
-<​code>​ 
-/​usr/​lib/​cgi-bin/​cachemgr.cgi 
-</​code>​ 
- 
-{{:​webmin6.png|}} 
- 
-Puis sauvegarder : 
- 
-{{:​webmin7.png|}} 
- 
-Vous pouvez à partir de cette interface graphique configurer les listes d'​accès (ACL) et d'​autres options des Squid. 
- 
-Maintenant, si vous cliquez sur "​SquidGuard",​ vous avez la possibilité de voir la blackliste que nous avons insérer auparavant. cliquez sur "​listes noires"​ 
- 
-{{:​webmin8.png|}} 
- 
-il apparait ici les différentes catégories de sites répertoriés. Si Webmin affiche qu'​aucune liste noire n'est présente, il faut exécuter la commande :  
- 
-<​code>​ 
-ln -s /​var/​lib/​squidguard/​db/​ /​var/​lib/​squidguard/​db/​blacklists 
-</​code>​ 
- 
-puis : 
- 
-<​code>​ 
-chown proxy.proxy /​var/​lib/​squidguard/​db/​blacklists 
-</​code>​ 
- 
-Actualisez l'​interface webmin de squidguard et vous devriez voir apparaitre toutes les catégories. 
- 
- 
- 
  
  • tutoriel_squid_ubuntu_intrepid.1232364408.txt.gz
  • Dernière modification: Le 18/04/2011, 14:56
  • (modification externe)