## page was renamed from Projet/SemaineTech2011/Ateliers/SquidEtAptCacherNG/Conversation ## page was renamed from Projet/SemaineTech/Ateliers/SquidEtAptCacherNG/Conversation <> = Présentation = {{{#!highlight irc (13:00:51) willy: ---------------------------- DEBUT ATELIER : squid et apt-cacher-ng ----------------------- (13:02:24) nacer.saidou-adamou: salut à tous (13:03:26) nacer.saidou-adamou: je vais présenté quelque config pour mettre en place (13:03:34) progfou: tout le monde peut parler ici, mais ça reste un salon de présentation, donc merci d'attendre que le présentateur vous donne la parole pour vous exprimer (13:03:35) nacer.saidou-adamou: squid + delay pool d'une part (13:03:52) nacer.saidou-adamou: et apt-cacher-ng (13:03:55) nacer.saidou-adamou: d'autre part (13:04:00) nacer.saidou-adamou: puis d'intégrer les deux (13:04:27) nacer.saidou-adamou: ie d'automatiquement rediriger les requetes deb vers apt-cacher-ng (13:04:44) nacer.saidou-adamou: sans avoir à modifier la config des postes clients (13:05:17) nacer.saidou-adamou: (c'est équivalent à la technique proposé par JC sur la page squid de wikiteki quoi) (13:05:25) nacer.saidou-adamou: bon, on y va (13:06:09) nacer.saidou-adamou: merci JC (13:06:14) nacer.saidou-adamou: tous ces onglets ... (13:06:17) nacer.saidou-adamou: Agenda (13:06:20) nacer.saidou-adamou: donc (13:06:30) nacer.saidou-adamou: 1- config squid de base (13:06:44) nacer.saidou-adamou: 2- delay pool pour la gestion de la bp (13:06:54) nacer.saidou-adamou: 3- install apt-cacher-ng (13:07:09) nacer.saidou-adamou: 4- intégration squid + apt-cacher-ng (13:07:28) nacer.saidou-adamou: donc on enchaine avec le point 1 (13:07:49) nacer.saidou-adamou: pour les questions, balancez les, j'y répondrais au fur et à mesure de leur apparition (13:08:37) nacer.saidou-adamou: installation de squid : # aptitude install squid (13:08:53) nacer.saidou-adamou: le fichier de configuration est assez bien commenté (13:09:14) nacer.saidou-adamou: ici, je vais indiquer juste quelques paramètres interessants pour démarrer (13:10:40) nacer.saidou-adamou: cache_mem à 8Mb (voir http://wiki.auf.org/wikiteki/Squid) (13:10:45) nacer.saidou-adamou: pour commentaires (13:11:31) nacer.saidou-adamou: de meme, vous choisissez la valeur qui vous semble appropriée pour maximum_object_size (le wiki propose 10Mb, moi ca me va) (13:12:14) nacer.saidou-adamou: par défaut, squid écoute sur le port 3128 (13:12:30) nacer.saidou-adamou: c'est grace à la variable http_port (13:13:15) nacer.saidou-adamou: et comme squid fonctionnera en mode transparent (c'est à dire qu'on forcera les requetes des postes clients à transiter par squid avant d'aller sur le web), on configurera comme ceci: (13:13:24) nacer.saidou-adamou: http_port 3128 transparent (13:13:48) nacer.saidou-adamou: cette valeur provoquera l'écoute sur toutes les interfaces réseau du serveur (13:14:43) nacer.saidou-adamou: chez moi, les sous réseaux publiques (différentes salles du cnf) sont directement connectés au nfs qui me sert aussi de squid (13:15:02) nacer.saidou-adamou: au niveau iptables, je fais juste une redirection de port (13:15:08) nacer.saidou-adamou: donc cette valeur me va très bien (13:15:35) nacer.saidou-adamou: sinon, vous pouvez fixer l'adresse sur laquelle squid écoutera (13:16:04) nacer.saidou-adamou: et niveau iptables, vous faites un dnat vers cette adresse sur le port 3128 (13:16:12) willy: REMARQUE: il faut faire attention à ne pas faire écouter son proxy sur une interface publique; vous serviriez de proxy anonyme pour n'importe qui ! (13:16:27) nacer.saidou-adamou: hum bonne remarque (13:16:35) nacer.saidou-adamou: chez moi nfs est absolument interne (13:16:36) frumence.boroto: QUESTION: avec iptables, comment tu fait la redirection des ports? (13:17:38) nacer.saidou-adamou: ca dépend de ta config (13:17:44) nacer.saidou-adamou: frumence (13:17:52) progfou: mhhh... oui et non... (13:18:04) nacer.saidou-adamou: si ton squid est local sur ton parefeu (13:18:12) nacer.saidou-adamou: tu peux faire (13:19:06) progfou: on peut faire une règle très générique pour un squid sur la passerelle : iptables -t nat -A PREROUTING ! -i ppp0 -p tcp --dport 80 -j REDIRECT --to-ports 3128 (13:19:33) nacer.saidou-adamou: iptables -t filter -A INPUT -p tcp -dport 80 -o $INTERNET -j REDIRECT --to-ports 3128 (13:19:53) nacer.saidou-adamou: plutot la table nat (13:19:54) nacer.saidou-adamou: sorty (13:19:56) nacer.saidou-adamou: sorry (13:20:06) progfou: et on peut aussi faire une règle très générique pour un squid ailleurs : iptables -t nat -A PREROUTING ! -i ppp0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.10:3128 (13:20:52) progfou: Nacer, c'est pas de l'INPUT, car les demandes web ne sont pas à destination de la passerelle mais d'un serveur web externe => FORWARD (13:21:12) progfou: et puis c'est pas du filtrage, donc c'est pas FORWARD non plus, mais du traitement pré-routage = PREROUTING (13:21:27) nacer.saidou-adamou: hum (13:21:45) nacer.saidou-adamou: wouais (13:21:52) nacer.saidou-adamou: j'ouvre mon fichier de règles (13:21:53) nacer.saidou-adamou: iptables (13:22:16) nacer.saidou-adamou: oui effectivement (13:22:34) nacer.saidou-adamou: je continue (13:22:50) nacer.saidou-adamou: j'en étais où déjà? (13:22:59) nacer.saidou-adamou: http_port (13:23:48) progfou: (finalement c'est mieux de te laisser présenter le plan que tu as annoncé plus haut, car tout est intéressant et il ne reste que 45 min... prends les questions à la fin plutôt) (13:23:48) nacer.saidou-adamou: chez moi, je modifie aussi la variable visible_hostname pour avoir quelque chose du genre cache.td.auf.org (c'est aussi le nom que j'enregistre dans mon dns) (13:24:16) nacer.saidou-adamou: et puis viens la définition des acls (13:24:29) nacer.saidou-adamou: par défaut, on a ceci dans le fichier de config de squid (13:24:38) nacer.saidou-adamou: acl all src 0.0.0.0/0.0.0.0 (13:24:46) nacer.saidou-adamou: acl manager proto cache_object (13:25:00) nacer.saidou-adamou: acl localhost sr 127.0.0.1/255.255.255.255 (13:25:17) nacer.saidou-adamou: à coté de ceci (13:25:45) nacer.saidou-adamou: j'enregistre un acl par réseau (utile après pour les delay pools) (13:25:50) nacer.saidou-adamou: exemple: (13:26:11) nacer.saidou-adamou: acl auf src 10.204.1.0/24 (13:26:27) nacer.saidou-adamou: acl enseignants src 192.168.10.0/24 (13:26:50) nacer.saidou-adamou: ensuite, on a les autorisations (13:27:00) nacer.saidou-adamou: par defaut: (13:27:10) nacer.saidou-adamou: http_access allow manager localhost (13:27:15) nacer.saidou-adamou: http_access allow all (13:27:39) nacer.saidou-adamou: j'ajoute, avant le allow all (13:28:16) nacer.saidou-adamou: http_access allow auf (13:28:25) nacer.saidou-adamou: http_access allow enseignants (13:28:31) nacer.saidou-adamou: et je remplace le allow all (13:28:38) nacer.saidou-adamou: par (13:28:49) nacer.saidou-adamou: http_access deny all (13:29:08) nacer.saidou-adamou: si tout est en place (13:29:13) nacer.saidou-adamou: j'enregistre les modifs (13:29:20) nacer.saidou-adamou: et je redémarre le serveur (13:29:41) nacer.saidou-adamou: je vérifie ensuite que les machines des réseaux auf et enseignants passent bien par squid (13:29:58) nacer.saidou-adamou: pour ca, tail -f /var/log/squid/access.log (13:30:15) nacer.saidou-adamou: et sur un client de ces réseau j'ouvre une page (13:30:33) nacer.saidou-adamou: je verrai normalement de l'activité (13:31:01) nacer.saidou-adamou: voilà la config de base en place (13:31:06) nacer.saidou-adamou: 2- delay pool (13:31:46) nacer.saidou-adamou: pour expliquer (à mon avis) facilement les delay_pool, on va imaginer trois situations (13:32:20) nacer.saidou-adamou: supposons qu'on veuille mettre en place les delay pool pour le réseau des enseignants (13:32:53) nacer.saidou-adamou: on a donc un seul pool à mettre en oeuvre (13:33:07) nacer.saidou-adamou: on va mettre la variable "delay_pools" à 1 (13:33:32) nacer.saidou-adamou: ensuite, on va ajouter la ligne suivante (13:33:37) nacer.saidou-adamou: delay_class 1 1 (13:33:58) nacer.saidou-adamou: ce qui signifie que le pool numéro 1 (le seul qu'on a ) est de classe 1 (13:34:12) nacer.saidou-adamou: et on va configurer ce pool par la ligne (13:34:48) nacer.saidou-adamou: delay_parameters 1 20000/15000 (13:35:22) nacer.saidou-adamou: je reviendrai dessu (13:35:24) nacer.saidou-adamou: dessus (13:35:39) nacer.saidou-adamou: et on va dire que ce pool concerne l'acl enseignants (13:35:52) nacer.saidou-adamou: delay_class 1 allow enseignants (13:36:00) nacer.saidou-adamou: delay_class deny all (13:38:30) nacer.saidou-adamou: cette config va imposé la bande passante de 15kbits/s (13:38:46) nacer.saidou-adamou: à tous les clients du réseau enseignants (13:39:21) nacer.saidou-adamou: pour un total disponible pour tous de 20 kbits/s (13:39:32) nacer.saidou-adamou: j'ai pas trouvé une meilleure facon d'expliquer ca (13:40:20) nacer.saidou-adamou: 20 kbit/s est comme la limite hard et 15kbits une limite soft (13:40:38) nacer.saidou-adamou: si je fais un parallèle avec les quotas par exemplle (13:41:25) nacer.saidou-adamou: maintenant, imaginons que enseignant désigne l'ensemble de notre réseau (13:41:55) nacer.saidou-adamou: il est clair qu'avec ca, si on a une bande passante totale de disons 1.5Mbits/s (13:42:35) nacer.saidou-adamou: on pourrait avoir au max 1500000/20000 = 75 connexions simultanées max (13:42:55) nacer.saidou-adamou: ce qui est assez limitatif (13:43:15) nacer.saidou-adamou: en utilisant une classe 2 pour notre pool (13:43:31) nacer.saidou-adamou: on pourrait avoir une limite pour le réseau et une limite pour les postes individuellement (13:43:46) nacer.saidou-adamou: par exemple, si on a 1.5Mbit/s (13:44:13) nacer.saidou-adamou: on peut limiter le sous réseau enseignants à 500Kbits (13:44:34) nacer.saidou-adamou: et chaque client à 10% de la bp du sous réseau (13:44:40) nacer.saidou-adamou: on ferait alors (13:45:32) nacer.saidou-adamou: delay_parameter 1 600000/600000 60000/60000 (13:46:10) nacer.saidou-adamou: et pour l'ensemble de notre cnf constitué des deux sous réseaux auf et enseignants (13:46:22) nacer.saidou-adamou: on pourrait utiliser une classe 3 (13:46:54) nacer.saidou-adamou: comme ceci (en supposant qu'on a un acl qui englobe l'ensemble des deux réseaux) (13:47:19) nacer.saidou-adamou: delay_class 1 3 (13:48:07) nacer.saidou-adamou: delay_parameters 1 150000/150000 600000/600000 60000/60000 (13:48:54) nacer.saidou-adamou: ce qui signifierait d'attribuer sur les 1.5 Mbit/s globalement disponible (le cnf peut effectivement avoir plus) (13:49:13) nacer.saidou-adamou: 600 k/s à chaque sous réseau (auf et enseignants ici) (13:49:30) nacer.saidou-adamou: et une limite de 60k/s à chaque client dans ces sous réseau (13:50:04) nacer.saidou-adamou: voilà à peu près rapidement expliqué cet aspect de squid (13:50:19) nacer.saidou-adamou: enregistrer et restarter squid (13:50:26) frumence.boroto: QUESTION: dans le cas où on se retrouve avec plus de 3 sous réseaux comme c'est le cas ici chez moi à Kinshasa, comment je ferai ? (13:50:52) progfou: est-ce qu'il ne manque pas un 0 dans les 150000/150000 ? je compare ça au 600000/600000 qui est plus gros... (13:50:54) nacer.saidou-adamou: vous pouvez tester en téléchargeant un gros fichier et à regardant (via iptraf par exemple ou un graph) la limite de bp utilisé (13:51:15) nacer.saidou-adamou: progfou: oui effectivement (13:51:23) nacer.saidou-adamou: 1million 500 mille (13:51:32) nacer.saidou-adamou: bon, je réponds après (13:51:35) nacer.saidou-adamou: frumence (13:51:41) nacer.saidou-adamou: on passe d'abord à apt-cacher-ng (13:52:01) nacer.saidou-adamou: l'installation de apt-cacher-ng est simple (13:52:13) nacer.saidou-adamou: il n'y a quasiment pas de config à faire (13:53:11) nacer.saidou-adamou: par défaut il vient avec tout ce qu'il faut pour debian et ubuntu (les backends ) (13:54:20) nacer.saidou-adamou: coté client, normalement il faut modifier le fichier /etc/apt/apt.conf pour faire passer les requetes deb via le serveur (13:54:46) nacer.saidou-adamou: ou alors modifier des url dasn le sources.list pour l'utiliser (13:55:15) nacer.saidou-adamou: pour éviter tout ca, on va configurer squid pour que chaque fois qu'un paquet est demandé, squid s'adresse automatiquement à apt-cacher-ng (13:55:46) nacer.saidou-adamou: mais avant, assurez vous que sur vos clients, dans vos sources.list vous utilisez bien des urls en http (13:56:01) nacer.saidou-adamou: deb http:// (13:56:15) nacer.saidou-adamou: dans le fichier squid.conf faites ceci (13:56:31) nacer.saidou-adamou: entre la dernière définition d' acl (13:56:51) nacer.saidou-adamou: et avant la première permission http_access, ajoutez le contenu suivant (13:57:44) nacer.saidou-adamou: cache_peer localhost parent 3142 7 proxy-only no-query no-netdb-exchange connect-timeout=15 (13:58:30) nacer.saidou-adamou: cette indique à squid d'utiliser un proxy parent qui écoute sur le port 3142 et de ne pas utiliser le protocole icp (proxy-only) (13:58:39) nacer.saidou-adamou: (plutot no-query) (13:59:01) nacer.saidou-adamou: avec un timeout de 15s (normalement apt-cacher-ng est sur la meme machine que squid) (13:59:07) nacer.saidou-adamou: puis la ligne: (13:59:37) nacer.saidou-adamou: acl aptget browser -i apt-get apt-http apt-cacher apt-proxy (14:01:01) nacer.saidou-adamou: tous les requetes issues de apt-cacher, apt-proxy, apt-http ont normalement comme user-agent ces memes valeurs (14:01:21) nacer.saidou-adamou: et seront considérés comme appartenant à l'acl aptget (14:01:32) nacer.saidou-adamou: puis la ligne: (14:01:57) nacer.saidou-adamou: \say acl deburl urlpath_regex //(Packages|Sources|Release|Translations-.*)\(.(gpg|gz|bz2))?$ /pool/.*/\.deb$ /(Sources|Packages)\.diff/ /dists/[^/]*/[^/]*/(binary-.*|source)/. (14:02:37) nacer.saidou-adamou: les requetes vers les miroirs/depots deb vont généralement récupérer des fichiers binaires, sources, translations, gpg, etc (14:03:08) nacer.saidou-adamou: deburl correspondra donc à ces requetes (14:03:15) nacer.saidou-adamou: puis la ligne: (14:03:27) nacer.saidou-adamou: cache_peer_access localhost allow aptget (14:03:42) nacer.saidou-adamou: cache_peer_access localhost allow deburl (14:03:54) nacer.saidou-adamou: cache_peer_access localhost deny all (14:04:24) nacer.saidou-adamou: ces lignes autorisent squid à intérroger apt-cacher-ng pour les requetes correspondant à aptget et deburl (14:04:38) nacer.saidou-adamou: et refuse l'autorisation pour tout autre type de requetes (14:04:42) nacer.saidou-adamou: voilà (14:04:45) nacer.saidou-adamou: relancer squid (14:05:01) nacer.saidou-adamou: puis faites (14:05:12) nacer.saidou-adamou: tail -f /var/log/apt-cacher-ng/apt-cacher.log (14:05:22) nacer.saidou-adamou: et sur un poste client, faites un aptitude update (14:05:28) nacer.saidou-adamou: et vous verrez de l'activité (14:06:02) nacer.saidou-adamou: voilà, j'ai débordé de 6 minutes }}} = Discussions = {{{#!highlight irc (14:06:13) nacer.saidou-adamou: je recois les questions (14:06:45) nacer.saidou-adamou: frumence, ca dépend comme tu veux gérer ta bp (14:07:10) nacer.saidou-adamou: si tu veux allouer une bande passante globale pour tous les réseaux pour le trafic passant par squid (14:07:22) nacer.saidou-adamou: (n'oublie pas que la visio par exemple n'est pas prise en compte) (14:07:36) nacer.saidou-adamou: tu peux configurer un réseau de classe 3 (14:07:46) nacer.saidou-adamou: avec disons 1Mb/s (14:07:55) nacer.saidou-adamou: pour l'ensemble (14:08:04) frumence.boroto: effectivement, d'ailleurs ici chez moi, la visio est même connecté devant le parefeu (14:08:09) nacer.saidou-adamou: 200K/s par sous réseaux (14:08:18) nacer.saidou-adamou: et 10K/s par poste (par exemple) (14:08:30) nacer.saidou-adamou: une autre facon de faire (14:08:45) nacer.saidou-adamou: c'est d'utiliser une classe 2 pour chaque sous réseau (14:09:04) nacer.saidou-adamou: mais tu auras autant de pool que tu as de sous réseau à configurer (14:09:36) nacer.saidou-adamou: s'il y a d'autres questions je suis preneur (14:09:41) progfou: R: l'idée c'est que le plus gros du trafic d'une implantation de nos jours, hors P2P, est du web ; donc si on limite le débit du web à un peu moins que le total de la bande passante, cela laisse une marge pour faire passer les paquet VoIP/Visio/CODA en priorité (14:10:00) frumence.boroto: nacer.saidou-adamou: merci, je vais te recontacter si j'ai des soucis a le faire correctement (14:10:15) willy: REMARQUE: j'alllais justement rappeler qu'on ne parle ici que du traffic sur le port 80 (surtout qu'on utilise squid en mode transparent) (14:10:18) nacer.saidou-adamou: (ps: frumence tu peux voir les configs que j'ai fait à la maison de savoirs) (14:10:53) frumence.boroto: ok (14:10:58) nacer.saidou-adamou: pour la partie apt-cacher-ng (14:11:38) nacer.saidou-adamou: je trouve ca plus interessant pour les implantations qui n'ont pas d'électricité en permanence comme chez (on télécharge les paquets quand on en a vraiment besoin) (14:11:57) nacer.saidou-adamou: et surtout ca économise de l'espace disque (c'est vrai que c'est vraiment un problème) (14:12:21) ***nacer.saidou-adamou est soulagé, la connexion a tenu le coup (14:13:30) nacer.saidou-adamou: bon, je mettrais mes deux interventions sous forme de slides en ligne sous peu, j'en profiterai pour les enrichir (14:13:36) progfou: REMARQUE : une piste qui serait intéressante à explorer, pour simplifier la partie cache APT, serait l'utilisation du paquet squid-deb-proxy-client côté client et de squid-deb-proxy (ou une annonce MDNS via avahi) côté serveur ; ces paquets sont disponibles avec Lucid (14:14:05) progfou: l'idée étant de faire de l'auto-découverte de proxy APT dans le réseau local, via MDNS (14:14:54) progfou: apparemment rien à configurer non plus côté poste client, juste installer le paquet, qui va ajouter quelques lignes de config dans /etc/apt/apt.conf.d/ (14:15:08) nacer.saidou-adamou: ok (14:15:27) nacer.saidou-adamou: et on aurait plus besoin de l'intégration squid - apt-cacher-ng c'est ca, (14:15:29) nacer.saidou-adamou: ? (14:15:45) progfou: disons que ça deviendrait indépendant (14:15:49) nacer.saidou-adamou: squid annonce où trouver le cache apt? (14:15:56) progfou: le client saurait quel proxy joindre pour APT et juste APT (14:16:28) willy: REMARQUE: un autre usage de squid.. en proxy inverse :) ; chez moi ça me permet de desservir plusieurs sites web qui sont situés sur des adresses locales différentes mais en utilisant en externe , une seule IP (14:16:58) nacer.saidou-adamou: je vois (14:17:10) claudine.mosozi: QUESTION : MDNS c'est quoi? (14:17:12) progfou: pour ça nginx est quand même largement plus léger (mais d'accord il ne fait pas de cache), voir même le proxypass de apache (14:17:43) nacer.saidou-adamou: moi j'utilise un nom différent pour chaque site (en virtualhost) (14:17:50) nacer.saidou-adamou: sur la même adresse ip (14:17:52) progfou: MDNS = DNS-SD = DNS en multicast = de la gestion DNS dynamique, sans configuration manuelle (14:17:57) nacer.saidou-adamou: et ca marche aussi (14:18:07) claudine.mosozi: ok (14:18:28) progfou: c'est avahi qui gère ce service sur Ubuntu (14:18:30) nacer.saidou-adamou: toto.td.auf.org et tata.td.auf.org servis par la meme ip, mais ouvre deux sites différents (14:18:36) progfou: voir ma page avahi sur wikiteki (14:18:39) willy: nacer.saidou-adamou: ça c'est lorsque tu utilises un seul serveur web ;) (14:18:50) claudine.mosozi: ok (14:19:09) nacer.saidou-adamou: heu tu en utilises combien? (14:19:13) progfou: oh ? il y a encore des gens qui mettent tout dans un seul serveur web ??? (14:19:19) progfou: moi : 1 par application web (14:19:28) progfou: indispensable niveau sécurité (14:19:42) progfou: bien sûr c'est une seule machine, les serveurs sont des CT OpenVZ (14:19:54) nacer.saidou-adamou: ben moi j'ai le site du cnf + 1 ou 2 site de micro projets (14:20:01) claudine.mosozi: est*il possible d'utiliser squid et de limiter par exemple la taille des téléchargements sur une seule partie sans avoir recours à squidguard? (14:20:01) nacer.saidou-adamou: pourquoi mettre en place une telle infras? (14:20:11) nacer.saidou-adamou: c'est aussi plus de temps de maintenance (14:20:11) claudine.mosozi: ou dansguardian? (14:20:39) progfou: avec OpenVZ ça ne fait pas vraiment plus de maintenance, non : j'ai des scripts pour les mises à jour et autre (14:21:06) progfou: pourquoi ? c'est simple : quand tu mets tout dans un seul serveur, il suffit d'un trou dans un seul de tes sites pour que tous les sites soient touchés (14:21:16) progfou: tandis quand séparant on limite les intrusions (14:21:20) nacer.saidou-adamou: et les services internes (genre django) dans un autre serveur web qui n'est pas accessible de l'extérieur (14:21:40) progfou: c'est d'autant plus important avec le web, et, hélas, avec les saletés de sites bâclés en PHP... (14:22:07) progfou: pour du service interne je ne virtualise pas, là je parle des sites à risque = en direct sur Internet (14:22:23) progfou: et puis pour Django il y a si peu de risque que c'est pas la peine non plus (14:23:10) progfou: par contre les moodle, spip, pmb, lodel, egroupware, web2project, ... et autres saletés en PHP avec des annonces de sécurité fréquentes... là c'est important de les isoler ! (14:23:44) progfou: en plus, les isoler aide aussi pour les migrations (14:23:51) claudine.mosozi: /me question pendante (14:23:55) progfou: on peut migrer chaque service un par un indépendamment (14:24:14) progfou: vas-y claudine.mosozi (14:24:22) claudine.mosozi: est*il possible d'utiliser squid et de limiter par exemple la taille des téléchargements sur une seule partie sans avoir recours à squidguard? (14:24:29) claudine.mosozi: ou dansguardian? (14:25:58) progfou: oui, avec les ACL (14:26:20) progfou: on peut limiter sur beaucoup de critères de la requête (14:26:33) progfou: la liste est indiquée dans le squid.conf fournit par défaut (14:27:57) progfou: mhhh... par contre je ne retrouve pas le critère de taille... (14:28:06) progfou: je suis presque certain que je l'avais déjà vu pourtant (14:28:41) claudine.mosozi: ce fichier est trop volumineux, c'est pas facile de se retrouver (14:29:14) claudine.mosozi: j'aimerais le faire pour une seule partie de mon réseau (14:29:15) willy: claudine.mosozi: si tu manipules bien vim, c'est un jeu d'enfant ;) (14:29:49) progfou: reply_body_max_size SIZE UNITS [acl ...] (14:30:08) progfou: ça limite la taille du corps de la réponse à un maximum donné (14:30:29) progfou: et le paramètre d'acl permet de choisir sur quelle catégorie on l'applique (14:30:53) progfou: par exemple un reply_body_max_size 1M etudiants (14:31:06) progfou: mais bon, limiter la taille est trop arbitraire... (14:31:24) progfou: il va y avoir beaucoup de cas ou le document trop gros sera tout à fait « légal » (14:31:37) claudine.mosozi: oui (14:31:39) progfou: il vaut mieux faire du ralentissement de débit à partir d'une certaine taille (14:31:45) progfou: les delay_pool sont fait pour ça (14:32:01) progfou: dire que avant 1 Mo on donne le plein débit, et si ça dépasse on passe en demie vitesse (14:32:37) claudine.mosozi: mais pour le public, j'avais préférer de limiter les download de film par exemple (14:32:39) progfou: je ne sais plus comment on configure ça en détail... mais je sais que les delay_pool savent faire ça ! et on peut trouver des exemples sur Internet (14:32:57) progfou: pour les films il y a un autre filtrage plus intéressant (14:33:03) progfou: => filtrer sur le type MIME (14:33:46) progfou: faire une acl contenu_video rep_mime_type video/.* (14:33:58) progfou: et mettre ensuite un http_reply_access deny contenu_video (14:34:28) progfou: mais là encore... filtrer l'Internet de façon arbitraire c'est mal... (14:34:38) progfou: ils vont te trouver des vidéos légitimes (14:34:58) progfou: il y a de plus en plus de screencasts par exemple, pour expliquer comment faire quelque chose, en vidéo (14:34:59) claudine.mosozi: oui (14:35:40) progfou: http://screencasts.ubuntu.com/ (14:35:54) progfou: et en plus c'est super intéressant ces vidéos :) (14:36:14) progfou: et on peut même trouver des sous-titres en plusieurs langues ! (14:36:25) claudine.mosozi: oui, je vois (14:38:11) claudine.mosozi: mais quel conseil pour bloquer certains sites (14:38:43) progfou: toujours les ACL (14:39:26) claudine.mosozi: permettent-elles de préciser les mots génériques comme dans squidguard? (14:39:40) progfou: absolument (14:40:16) willy: acl aclname srcdom_regex [-i] xxx ; url_regex [-i] ^http:// ... sont tes amis :) (14:40:23) progfou: chez moi j'ai ça : acl GOOD_IP dst "/etc/squid/good_ip" acl GOOD_URL url_regex -i "/etc/squid/good_url" acl BAD_IP dst "/etc/squid/bad_ip" acl BAD_URL url_regex -i "/etc/squid/bad_url" (14:40:51) progfou: cnf:~# head /etc/squid/bad_url # Les adresses de sites gay sont difficiles à filtrer # vu que 'gay' est un mot valide en vietnamien ! (beaver|lesbian|lesbo|adultland|babes|teen|nude) (xxx|intergal|oldergals|smut|porn|sex|erotic) (pussy|intertainextreme|pussies|slut|hotqueens) (whore|tryusfree|cun-tv) heartbreaker\.com adult1000\.com ... (14:40:53) claudine.mosozi: ok, merci (14:41:16) progfou: cnf:~# head /etc/squid/good_url .*hotmail\.msn\.com/cgi-bin/dasp/hackerr\.asp .*bytesex\.org .*danish-.*\.dk .*filezilla.* ftp\.nerim\.net .*linux.* .*debian.* .*ubuntu.* pupweb\.org (14:41:40) progfou: on voit encore une fois le danger de filtrer arbitrairement... (14:41:52) progfou: par exemple on filtre le mot "sex" pour éviter la pornographie (14:42:33) progfou: mais les étudiants en médecine ont besoin de consulter des sites qui parlent des MST (maladies sexuellement transmissibles) (14:42:38) progfou: et ils subissent le filtrage... donc on doit gérer beaucoup d'exceptions ensuite ! (14:43:02) claudine.mosozi: ok (14:44:03) progfou: même en informatique le mot bytesex désigne les catégorie de d'arrangement des octets dans la mémoire (little endian, big endian, et autres joyeusetés...) (14:45:00) progfou: mais sinon, attention aussi au fait que tout cela c'est vraiment de la bidouille, avec une gestion très manuelle derrière... (14:45:24) claudine.mosozi: ok, je comprends mais des fois ça embête (14:45:42) claudine.mosozi: surtout si on a une petite bande pasasnte (14:46:12) progfou: alors que les outils comme squidguard ou dansgardian sont des outils bien pensés et il me semble qu'ils sont capable de recevoir des mises à jour automatiques des listes de filtrages (14:46:23) claudine.mosozi: oui (14:46:30) progfou: oui, tu as tout à fait raison de te poser ces questions (14:46:47) progfou: et sur le problème de la bande passante aussi, c'est très sérieux et pas simple à gérer (14:46:50) willy: une chose que tu pourrais aussi faire c'est la sensibilisation des utilisateurs sur le bon usage du réseau; certes tout le monde ne comprendra pas mais c'est nécessaire je trouve (14:47:33) claudine.mosozi: c'est une idée mais difficile à faire comprendre (14:47:53) progfou: mais selon moi, la meilleure stratégie c'est 1/ sensibiliser les usagers (merci Willy) et 2/ ne pas filtrer mais ralentir ce qui est indésirable en lui accordant la priorité la plus basse (=> c'est un projet d'étude et déploiement de QoS à lancer globalement à l'AuF) (14:49:08) claudine.mosozi: ok, je comprend (14:49:12) progfou: tiens, un post intéressant ici : http://www.mail-archive.com/squid-users@squid-cache.org/msg52281.html (14:49:27) patrick.mwamba: Je pense aussi que il faut de fois vérifier à la fin de chaque journée les machines dont vous avez douté les utilisateurs si réellement vous aviez raison de le faire des reproches pour ne plus aller sur des sites porno. (14:49:31) progfou: qui répond avec des exemples à tes questions plus haut (14:50:16) progfou: les questions de la surveillance et de la vérification posent un véritable problème légal... (14:50:28) progfou: c'est à la limite de la violation de la vie privée (14:50:33) willy: +1 (14:50:45) progfou: avant d'avoir le droit de faire cela, il faut annoncer clairement aux utilisateurs qu'ils sont surveillés (14:50:56) progfou: et rien qu'en annonçant ça, tout de suite tout ira mieux ! ;-) (14:51:04) progfou: car ils auront peur de ce qu'on verra (14:51:12) progfou: donc ils n'iront pas sur ces sites (14:52:00) progfou: légalement, il faudrait pour qu'on ait le droit de surveiller que les utilisateurs aient signée une charte d'usage des ressources informatiques (14:52:26) progfou: dans cette charte il serait écrit très clairement ce qui est autorisé et ce qui est interdit et que tout est surveillé (14:52:46) progfou: à partir de là, avec un document signé par l'utilisateur avec une mention « lu et approuvé », on est protégé (14:53:06) progfou: sans ça, l'utilisateur peut nous poursuivre en justice pour abus de pouvoir et violation de vie privée (14:53:17) progfou: ça c'est l'aspect légal (14:53:27) progfou: à côté de ça il y a aussi l'aspect éthique (14:53:33) progfou: est-ce bien normal de surveiller les gens ? (14:53:35) willy: je ne sais pas si c'est le cas chez les autres mais chez nous, il y a une clause dans la charte d'utilisation des ressources informatiques où on demande aux abonnés d'utiliser le réseau "dans le cadre exclusif de l'activité professionelle des utilisateurs: activités de recherche, d'enseignement, de transfert de technologies,..." (14:53:55) progfou: moi je n'aimerais pas qu'on surveille tout ce que je fais... et on ne devrait pas avoir besoin de le faire ! (14:54:11) patrick.mwamba: puisque en bloquant certaines choses il des risques puisque je me souviens un fois fois que j'avais fais ça avec un logiciel Windows il y a un utilisateur qui avait un compte où il y avait le mot gay. Donc à chaque fois que lui devrait aller dans sa boite il fallait que je désactive le logiciel sur la machine qu'il devait utilisé. (14:54:33) progfou: c'est pour ça que je pense que la stratégie d'ouverture avec ralentissement des accès pour les trucs indésirables est préférable (14:55:35) progfou: willy, cette clause seule ne suffit pas, il faut aussi des clauses qui expliquent qu'on surveille et ce qui se passe lors d'une faute constatée (14:57:00) progfou: patrick.mwamba, oui, c'est le danger du filtrage de mots arbitraires, surtout des mots aussi courts => ils peuvent se retrouver dans des mots plus longs (en vietnamien "gay" est dans "ngay" qui veut dire "jour, journée", donc c'est très commun comme mot) (14:57:25) patrick.mwamba: progfou: tu viens de me donner une idée il faudrait que je jète un coup d'œil sur notre charte. Puisque c'est le Responsable qu'il avait écrit. Comme ça j'y ajouterai aussi quelque chose du point de vue technique. Bien sûr avec son accord (14:58:05) progfou: oui, mais attention : modifier la charte veut dire qu'il faut refaire signer la nouvelle version par tous les usagers... (14:58:22) progfou: c'est le genre de document qu'il vaut mieux bien penser dès le départ... ;-) (14:59:18) progfou: Thomas Noël avait travaillé sur ce type de document, cf http://wiki.auf.org/wikiteki/Projet/CharteTechnique/RessourcesInformatiques (15:00:09) progfou: une version de ce document a été revue ensuite par des avocats, puis mise en place à Paris, et il me semble à Montréal aussi (15:00:32) progfou: si ça vous intéresse vous pouvez demander à l'ARI si un modèle officiel est disponible (15:01:26) patrick.mwamba: je le ferai d'autant plus ici chez nous nous sommes encore au début (15:01:40) progfou: voir le point D.4 pour les histoires de surveillance (15:01:44) claudine.mosozi: moi, ça m'intéresse (15:02:03) claudine.mosozi: je ne sais pas si un tel document existe ici (15:02:16) claudine.mosozi: je me suis débrouillé avec juste de petis affichages (15:02:32) claudine.mosozi: dans les salles publics (15:03:23) progfou: après, la loi c'est une chose, mais ça ne marche pas toujours, ça dépend des pays... il y a des pays où citer la loi fait sourire les gens, donc bon... ;-) dans ce cas il faut s'adapter et trouver la méthode adéquate en fonction de la culture locale (15:05:05) claudine.mosozi: ça c'est vrai (15:05:53) claudine.mosozi: merci à tous les intervenants pour cette semaine tech enrichissante, (15:06:03) claudine.mosozi: bon week-*end à tous (15:06:10) progfou: bonne fin de semaine à toi :) (15:06:38) willy: on peut aussi clôturer cet atelier une fois ? :) (15:06:47) progfou: ah... on a oublié... :-D (15:06:55) willy: ok... (15:07:00) progfou: on a largement débordé là ;-) (15:07:07) willy: --------------------- FIN ATELIER : squid ----------------- (15:07:12) progfou: faudra peut-être pas tout coller sur le wiki ;) (15:07:23) willy: (ok, c'est noté) (15:07:46) willy: ___FIN DE LA SEMAINE TECH__ !! Merci à tous :) (15:07:54) progfou: ou au moins séparer la discussion qui concernent ton atelier de ce qui a suivi (15:14:21) progfou: bon... on détruit ce salon maintenant ? ;-) (15:17:51) willy: oui }}}