Nous hébergeons sur le serveur, quelques dépôts usuels que nous mettons à jour quelques heures avant l'install.
Pour cela, comptez 20Go par dépôt et par version. Nous utilisons soit rsync, soit ftp, soit debmirror pour synchroniser tout ça. Les dépots sur le serveur seront ensuites accessibles via apache.
Pour permettre leur utilisation sans modifier les postes clients, nous profiterons de squid pour traduire les demandes de dépot potentiellements disponibles sur le serveur.
Nous utilisons un script python qui recupere les url demandé par squid et qui les traduit en local ou reste inchangées.
Exemple : - on demande http://archive.ubuntu.com/ubuntu/pool/a/alien_1.2.3.deb - Squid transmet l'url au script python - le script retranscris en adresse locale : http://127.0.0.1/ubuntu/pool/a/alien_1.2.3.deb - Si le fichier local existe, le script renvoi l'url locale, sinon renvoi l'url non modifiée
Cet utilisation est recommandée surtout si vous prévoyez beaucoup de mise à jour système ou des installs par le réseau.
Attention, si votre redirector ne fonctionne pas correctement, le proxy squid ne saura plus gérer les requetes. Ajoutez cette ligne à votre fichier /etc/squid3/squid.conf url_rewrite_program /usr/local/bin/squid-redirector.py
Faite en sorte que squid ne “cache” pas ce qui est sur le réseau local. (En effet le redirector ne va pas renvoyer un fichier mais une URL locale)
wget "http://pgl.yoyo.org/adservers/serverlist.php?hostformat=squid-dstdom-regex&showintro=1&startdate[day]=&startdate[month]=&startdate[year]=&mimetype=plaintext" -O /usr/share/squid/filter_pub
Ajoutez cela au fichier /etc/squid3/squid.conf
acl PubSites url_regex "/usr/share/squid/filter_pub" http_access deny PubSites
Voici le script en question /usr/local/bin/squid-redirector.py : https://github.com/Linuxquimper/squid-redirector