Hallo,

Ich benötige Hilfe bei folgendem Problem. Mehrere Clients befinden sich mit
einem Server in einem lokalen Netzwerk. Alle Systeme haben Internetzugriff und
alle laufen mit Debian Buster. Die Clients sollen bei Updates nicht alle
einzeln Ihre Pakete abholen, sondern diese vom Server abrufen.

Ich habe apt-cacher-ng aufgesetzt. Der Proxy wurde in
/etc/apt/apt.conf.d/99proxy eingetragen:

  Acquire::http { Proxy "http://A.B.C.D:3142";; };

Die Einträge bei den Clients sehen so aus:

  deb http://deb.debian.org/debian/ buster main contrin non-free
  deb http://deb.debian.org/debian-security/ buster main contrin non-free

apt-cacher-ng ist so eingestellt, dass alle Anfragen an

  https://deb.debian.org/

umgeleitet werden.

Außerhalb des Netzwerks werden die Pakete also über HTTPS, innerhalb des
Netzwerks über HTTP transportiert. Der Netzwerkbetreiber möchte aber auch gerne
innerhalb des lokalen Netzwerks die Pakete über eine verschlüsselte Verbindung
transportieren.

Das kann apt-cacher-ng aber nur mit der gesetzten PassThroughPattern-Option,
womit der zentrale Aspekt des Cachings wegfällt. Die Alternative wäre, einen
kompletten Spiegel des Debian-Archives (mehrere Dutzend GB) vorzuhalten (z.B.
apt-mirror, aptly) und via HTTPS den Clients anzubieten. Das finde ich aber mit
Kanonen auf Spatzen geschossen.

Jetzt fand ich in
https://binfalse.de/2019/05/13/apt-cacher-ng-vs-apt-transport-https/ folgende
Aussage:

[..] There is apparently no support for TLS in apt-cacher-ng, but you can still
configure an Nginx proxy (or what ever proxy you find handy) at the cache
server, which supports TLS and just forwards requests to the upstream apt-
cacher-ng at the same machine. [..]

Das würde ich gerne ausprobieren, habe mit nginx aber noch nicht gearbeitet.
Die Masse der Dokumentation dreht sich auch nur um die Nutzung von Nginx als
Reverse Proxy. Ich habe nur wenige Artikel gefunden, die sich mit dem Thema
Forward Proxy beschäftigen. Hat das vielleicht schon einmal jemand gemacht,
oder ist mit Nginx so vertraut, mit helfen zu können?

Gruß, Daniel


Antwort per Email an