Logo debian

Debian Package Cache Server mit Apt-Cacher-NG

Installation ist Debian 10 Buster als Net-Install mit Standardtools und SSH-Server. Da in meiner Testumgebung einige Linuxsysteme (Debian, Fedora, Ubuntu, Linux Mint etc.) laufen, und diese regelmäßig aktualisiert werden, möchte ich die Bandbreite für den Download der Pakete minimieren und warum wenn sie nicht eh schon angefragt werden, lokal zwischenspeichern, und dem nächsten System bereit stellen.

Ein Anwendungsfall ist z.B. die Installation von 30 Ubuntu /Linux Mint Desktop Clients. Alle müssen ihre Pakete aus dem Internet beziehen und Tools und Sicherheitsupdates herunterladen und installieren. Da macht es doch Sinn, dass dies einmal passiert und die anderen dann die Pakete aus dem lokalen Netz holen.

Projektseite: https://www.unix-ag.uni-kl.de/~bloch/acng/
Debian Changelog: https://launchpad.net/debian/+source/apt-cacher-ng/+changelog
Ubuntu Package Infos: https://launchpad.net/ubuntu/+source/apt-cacher-ng

Voraussetzungen

  • statische IP-Adresse oder besser einen auflösbaren Hostnamen für den Apt-Cache-NG Server
  • Port 3142 ist nutzbar und auf dem Server / Netzwerk offen
  • Internetverbindung zum Apt-Cache-NG Server

Installation Apt-Cacher-NG

Die Installation nachfolgend über das in Debian Stable bereit gestellte Paket in Version 3.2.1.

# apt install apt-cacher-ng

Die Frage nach dem HTTP-Tunnel für Apt-acher NG nicht erlauben.

Damit ist die Installation abgeschlossen. Kurze Prüfung ob Apt-Cacher NG nun läuft:

# systemctl status apt-cacher-ng.service
● apt-cacher-ng.service - Apt-Cacher NG software download proxy
   Loaded: loaded (/lib/systemd/system/apt-cacher-ng.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2020-06-06 00:07:01 CEST; 2min 17s ago
  • läuft als Service automatisch beim Start

Apt-Cacher-NG konfigurieren

# nano /etc/apt-cacher-ng/acng.conf

Apt-Cacher-NG Web Konfiguration und Statistiken

In der folgenden Datei werden die Zugangsdaten für die Webseite mit den Statistiken, den Namen der HTML-Datei, und weiteren Konfigurationen wie der Port, Logfile und Cacheverzeichnis festgelegt:

# nano /etc/apt-cacher-ng/security.conf
# This file contains confidential data and should be protected with file
# permissions from being read by untrusted users.
#
# NOTE: permissions are fixated with dpkg-statoverride on Debian systems.
# Read its manual page for details.

# Basic authentication with username and password, required to
# visit pages with administrative functionality. Format: username:password

AdminAuth: mooma:moopa
CacheDir: /var/cache/apt-cacher-ng
LogDir: /var/log/apt-cacher-ng
Port: 3142
ReportPage: acng-report.html

Der Aufruf der Webseite erfolgt dann mittels IP-Adresse oder Hostname wie folgt:

# Startseite
http://<hostname>:3142/

# Reportseite
http://<hostname>:3142/acng-report.html

Nachdem die Reportseite aufgerufen wurde, muss nur noch auf den Button “Count Data” unter Log analysis geklickt werden und die Statistiken werden generiert.

Apt-Cacher-NG  - Start Log Analysis
Apt-Cacher-NG – Start Log Analysis

Sicherheit Konfigurationsseite

Per Default kann jeder der die URL kennt die Reportseite mit den Statistiken und weiteren Möglichkeiten aufrufen. Dies kann durch eine einfache User-/Passwortabfrage unterbunden werden.

# nano /etc/apt-cacher-ng/security.conf
AdminAuth: taste:pw-it

Apt-Cacher-NG am Client konfigurieren

Es gibt 4 verschiedene Möglichkeiten den Clients den neuen Apt-Cache-Proxy mitzuteilen. Nachfolgende wird der Cache-Proxy direkt auf dem Client konfiguriert. Wer Squid nutzt kann ihn z.B. über ein Redirect setzen. Ich setze ihn auf jeden Clients wie folgt selbst für http und https Quellen – hier unter Debian. Es kann der obige Server mit Hostname oder IP-Adresse angegeben werden:

# nano /etc/apt/apt.conf.d/01aptproxy
Acquire::http { Proxy "http://APTSERVER:PORT"; };
Acquire::https { Proxy "https://"; };

Es wird empfohlen die Clientkonfiguration auch auf dem Server selbst durchzuführen.

Die Konfiguration und Möglichkeiten sind umfangreich und ein Blick ins Handbuch ist zu empfehlen: https://www.unix-ag.uni-kl.de/~bloch/acng/html/index.html

Have Fun….

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.