Lese-Ansicht

TUXEDO stoppt Entwicklung an ARM Notebook und sorgt für Kernel Streit

TUXEDO Computers hat überraschend die Arbeiten am geplanten Snapdragon X Elite Notebook eingestellt. Das ambitionierte Linux Gerät wird nicht erscheinen. Die Entwickler wollen ihre bisherige Arbeit jedoch nicht komplett verwerfen. Sie haben neue Device Tree Patches veröffentlicht und hoffen auf Nutzen für andere Systeme. Die Entscheidung stößt jedoch auf Widerstand in der Kernel Gemeinschaft. Zwar […]

Der Beitrag TUXEDO stoppt Entwicklung an ARM Notebook und sorgt für Kernel Streit erschien zuerst auf fosstopia.

  •  

GNOME 48.7 bringt Verbesserungen für den Linux Desktop

Das GNOME Projekt hat die Version 48.7 veröffentlicht und spricht von einem unspektakulären Wartungsupdate. Dennoch steckt in diesem Release mehr als nur Routinearbeit. Viele zentrale Module der Desktopumgebung erhielten neue Versionssprünge und kleinere Optimierungen. Besonders die GNOME Shell wurde überarbeitet und beseitigt mehrere lästige Probleme. Dazu gehören ein falsches Netzwerksymbol bei Verbindungsverlust, eine bessere Sortierung […]

Der Beitrag GNOME 48.7 bringt Verbesserungen für den Linux Desktop erschien zuerst auf fosstopia.

  •  

Bottles 60.0 bringt frischen Wind für Windows Apps auf Linux

Die Entwickler von Bottles haben Version 60.0 veröffentlicht und liefern damit ein starkes Update für alle, die Windows Anwendungen bequem unter Linux nutzen möchten. Die Software baut auf Wine auf und bietet eine grafische Oberfläche, die den Umgang mit komplexen Konfigurationen deutlich erleichtert. Eine der wichtigsten Neuerungen ist die native Wayland Unterstützung. Nutzer moderner Linux […]

Der Beitrag Bottles 60.0 bringt frischen Wind für Windows Apps auf Linux erschien zuerst auf fosstopia.

  •  

KeePassXC 2.7.11 bringt frischen Schwung und neue Funktionen

Nach acht Monaten Pause meldet sich KeePassXC mit Version 2.7.11 zurück. Der freie Passwortmanager bleibt ein zentraler Baustein für Nutzerinnen und Nutzer, die Wert auf Sicherheit und Plattformvielfalt legen. Windows, macOS und Linux werden weiterhin unterstützt und die Community treibt die Entwicklung konsequent voran. Besonders auffällig ist der neue Anhangsviewer. Bilder, HTML und Markdown lassen […]

Der Beitrag KeePassXC 2.7.11 bringt frischen Schwung und neue Funktionen erschien zuerst auf fosstopia.

  •  

Linus Torvalds über KI im Linux Kernel Code

Künstliche Intelligenz ist längst Teil vieler Entwicklungsumgebungen. In der Open Source Szene stößt sie jedoch oft auf Misstrauen. Kritiker verweisen auf rechtliche und moralische Fragen beim Training solcher KI-Systeme. Denn die Grundlage bilden meist fremde Codebestände, was viele Entwickler als problematisch empfinden. Linus Torvalds gilt seit Jahrzehnten als pragmatischer Kopf der Kernelwelt. Beim jüngsten Open […]

Der Beitrag Linus Torvalds über KI im Linux Kernel Code erschien zuerst auf fosstopia.

  •  

KVM-Konflikte mit VirtualBox unter Ubuntu 24.04 dauerhaft lösen

Seit einiger Zeit treten unter Ubuntu 24.04 LTS Probleme beim Ausführen von VirtualBox auf. Diese lassen sich zwar temporär durch das Entladen eines KVM-Moduls beheben, tauchen jedoch nach einem Neustart wieder auf.

KVM steht für Kernel-based Virtual Machine und ist eine Virtualisierungstechnologie für Linux auf x86-Hardware.

Temporäre Lösung

Abhängig vom verwendeten Prozessor kann das jeweilige KVM-Modul aus dem laufenden Kernel mit folgendem Befehl entfernt werden:

sudo modprobe -r kvm_intel

bei AMD-Systemen:

sudo modprobe -r kvm_amd

Diese Methode ist jedoch nicht dauerhaft, da das Modul nach einem Neustart wieder geladen wird.

Bei der Recherche zu diesem Thema bin ich auf zwei Lösungsansätze gestoßen, die das Problem dauerhaft beheben sollten. Zum einen geht es um das Hinzufügen einer Boot-Option in GRUB, zum anderen um die Erstellung einer Blacklist der entsprechenden KVM-Module für VirtualBox.

1. Ansatz – Eingriff in den Bootloader (GRUB)

In der Datei /etc/default/grub wird der Eintrag

GRUB_CMDLINE_LINUX=

um folgenden Parameter (siehe Screenshot) ergänzt:

"kvm.enable_virt_at_load=0"

Anschließend muss die GRUB-Konfiguration aktualisiert werden:

sudo update-grub

⚠ Wichtiger Hinweis:
Ein fehlerhafter Eintrag in der GRUB-Konfiguration kann dazu führen, dass das System nicht mehr startet. Unerfahrene Nutzer könnten in eine schwierige Situation geraten. Daher ist ein vollständiges System-Backup vor dem Eingriff unbedingt empfehlenswert.

GRUB-Konfiguration (Entleerung des KVM-Moduls)
GRUB-Konfiguration

2. Ansatz – Blacklisting des KVM-Moduls

Ein sichererer und eleganterer Weg ist das Blacklisting des Moduls. Dazu wird eine neue Konfigurationsdatei angelegt:

sudo nano /etc/modprobe.d/blacklist-kvm.conf

Dort fügt man folgende Zeilen hinzu:

blacklist kvm
blacklist kvm_intel

Nach einem Neustart des Systems wird das jeweilige KVM-Modul nicht mehr geladen und VirtualBox sollte wie gewohnt funktionieren.

Fazit

Die zweite Methode ist risikoärmer und benutzerfreundlicher. Dennoch empfiehlt es sich, vor jeder Änderung am System ein Backup anzulegen.

Viel Erfolg beim Virtualisieren!

Der Beitrag KVM-Konflikte mit VirtualBox unter Ubuntu 24.04 dauerhaft lösen erschien zuerst auf intux.de.

  •  

KDE Plasma 6.5.3 bringt Stabilität und viele gezielte Verbesserungen

KDE veröffentlicht Plasma 6.5.3 und setzt damit den Weg zu mehr Stabilität fort. Die neue Ausgabe erscheint kurz nach Version Plasma 6.5.2 und liefert viele Feinheiten, die den Alltag spürbar verbessern. Neue Funktionen gibt es nicht, doch die Pflege des Desktops bleibt im Mittelpunkt. Die Arbeit am Breeze Theme sorgt für ein abgerundetes Erscheinungsbild auf […]

Der Beitrag KDE Plasma 6.5.3 bringt Stabilität und viele gezielte Verbesserungen erschien zuerst auf fosstopia.

  •  

📚 30 Jahre Linux-Buch

Ende November erscheint die 19. Auflage meines Linux-Buchs und markiert damit ein denkwürdiges Jubiläum: Das Buch ist jetzt 30 Jahre alt!

Gleichzeitig ist das Buch so modern wie nie zuvor. Bei der Überarbeitung habe ich das Buch an vielen Stellen gestrafft und von Altlasten befreit. Das hat Platz für neue Inhalte gemacht, z.B. rund um die folgenden Themen:

  • Die Shell fish (neues Kapitel)
  • Swap on ZRAM
  • Geoblocking mit nft (neuer Abschnitt)
  • Samba im Zusammenspiel mit Windows 11 24H2
  • Monitoring mit Prometheus und Grafana (neues Kapitel, Docker-Setup mit Traefik)
  • KI-Sprachmodelle ausführen (neues Kapitel)
  • Berücksichtigung von CachyOS

Umfang: 1429 Seiten
ISBN: 978-3-367-11069-8
Preis: Euro 49,90 (in D inkl. MWSt.)

 

Weitere Informationen zum Buch finden Sie hier.

Aus dem Vorwort

Sowohl Linux als auch mein Buch haben sich in den vergangenen 30 Jahren natürlich dramatisch verändert. Die folgenden Absätze stammen aus dem Vorwort. Das gesamte Vorwort befindet sich in der Leseprobe (PDF) zum Buch.

Als ich an der ersten Auflage dieses Buchs schrieb, hatten die meisten Privatanwenderinnen und -anwender noch gar keinen Internetzugang, und wenn doch, dann über ein unzuverlässiges Modem. Das World Wide Web war gerade im Entstehen. In der ersten Auflage des Buchs habe ich Mosaic als Linux-tauglichen Webbrowser empfohlen. Erst in der zweiten Auflage konnte ich auf Netscape eingehen, der damals als erster »richtiger« Browser kostenlos für Linux zur Verfügung stand. (Aus Netscape wurde später Mozilla Firefox.)

Das wichtigste Medium zur Verbreitung von Linux war in den 90er-Jahren die CD. Die ersten Auflagen dieses Buchs enthielten deswegen CDs (später DVDs) mit Linux-Distributionen. Der Siegeszug des Internets veränderte den Charakter dieses Buchs: Es war nicht mehr notwendig, alle Optionen diverser Kommandos bis ins letzte Detail zu beschreiben; jetzt reicht ein Link auf eine Webseite mit vertiefenden Informationen.

In den Vordergrund des Buchs rückte die Vermittlung von Unix/Linux-Grundlagen. Ja, alles steht im Internet, aber Leserinnen und Leser schätzen den geordneten Überblick über Linux, die strukturierte Sammlung von Basiswissen so sehr, dass sich regelmäßige Neuauflagen lohnen. Die altmodische, aber werbefreie Präsentation auf Papier (oder in einem E-Book), frei von blinkenden Bannern und lästigen Werbevideos, ist ein entscheidender Vorteil.

Parallel zur Entwicklung des Internets bekam dieses Buch einen neuen inhaltlichen Fokus. Immer mehr Organisationen und Firmen betreiben selbst Linux-Server, sei es zu Hause, auf gemieteten Root-Servern oder in virtuellen Maschinen (Cloud-Instanzen). Dementsprechend erklärt dieses Buch, wie Sie selbst SSH-, Web-, Mail- und Datenbank-Server einrichten und sicher betreiben.

Ein weiterer Meilenstein der Linux-Geschichte war die Vorstellung des Raspberry Pi vor gut einem Jahrzehnt. Dieser preisgünstige Linux-basierte Mini-Computer bietet viele Anwendungen, von elektronischen Bastelprojekten bis zur Basisstation für die eigene Home Automation.

Seit 2022 zeichnet sich eine weitere IT-Zeitenwende ab: Mit ChatGPT wird der erste brauchbare KI-Chatbot frei verfügbar. Es lässt sich trefflich darüber streiten, wie »intelligent« dieses und konkurrierende Systeme sind. Fest steht, dass KI-Tools eine großartige Hilfe bei Linux-Problemen aller Art sind.

Nachdem ich mich vor zwei Jahrzehnten gefragt habe, ob das Internet IT-Bücher obsolet macht, stellt sich diese Frage jetzt wieder. Und neuerlich glaube ich, dass dies nicht der Fall sein wird. KI-Tools helfen (auch) bei der Lösung von Linux-Problemen. Dennoch brauchen Sie einiges an Grundwissen, um funktionierende Prompts zu formulieren. Und noch mehr Wissen zur Abschätzung, ob die Antworten von ChatGPT & Co. plausibel, veraltet oder frei erfunden sind. Genau dieses Wissen vermittele ich hier — seit 30 Jahren!

Links

  •  

LibreOffice 25.8.3 bringt Fehlerkorrekturen für die Office Suite

Die Entwickler hinter LibreOffice haben eine neue Ausgabe der beliebten Office Suite veröffentlicht. Die Version 25.8.3 richtet sich an alle Nutzer, die mehr Stabilität und ein verlässliches Arbeitsumfeld wünschen. Die Aktualisierung folgt rund fünf Wochen nach der vorherigen Ausgabe und verbessert laut Ankündigung viele Details, die im Alltag stören konnten. Die neue Version behebt insgesamt […]

Der Beitrag LibreOffice 25.8.3 bringt Fehlerkorrekturen für die Office Suite erschien zuerst auf fosstopia.

  •  

openSUSE Tumbleweed setzt künftig auf GRUB2-BLS bei neuen Installationen

openSUSE Tumbleweed führt mit neuen Installationen eine deutliche Änderung im Startprozess ein. Das System verwendet nun standardmäßig eine aktualisierte Variante des bekannten Boot Programms Grub. Diese Lösung folgt einem frischen Konzept, das einzelne Einträge für jeden Kernel nutzt und so den Aufbau des Startmenüs einfacher und klarer macht. Der bisher genutzte zentrale Ablaufplan wird damit […]

Der Beitrag openSUSE Tumbleweed setzt künftig auf GRUB2-BLS bei neuen Installationen erschien zuerst auf fosstopia.

  •  

Thunderbird 145 bringt moderne Technik, mehr Sicherheit und Microsoft Exchange Support

Mozilla hat eine neue Version von Thunderbird veröffentlicht. Die beliebte Anwendung steht nun als Ausgabe 145 bereit und bringt einige wichtige Neuerungen für den täglichen Einsatz. Viele Änderungen betreffen die technische Basis, doch auch sichtbare Verbesserungen sind dabei. Eine zentrale Neuerung betrifft die Anbindung an Exchange Systeme. Thunderbird kann nun direkt mit Exchange Web Services […]

Der Beitrag Thunderbird 145 bringt moderne Technik, mehr Sicherheit und Microsoft Exchange Support erschien zuerst auf fosstopia.

  •  

Debian 13.2 bringt Korrekturen und stärkt die Sicherheit des Systems

Die neue Ausgabe von Debian 13.2 ist knapp zwei Monate nach Debian 13.1 erschienen und vereint zahlreiche Korrekturen der letzten Wochen in einem stimmigen Paket. Das Projekt richtet den Fokus klar auf Sicherheit und Stabilität und liefert damit eine gestärkte Grundlage für neue und bestehende Systeme. Viele weit verbreitete Programme wurden bedacht. Dazu gehören zentrale […]

Der Beitrag Debian 13.2 bringt Korrekturen und stärkt die Sicherheit des Systems erschien zuerst auf fosstopia.

  •  

Vorsicht bei Docker-Updates

Aktuell schreibe ich hier mehr zu Docker als mir lieb ist. Es ist eigentlich absurd: Ich verwende Docker seit Jahren täglich und in der Regel ohne irgendwelche Probleme. Aber in den letzten Wochen prasseln Firewall-Inkompatibilitäten und anderer Ärger förmlich über Docker-Anwender herein.

Konkret geht es in diesem Beitrag um zwei Dinge:

  • Mit dem Update auf containerd 1.7.28 hat Docker eine Sicherheitslücke durch eine zusätzliche AppArmor-Regel behoben. Das ist eigentlich gut, allerdings führt diese Sicherheitsmaßnahme zu Ärger im Zusammenspiel mit gewissen Containern (z.B. immich) unter Host-Systemen mit AppArmor (Ubuntu, Proxmox etc.)
  • Docker Engine 29 verlangt die API-Version 1.44 oder neuer. Programme, die eine ältere API-Version verwenden, produzieren dann den Fehler Client Version 1.nnn is too old. Betroffen ist/war unter anderem das im Docker-Umfeld weit verbreitete Programm Traefik.

AppArmor-Problem / net.ipv4.ip_unprivileged_port_start permission denied

Im Anfang war der Bug, in diesem Fall CVE-2025-52881. Ein Angreifer kann runc (das wiederum Teil von containerd.io ist) mit Shared Mounts dazu bringen, /proc-Schreibvorgänge auf andere procfs-Dateien umzuleiten. Das ist wiederum sicherheitstechnisch ziemlich ungünstig (Severity ist High). Docker hat das Problem mit containerd 1.7.28-2 behoben — aber jetzt spießt es sich mit AppArmor, das nicht mehr den kompletten Pfad sieht und deswegen eingreift. Der Docker-Security-Fix kann auf Hosts mit AppArmor also dazu führen, dass auch korrekte Zugriffe blockiert werden. Die beste Beschreibung gibt dieser Blog-Beitrag.

Ich kann aus eigener Erfahrung nicht viel zu diesem Problem sagen. Ich betreibe aktuell kein System, das betroffen ist. Besonders oft tritt der Bug in Kombination mit Proxmox oder LXC auf (siehe dieses containerd Issue). Aber auch die weit verbreitete immich.app zum Foto-Management ist betroffen (siehe diese Diskussion).

Die in den verlinkten Beiträgen präsentierten Lösungsvorschläge sind leider allesamt wenig überzeugend: Das Docker-Update nicht durchführen/blockieren, eine alte Docker-Version re-installieren, AppArmor-Regeln ändern etc.

Client Version too old

Vollkommen unabhängig vom ersten Probem, aber fast zeitgleich aufgetreten ist der Fehler Client Version 1.nnn too old. Er resultiert daraus, dass die Docker Engine ab Version 29 für die API-Steuerung zumindest die API-Version 1.44 voraussetzt. (Bis zur Docker Enginge 28 reichte die API-Version 1.24.)

docker version

  ...
  Server: Docker Desktop 4.51.0 (210443)
   Engine:
     Version:          29.0.0
     API version:      1.52 (minimum version 1.44)    <------
  ...

Wenn nun ein Programm eine ältere API-Version nutzt, kommt es zum in der Überschrift genannten Fehler. Betroffen ist davon Traefik. (Das ist ein HTTP-Reverse-Proxy für Microservices und Container-Umgebungen.) Dort ist das Problem bekannt und wurde vorgestern mit Traefik Version 3.6.1 behoben.

Wenn Sie also ein Update auf die neueste Docker-Version durchführen, müssen Sie in compose.yaml für die Traefik-Version 3.6.1 oder einfach 3 oder latest angeben. Denken Sie daran, vor einem Neustart der Container ein Update des Traefek-Images mit docker pull traefik zu erledigen!

sudo apt full-upgrade -y
cd /mein/projekt/verzeichnis
docker pull traefik
docker compose down
docker compose up -d

Quellen/Links

AppArmor-Problem / net.ipv4.ip_unprivileged_port_start permission denied (containerd 1.7.28)

Client Version 1.nn is too old (Docker Engine 29)

  •  

RHEL 10.1 startet mit neuen Funktionen für KI und Sicherheit

Red Hat hat die Verfügbarkeit von Red Hat Enterprise Linux (RHEL) 10.1 bekannt gegeben. Die neue Ausgabe der Unternehmensplattform setzt auf den aktuellen Kernel 6.12. Der Schwerpunkt liegt auf moderner KI und hoher Sicherheit für anspruchsvolle Umgebungen. Die Version richtet sich vor allem an Firmen und Nutzer mit stark regulierten Abläufen. Ein zentrales Thema ist […]

Der Beitrag RHEL 10.1 startet mit neuen Funktionen für KI und Sicherheit erschien zuerst auf fosstopia.

  •  

KDE Plasma 6.4.6 schließt letzte Lücken vor dem großen Versionssprung

Das KDE Projekt hat die Version 6.4.6 von Plasma veröffentlicht. Es ist die letzte Wartungsausgabe der 6.4 Reihe und bringt zahlreiche Korrekturen, die Stabilität und Alltagstauglichkeit verbessern. Viele kleine, aber spürbare Anpassungen sorgen für ein rundes Nutzererlebnis vor dem Start der kommenden Generation. Ein Schwerpunkt liegt diesmal auf der Behebung von Fehlern in den Systemeinstellungen […]

Der Beitrag KDE Plasma 6.4.6 schließt letzte Lücken vor dem großen Versionssprung erschien zuerst auf fosstopia.

  •  

Ubuntu Pro erweitert Support: Bis zu 15 Jahre Sicherheit und Stabilität

Canonical hat die Supportlaufzeit für Ubuntu Pro deutlich verlängert. Mit dem sogenannten Legacy Add-on erhalten Langzeitversionen von Ubuntu nun bis zu 15 Jahre Sicherheits- und Wartungsunterstützung. Diese Erweiterung richtet sich besonders an Unternehmen, die auf stabile, langjährige IT-Infrastrukturen angewiesen sind. Ursprünglich bot Ubuntu Pro bereits zehn Jahre Support: fünf Jahre reguläre Sicherheitsaktualisierungen und fünf Jahre […]

Der Beitrag Ubuntu Pro erweitert Support: Bis zu 15 Jahre Sicherheit und Stabilität erschien zuerst auf fosstopia.

  •  

Budgie 10.9.4 modernisiert die Basis für kommende Version 10.10

Das Budgie-Team hat Version 10.9.4 seiner beliebten Desktop-Umgebung veröffentlicht. Der Fokus dieses Updates liegt auf technischen Verbesserungen im Hintergrund, weniger auf sichtbaren Neuerungen für Anwender. Die Veröffentlichung bereitet die kommende Hauptversion 10.10 vor und sorgt für eine modernere Basis im Code. Zu den wichtigsten Änderungen gehört die Unterstützung für libpeas 2 und Girepository 2.0. Damit […]

Der Beitrag Budgie 10.9.4 modernisiert die Basis für kommende Version 10.10 erschien zuerst auf fosstopia.

  •  

Bottles 52.1 bringt Spielzeit-Tracking und neue Automatisierung für Linux-Nutzer

Die Open-Source-Anwendung Bottles, die auf Wine basiert, macht es Linux-Nutzern seit Jahren leichter, Windows-Programme und Spiele auszuführen. Nun ist Version 52.1 erschienen und bringt einige spannende Neuerungen, die den Alltag vieler Anwender verbessern dürften. Die größte Neuerung betrifft die Einführung eines Spielzeit-Trackings. Bottles sammelt nun Sitzungsdaten über einen neuen Backend-Dienst und zeigt erste Statistiken direkt […]

Der Beitrag Bottles 52.1 bringt Spielzeit-Tracking und neue Automatisierung für Linux-Nutzer erschien zuerst auf fosstopia.

  •  

MX Linux 25 baut auf Debian 13 »Trixie«

MX Linux 25 auf der Basis von Debian 13 »Trixie« setzt für maximale Kompatibilität mit dem Debian-Ökosystem mehr als bisher auf systemd. Im Installer wird zudem jetzt Secure Boot unterstützt.

  •  

Linux Mint bringt neues Menü und Werkzeuge für Systemverwaltung und Hardwareanalyse

Das Linux Mint Team hat im Oktober 2025 Newsletter ein neues Cinnamon Menü und zwei neue Werkzeuge vorgestellt, die den Alltag vieler Nutzer vereinfachen sollen: System Information und System Administration. Projektleiter Clement Lefebvre kündigte die Erweiterungen im monatlichen Entwicklungsbericht an und gab einen Einblick in kommende Verbesserungen für die beliebte Linux Distribution. Das neue Menü der kommenden Cinnamon-Version […]

Der Beitrag Linux Mint bringt neues Menü und Werkzeuge für Systemverwaltung und Hardwareanalyse erschien zuerst auf fosstopia.

  •  

Mozilla beendet 32-Bit-Support für Linux: Firefox 145 markiert den Beginn einer neuen Ära

Mozilla hat die finale Version des Firefox 145 veröffentlicht, deren offizieller Start für den 11. November 2025 geplant ist. Mit diesem Update endet die Unterstützung für 32-Bit-Systeme unter Linux, wie bereits angekündigt. Künftig werden ausschließlich 64-Bit- und ARM64-Versionen des Browsers bereitgestellt. Wie Mozilla erklärt, unterstützen die meisten modernen Linux-Distributionen 32-Bit-Systeme nicht mehr aktiv. Die Pflege […]

Der Beitrag Mozilla beendet 32-Bit-Support für Linux: Firefox 145 markiert den Beginn einer neuen Ära erschien zuerst auf fosstopia.

  •  

Dockers nft-Inkompatibilität wird zunehmend zum Ärgernis

Ca. seit 2020 kommt nftables (Kommando nft) per Default als Firewall-Backend unter Linux zum Einsatz. Manche Distributionen machten den Schritt noch früher, andere folgten ein, zwei Jahre später. Aber mittlerweile verwenden praktisch alle Linux-Distributionen nftables.

Alte Firewall-Scripts mit iptables funktionieren dank einer Kompatibilitätsschicht zum Glück größtenteils weiterhin. Viele wichtige Firewall-Tools und -Anwendungen (von firewalld über fail2ban bis hin zu den libvirt-Bibliotheken) brauchen diese Komaptibilitätsschicht aber nicht mehr, sondern wurden auf nftables umgestellt.

Welches Programm ist säumig? Docker! Und das wird zunehmend zum Problem.

Update 11.11.2025: In naher Zukunft wird mit Engine Version 29.0 nftables als experimentelles Firewall-Backend ausgeliefert. (Aktuell gibt es den rc3, den ich aber nicht getestet habe. Meine lokalen Installationen verwenden die Engine-Version 28.5.1.) Ich habe den Artikel diesbezüglich erweitert/korrigiert. Sobald die Engine 29 ausgeliefert wird, werde ich das neue Backend ausprobieren und einen neuen Artikel verfassen.

Docker versus libvirt/virt-manager

Auf die bisher massivsten Schwierigkeiten bin ich unter Fedora >=42 und openSUSE >= 16 gestoßen: Wird zuerst Docker installiert und ausgeführt, funktioniert in virtuellen Maschinen, die mit libvirt/virt-manager gestartet werden, das NAT-Networking nicht mehr. Und es bedarf wirklich einiger Mühe, den Zusammenhang mit Docker zu erkennen. Die vorgebliche »Lösung« besteht darin, die libvirt-Firewall-Funktionen von nftables zurück auf iptables zu stellen. Eine echte Lösung wäre es, wenn Docker endlich nftables unterstützen würde.

# in der Datei /etc/libvirt/network.conf
firewall_backend = "iptables"

Danach starten Sie den libvirt-Dämon dann neu:

sudo systemctl restart libvirtd

Weitere Infos gibt es hier und hier. Die openSUSE-Release-Notes weisen ebenfalls auf das Problem hin.

Sicherheitsprobleme durch offene Ports

Weil Docker iptables verwendet, ist es mit nftables oder firewalld nicht möglich, Container mit offenen Ports nach außen hin zu blockieren. Wenn Sie also docker run -p 8080:80 machen oder in compose.yaml eine entsprechende Ports-Zeile einbauen, ist der Port 8080 nicht nur auf dem lokalen Rechner sichtbar, sondern für die ganze Welt! nftables- oder firewalld-Regeln können dagegen nichts tun!

Deswegen ist es wichtig, dass Docker-Container möglichst in internen Netzwerken miteinander kommunizieren bzw. dass offene Ports unbedingt auf localhost limitiert werden:

# Port 8080 ist nur für localhost zugänglich.
docker run -p localhost:8080:80 ...

Ihre Optionen in compose.yaml sehen so aus:

```bash
# compose.yaml
# Ziel: myservice soll mit anderem Container
# in compose.yaml über Port 8888 kommunizieren
services:
  myservice:
    image: xxx
    ports:
      # unsicher!
      # - "8888:8888"
      # besser (Port ist für localhost sichtbar)
      # - "127.0.0.1:8888:8888"
      # noch besser (Port ist nur Docker-intern offen)
      - "8888"
  otherservice:
    ...

Die sicherste Lösung besteht darin, die Container ausschließlich über ein Docker-internes Netzwerk miteinander zu verbinden (siehe backend_network im folgenden schablonenhaften Beispiel). Die Verbindung nach außen für die Ports 80 und 443 erfolgt über ein zweites Netzwerk (frontend_network). Die Angabe des drivers ist optional und verdeutlicht hier nur den Default-Netzwerktyp.

# compose.yaml
# am besten: die beiden Services myservice und
# nginx kommunizieren über das interne Netzwerk 
# miteinander
services:
  myservice:
    build: .
    ports:
      - "8888:8888"
    networks:
     - backend_network
  nginx:
    image: nginx:alpine
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./nginx.conf:/etc/nginx/nginx.conf
      - /etc/mycerts/fullchain.pem:/etc/nginx/ssl/nginx.crt
      - /etc/mycerts/privkey.pem:/etc/nginx/ssl/nginx.key
    depends_on:
      - myservice
    networks:
      - frontend_network
      - backend_network
networks:
  # Verbindung zum Host über eine Bridge
  frontend_network:
    driver:   bridge
  # Docker-interne Kommunikation zwischen den Containern
  backend_network:
    driver:   bridge
    internal: true

Restriktive Empfehlungen

Docker hat es sich zuletzt sehr einfach gemacht. Auf https://docs.docker.com/engine/install/ubuntu/#firewall-limitations steht:

If you use ufw or firewalld to manage firewall settings, be aware that when you expose container ports using Docker, these ports bypass your firewall rules. For more information, refer to Docker and ufw.

Docker is only compatible with iptables-nft and iptables-legacy. Firewall rules created with nft are not supported on a system with Docker installed. Make sure that any firewall rulesets you use are created with iptables or ip6tables, and that you add them to the DOCKER-USER chain, see Packet filtering and firewalls.

Und https://docs.docker.com/engine/security/#docker-daemon-attack-surface gibt diese Zusammenfassung:

Finally, if you run Docker on a server, it is recommended to run exclusively Docker on the server, and move all other services within containers controlled by Docker. Of course, it is fine to keep your favorite admin tools (probably at least an SSH server), as well as existing monitoring/supervision processes, such as NRPE and collectd.

Salopp formuliert: Verwenden Sie für das Docker-Deployment ausschließlich für diesen Zweck dezidierte Server und/oder verwenden Sie bei Bedarf veraltete iptable-Firewalls. Vor fünf Jahren war dieser Standpunkt noch verständlich, aber heute geht das einfach gar nicht mehr. Die Praxis sieht ganz oft so aus, dass auf einem Server diverse »normale« Dienste laufen und zusätzlich ein, zwei Docker-Container Zusatzfunktionen zur Verfügung stellen. Sicherheitstechnisch wird dieser alltägliche Wunsch zum Alptraum.

Land in Sicht?

Bei Docker weiß man natürlich auch, dass iptables keine Zukunft hat. Laut diesem Issue sind 10 von 11 Punkte für die Umstellung von iptables auf nftables erledigt. Aber auch dann ist unklar, wie es weiter gehen soll: Natürlich ist das ein massiver Eingriff in grundlegende Docker-Funktionen. Die sollten vor einem Release ordentlich getestet werden. Einen (offiziellen) Zeitplan für den Umstieg auf nftables habe ich vergeblich gesucht.

Docker ist als Plattform-überschreitende Containerlösung für Software-Entwickler fast konkurrenzlos. Aber sobald man den Sichtwinkel auf Linux reduziert und sich womöglich auf Red-Hat-ähnliche Distributionen fokussiert, sieht die Lage anders aus: Podman ist vielleicht nicht hundertprozentig kompatibel, aber es ist mittlerweile ein sehr ausgereiftes Container-System, das mit Docker in vielerlei Hinsicht mithalten kann. Installationsprobleme entfallen, weil Podman per Default installiert ist. Firewall-Probleme entfallen auch. Und der root-less-Ansatz von Podman ist sicherheitstechnis sowieso ein großer Vorteil (auch wenn er oft zu Netzwerkeinschränkungen und Kompatibilitätsproblemen führt, vor allem bei compose-Setups).

Für mich persönlich war Docker immer die Referenz und Podman die nicht ganz perfekte Alternative. Aber die anhaltenden Firewall-Probleme lassen mich an diesem Standpunkt zweifeln. Die Firewall-Inkompatibilität ist definitiv ein gewichtiger Grund, der gegen den Einsatz der Docker Engine auf Server-Installationen spricht. Docker wäre gut beraten, iptables ENDLICH hinter sich zu lassen!

Update 11.11.2025: Als ich diesen Artikel im Oktober 2025 verfasst und im November veröffentlicht habe, ist mir entgangen, dass die Docker-Engine in der noch nicht ausgelieferten Version 29 tatsächlich bereits ein experimentelles nftables-Backend enthält!

Version 29 liegt aktuell als Release Candidate 3 vor. Ich warte mit meinen Tests, bis die Version tatsächlich ausgeliefert wird. Hier sind die Release Notes, hier die neue Dokumentationsseite. Vermutlich wird es ein, zwei weitere Releases brauchen, bis das nftables-Backend den Sprung von »experimentell« bis »stabil« schafft, aber immerhin ist jetzt ganz konkret ein Ende der Firewall-Misere in Sicht.

Quellen / Links

Das neue nftables-Backend für Docker

  •