Avenger84
Lt. Commander
- Registriert
- Feb. 2008
- Beiträge
- 1.843
Ich nutze Unbound auf Ubuntu 24.04: "1.19.2-1ubuntu3.9".
Nun habe ich zufällig gesehen, dass es offiziell schon 1.26 gibt, aber es gibt keine Repo und der Docker ist noch älter.
KI hat mir eine lustige Anleitung erstellt, aber da lasse ich lieber die Finger von.
Daher die Frage: Nutzt hier Jemand die aktuelle Unbound Version? Wenn ja wie?
edit, sehe gerade dass es doch einen 1.26 Docker gibt: https://hub.docker.com/layers/klutchell/unbound/1.26.0
nutzt ihr den?
Nun habe ich zufällig gesehen, dass es offiziell schon 1.26 gibt, aber es gibt keine Repo und der Docker ist noch älter.
KI hat mir eine lustige Anleitung erstellt, aber da lasse ich lieber die Finger von.
Daher die Frage: Nutzt hier Jemand die aktuelle Unbound Version? Wenn ja wie?
Selbst kompilieren, aber mit denselben Pfaden wie das apt-Paket (--prefix=/usr --sysconfdir=/etc), damit deine bestehende /etc/unbound/unbound.conf und der vorhandene systemd-Unit unverändert weiterlaufen. Wichtig dabei: der mitgelieferte systemd-Unit nutzt Type=notify, was ohne einen mit --enable-systemd kompilierten Unbound zu einem hängenden bzw. fehlschlagenden Service-Start führt – dafür brauchst du libsystemd-dev. archlinuxarchlinux
Build-Abhängigkeiten:
bash
sudo apt install -y build-essential libssl-dev libexpat1-dev bison flex libsystemd-dev pkg-config
Quelle holen und Prüfsumme checken:
bash
mkdir -p ~/build && cd ~/build
wget https://nlnetlabs.nl/downloads/unbound/unbound-1.26.0.tar.gz
wget https://nlnetlabs.nl/downloads/unbound/unbound-1.26.0.tar.gz.sha256
sha256sum -c unbound-1.26.0.tar.gz.sha256
tar xzf unbound-1.26.0.tar.gz
cd unbound-1.26.0
Konfigurieren, bauen, installieren (überschreibt nur die Binaries, Config/Unit bleiben unangetastet):
bash
./configure --prefix=/usr --sysconfdir=/etc --enable-systemd
make -j$(nproc)
sudo make install
Testen und neu starten:
bash
unbound -V # sollte 1.26.0 zeigen
sudo unbound-checkconf # prüft, ob deine Config mit dem neuen Build kompatibel ist
sudo systemctl restart unbound
systemctl status unbound
Ein Punkt, den man leicht übersieht: dpkg weiß nichts von dem manuellen Build. Ein künftiges apt upgrade würde die Binary sonst irgendwann wieder auf 1.19.2 zurücksetzen, ohne dass es auffällt. Dagegen hilft:
bash
sudo apt-mark hold unbound
Damit fasst apt das Paket nicht mehr an, und du wiederholst den Build manuell, sobald NLnet Labs die nächste Version released.
Falls deine unbound.conf Optionen wie dnstap:, cachedb: oder Python-Module nutzt (im Ubuntu-Paket standardmäßig aktiv), brauchst du zusätzlich --enable-dnstap, --enable-cachedb --with-libhiredis bzw. --with-pythonmodule --with-pyunbound samt der passenden -dev-Pakete – sonst bricht unbound-checkconf bei diesen Zeilen ab.
Build-Abhängigkeiten:
bash
sudo apt install -y build-essential libssl-dev libexpat1-dev bison flex libsystemd-dev pkg-config
Quelle holen und Prüfsumme checken:
bash
mkdir -p ~/build && cd ~/build
wget https://nlnetlabs.nl/downloads/unbound/unbound-1.26.0.tar.gz
wget https://nlnetlabs.nl/downloads/unbound/unbound-1.26.0.tar.gz.sha256
sha256sum -c unbound-1.26.0.tar.gz.sha256
tar xzf unbound-1.26.0.tar.gz
cd unbound-1.26.0
Konfigurieren, bauen, installieren (überschreibt nur die Binaries, Config/Unit bleiben unangetastet):
bash
./configure --prefix=/usr --sysconfdir=/etc --enable-systemd
make -j$(nproc)
sudo make install
Testen und neu starten:
bash
unbound -V # sollte 1.26.0 zeigen
sudo unbound-checkconf # prüft, ob deine Config mit dem neuen Build kompatibel ist
sudo systemctl restart unbound
systemctl status unbound
Ein Punkt, den man leicht übersieht: dpkg weiß nichts von dem manuellen Build. Ein künftiges apt upgrade würde die Binary sonst irgendwann wieder auf 1.19.2 zurücksetzen, ohne dass es auffällt. Dagegen hilft:
bash
sudo apt-mark hold unbound
Damit fasst apt das Paket nicht mehr an, und du wiederholst den Build manuell, sobald NLnet Labs die nächste Version released.
Falls deine unbound.conf Optionen wie dnstap:, cachedb: oder Python-Module nutzt (im Ubuntu-Paket standardmäßig aktiv), brauchst du zusätzlich --enable-dnstap, --enable-cachedb --with-libhiredis bzw. --with-pythonmodule --with-pyunbound samt der passenden -dev-Pakete – sonst bricht unbound-checkconf bei diesen Zeilen ab.
edit, sehe gerade dass es doch einen 1.26 Docker gibt: https://hub.docker.com/layers/klutchell/unbound/1.26.0
nutzt ihr den?