Zum Inhalt springen
Ihr Kompass für die digitale Welt.
Technologie & IT

OpenBSD 8.0 gibt vmd-Gästen 64 vCPUs und zieht bei httpd die Zügel an

OpenBSD 8.0 bringt vmd-Gästen bis zu 64 vCPUs und ändert Defaults bei httpd und relayd. Upgrades sind nur von 7.9 aus unterstützt.

Serverschrank als Symbolbild für OpenBSD 8.0 mit vmd und httpdDieses Bild wurde komplett mit KI generiertProviderhiggsfieldModellgpt_image_2PromptRack-mounted servers in a small tidy server room, blue status LEDs, a pufferfish-shaped plush toy on top of a rack as subtle mascot hint, cool lighting. Photorealistic editorial magazine photo, 16:9. Absolutely no text, no letters, no numbers, no logos, no brand marks.
Ein Serverraum, in dem OpenBSD 8.0 mit vmd und httpd laufen könnte (Symbolbild)

OpenBSD 8.0, erschienen am 20. Oktober 2026, erlaubt vmd-Gästen bis zu 64 vCPUs, unterstützt x2APIC und MSI/MSI-X für virtio und ändert zugleich Defaults: httpd und relayd verwenden standardmäßig die TLS-Cipher-Liste „secure“, httpd lehnt CL.TE-Framing und obs-fold ab. Einschränkung: Unterstützt wird nur der Sprung von 7.9 aus. dm-Einordnung: Das Upgrade lohnt sich vor allem für VM-Hosts, alte TLS-Clients oder unsaubere Proxys können nach dem Update scheitern. Wer Webdienste betreibt, sollte die Änderungen deshalb vorab in einer Testumgebung prüfen.

Neue Möglichkeiten für vmm und vmd

vmm ist der Hypervisor-Teil des Kernels, vmd der Daemon, der darauf virtuelle Maschinen startet und verwaltet. Laut Release-Seite von OpenBSD 8.0 unterstützt der Multiprozessor-Betrieb jetzt bis zu 64 virtuelle CPUs (vCPUs) pro Gast. Das sind die Rechenkerne, die ein Gast zu sehen bekommt. Auch The Register bestätigt diese Zahl.

Gäste erhalten außerdem x2APIC. Das ist die neuere Variante des Interrupt-Controllers in x86-CPUs, die mit größeren Kernzahlen zurechtkommt. Bei virtio, dem standardisierten Treiberschema für virtuelle Geräte, nutzt vmd nun MSI/MSI-X. Dabei melden Geräte Unterbrechungen direkt per Speicherschreibzugriff statt über klassische Interruptleitungen. dm-Einordnung: Das dürfte bei vielen vCPUs relevant sein, weil sich die Last auf mehr Kerne verteilen lässt. Messwerte nennt OpenBSD nicht.

Die Verwaltung wurde ebenfalls angepasst: Der Besitz von VMs wird jetzt über Dateien geregelt, das hat OpenBSD neu gestaltet. Für vmd-Gäste gibt es zudem Checksum-Offload für das Netzwerk. Behoben wurde ein Fehler bei 32-Bit-Linux-Gästen, der lapic und ioapic betraf. Das qcow-Handling, also der Umgang mit Disk-Images im qcow-Format, wurde verbessert.

Ein Sicherheitspunkt betrifft die ELF-Loader von vmd, also den Code, der Kernel-Images lädt: Out-of-bounds-Lesezugriffe wurden dort verhindert. dm-Einordnung: Für Self-Hosting mit mehreren Gästen auf einem Host ist 8.0 damit mehr als ein Routinewechsel. Wie sich das Verhalten unter Last verändert, sollten Betreibende auf dem eigenen Host messen. Dass Hypervisor-Code ein lohnendes Angriffsziel ist, zeigte zuletzt auf Linux-Seite die KVM-Lücke PwnEscape, für die Hosts ihren Kernel patchen mussten.

Bevor Sie Gäste auf 64 vCPUs hochsetzen

dm-Einordnung: Bevor ein Gast auf 64 VCPUs hochgesetzt wird, sollte geprüft werden, wie viele physische Kerne der Host tatsächlich hat und ob sich die übrigen Gäste dadurch verdrängen lassen. Da der VM-Besitz über Dateien neu gestaltet wurde, empfiehlt es sich außerdem, nach dem Upgrade zu kontrollieren, ob jeder Gast noch wie gewohnt startet, bevor die Konfiguration angepasst wird.

Strengere Defaults in httpd und relayd

Beim Webserver httpd wechselt die Standard-Cipher-Liste in der httpd.conf von „compat“ auf „secure“. Cipher-Listen legen fest, welche Verschlüsselungsverfahren beim TLS-Handshake angeboten werden. Bei relayd, dem Relay- und Load-Balancing-Daemon, ändert sich der Default von „HIGH:!aNULL“ auf „secure“.

httpd lehnt außerdem Anfragen mit CL.TE-Framing ab. Gemeint ist, dass eine Anfrage sowohl einen Content-Length- als auch einen Transfer-Encoding-Header trägt; die Regeln dazu stehen in RFC 9112, Abschnitte 6.1 und 6.3. dm-Einordnung: Solche Mehrdeutigkeiten sind eine bekannte Grundlage von Request-Smuggling, bei dem zwei Server in der Kette dieselbe Anfrage unterschiedlich zerlegen. Ausdrücklich abgelehnt wird CL.TE nur von httpd; für relayd ist das nicht vermerkt.

Zeilenumbrüche in Headern (obs-fold, RFC 9112 Abschnitt 5.2) beantwortet httpd mit 400. Auch relayd lehnt obs-fold ab und weist zudem doppelte Content-Length-Header mit 400 zurück. Für Chunked-Uploads an FastCGI erzwingt httpd ein „max request body“. Neu sind eigene HTTP-Header, und httpd verweigert geteilte TLS-Listener mit unterschiedlicher Client-CA oder CRL. In relayd-Filterregeln sind nun Lua-Patterns möglich.

dm-Einordnung: Brechen können vor allem ältere Clients, die keine Verfahren der „secure“-Liste beherrschen, etwa Altgeräte oder alte Skripte. Ebenso kritisch sind Proxys oder Anwendungen davor, die obs-fold oder doppelte Content-Length senden. Konkret betroffene Produkte nennt OpenBSD nicht. Sinnvoll ist daher, vor dem Umstieg in den Logs nach 400-Antworten zu suchen und alte Clients gegen eine Testinstanz laufen zu lassen. Erst wenn die Gegenstellen sauber sprechen, sollte der Produktivserver folgen.

Prüfreihenfolge für Webdienste und relayd

dm-Einordnung: Sinnvoll ist, zuerst die Stellen zu finden, an denen die TLS-Cipher-Vorgabe ausdrücklich gesetzt ist, bei httpd in der httpd.conf, bei relayd in der Konfiguration des Relays. Ohne eigene Angabe gilt der neue Default „secure“; eine fest eingetragene Liste dürfte weiter greifen. Danach lohnt ein Test mit den realen Clients und Proxys im Staging. Auch geteilte TLS-Listener mit unterschiedlicher Client-CA oder CRL sollten Sie vor dem Wechsel suchen, weil httpd sie verweigert.

rtrd, OpenSSH 10.6 und weitere Basissystem-Änderungen

OpenBSD Upgrade: Administrator arbeitet nachts am TerminalDieses Bild wurde komplett mit KI generiertProviderhiggsfieldModellgpt_image_2PromptSystem administrator at a terminal workstation with abstract green code lines on dark screens, night office, focused. Photorealistic editorial magazine photo, 16:9. Absolutely no text, no letters, no numbers, no logos, no brand marks.
Upgrades sind nur von 7.9 aus unterstützt (Symbolbild)

Neu im Basissystem ist rtrd(8), ein Daemon für das RPKI-To-Router-Protokoll, samt Steuerwerkzeug rtrctl(8). RPKI ist ein Verfahren, mit dem Routing-Ankündigungen kryptografisch auf ihre Herkunft geprüft werden; RTR liefert diese validierten Daten an Router. Für reine Webserver spielt das keine Rolle, für Betreibende von BGP-Routern dagegen schon.

OpenSSH wird auf Version 10.6 gehoben. Genannt sind unter anderem, dass ChannelTimeout und RekeyLimit in der sshd_config nun korrekt angewandt werden, und eine Option „restrict“ für Tunnel-Forwarding. LibreSSL, die TLS-Bibliothek des Systems, steht in Version 4.4.0 bereit.

Auf amd64 wächst der Kernel-Adressraum (KVA) von 4 auf 512 Gigabyte. Dieser Bereich ist der virtuelle Adressraum, den der Kernel für eigene Strukturen nutzen kann; er ist nicht mit dem verbauten Arbeitsspeicher gleichzusetzen. Der Treiber inteldrm unterstützt nun Intel Arc A-Series (DG2), die Grafiktreiber-Basis drm entspricht Linux 6.18.53.

Die Plattform loongson wird eingestellt, weil sie sich nicht mit Clang 22 bauen lässt. Für amd64 stehen 13.060 Pakete bereit. The Register nennt bisher vier Errata-Fixes für 8.0. Auf Linux-Seite bringt Linux 7.3 eigene Änderungen für Admins.

Was rtrd und die OpenSSH-Korrektur im Betrieb bedeuten

dm-Einordnung: Wer BGP auf OpenBSD betreibt, kann Routing-Validierungsdaten mit rtrd auf dem System selbst bereitstellen, statt eine externe Lösung anzubinden.

dm-Einordnung: Wer ChannelTimeout oder RekeyLimit diese Optionen schon gesetzt hat, sollte beachten, dass sie jetzt tatsächlich wirken, und Sitzungen mit langen Transfers oder Leerlaufzeiten nach dem Upgrade beobachten.

Upgrade von 7.9: Reihenfolge und Stolpersteine

Der Upgrade Guide für 8.0 lässt nur den Sprung von der direkten Vorversion 7.9 zu. Wer noch ältere Releases betreibt, muss schrittweise aktualisieren. Die Partition /usr braucht mindestens 1,1 Gigabyte freien Platz. Empfohlen wird sysupgrade.

Danach folgen laut Guide drei Schritte: Konfigurationsdateien mit sysmerge abgleichen, alte Dateien entfernen und Pakete mit pkg_add -u aktualisieren. Anschließend sollten die Errata geprüft werden. sysmerge vergleicht die neuen Systemkonfigurationen mit den lokal angepassten und lässt Sie Unterschiede übernehmen.

Bei den Einstellungen ändert sich im bgpd der Default von „announce as-4byte“ von yes auf enforce. dm-Einordnung: Betreibende von BGP-Sitzungen sollten ihre Konfiguration darauf prüfen, bevor sie eine Maschine produktiv hochziehen.

Bei Paketen sind drei Fälle genannt. kea springt von 2.4.2 auf 3.2; die Konfiguration muss neu geschrieben werden, Daten liegen künftig in /var/db/kea. stalwart-mail erscheint in Version 0.16 und erfordert Dump und Restore der Daten. libmaxminddb enthält die alten GeoLite-Datenbanken nicht mehr. Die firefox-Policy schaltet KI-Funktionen standardmäßig ab.

Wine ist nicht Teil des Release: Laut The Register lag wenige Tage vorher lediglich ein vorgeschlagener Port (Wine 11, 64-Bit, x86-64) auf der openbsd-ports-Liste. Ob er in die Pakete kommt, ist offen.

Nach dem Upgrade

dm-Einordnung: Wer libmaxminddb mit den alten GeoLite-Datenbanken nutzt, muss diese nach dem Upgrade durch eine eigene Quelle ersetzen. Prüfen Sie danach die Errata-Seite und spielen Sie offene Fixes ein, bevor der Host wieder produktiv geht.