Installer un cache de paquets APT permet d'économiser de la bande passante réseau, en téléchargeant une fois le paquet demandé, puis en le redistribuant localement à tous les postes clients qui en font la demande. C'est un gain de temps considérable si vous avez beaucoup de postes clients à mettre à jour, si vous installez souvent des distributions GNU/Linux puisque ça vous évite à chaque fois de retélécharger les milliers de paquets nécessaires, offrant un gain de vitesse et de confort considérables... Bien entendu si vous n'avez qu'un ou deux PC, l'intérêt est moindre voire nul.
Il y a plusieurs systèmes disponibles sous GNU/Linux, un des plus connus étant le couple squid-deb-proxy (côté serveur) et squid-deb-proxy-client (côté clients). Problème : le paquet squid-deb-proxy n'est plus disponible actuellement dans la Debian 12, étant coincé en version testing... Reviendra t'il ou pas dans un avenir proche, mystère. Toujours est-il qu'on peut le remplacer par apt-cacher-ng qui va jouer le même rôle.
On considère ici un pare-feu GNU/Linux, installé "au cul de la box" pour rester courtois, comprenez une machine standard peu puissante, mais si possible avec deux interfaces réseau : une vers la box fibre/ADSL, l'autre vers un switch (commutateur) qui va distribuer le réseau local...
Le plus simple est alors d'installer apt-cacher-ng sur ce pare-feu, qui va proposer le service de cache sur le port TCP 3142, port qu'il faudra évidemment restreindre au réseau local, et ne pas rendre disponibles sur l'interface vers le web...
Code : Tout sélectionner
apt update && apt install apt-cacher-ng -y
En admettant que bind9 (serveur DNS) soit également installé sur le pare-feu, et propose un domaine local avec zone directe et résolution inverse, la petite astuce sympathique est qu'on peut alors indiquer directement, dans la zone directe, le service de cache APT aux clients, via une entrée de type :
Code : Tout sélectionner
...
_apt_proxy._tcp IN SRV 0 0 3142 nom_canonique_de_mon_proxy_ou_son_ip
...
nom_canonique_de_mon_proxy IN A 192.168.X.Y
...
Code : Tout sélectionner
BindAdress: localhost ADRESSE_IP_LOCALE_DU_PAREFEU
Code : Tout sélectionner
BindAdress: localhost 192.168.0.1
Code : Tout sélectionner
ss -tunlp
Code : Tout sélectionner
...192.168.0.1:3142...
...127.0.0.1:3142...
Code : Tout sélectionner
apt update && apt install auto-apt-proxy -y
Code : Tout sélectionner
auto-apt-proxy
Code : Tout sélectionner
http://nom_canonique_de_mon_proxy.mondomaine.fr:3142