Nummer 50 lebt: OpenBSD 6.9 läuft (ein wenig) auf Apples M1-Prozessor

Neu in der 50. OpenBSD-Ausgabe ist unter anderem ein Schutz vor unerlaubten Speicherzugriffen durch PCI-Geräte. Die Portierung auf Apples M1 kommt voran.

In Pocket speichern vorlesen Druckansicht 115 Kommentare lesen

(Bild: Joy San / OpenBSD (Ausschnitt aus Illustration))

Lesezeit: 5 Min.
Von
  • Michael Plura
Inhaltsverzeichnis

Nachdem im November letzten Jahres mit OpenBSD 6.8 dessen 25-jähriger Geburtstag gefeiert wurde, kann man dem gerade veröffentlichten OpenBSD 6.9 zur fünfzigsten Ausgabe gratulieren. Das auf maximale Sicherheit ausgelegte BSD-Betriebssystem (Berkeley Software Distribution) ist kostenlos verfügbar. Es dient als Entwicklungsplattform für viele neue Sicherheitsfunktionen, die andere Betriebssysteme oft übernehmen.

OpenBSD steht unter der wirklich freien ISC- und BSD-Lizenz, neuen Code unter der im Vergleich dazu restriktiven GPL-Lizenz akzeptiert das Projekt nicht. Mit seinem Commit "Log Message: 6.9-beta" am 6. Februar hat OpenBSD-Gründer Theo de Raadt die Arbeit am OpenBSD 6.9-Release offiziell ins Leben gerufen.

Die lange und detaillierte Liste der Neuerungen und Verbesserungen in OpenBSD 6.9 gilt für alle 13 Hardware-Plattformen, die OpenBSD unterstützt und damit natürlich auch amd64/i386. Speziell in die Plattformen powerpc64 (PowerNV-Maschinen mit IBM POWER9-CPUs) und arm64 (64-Bit ARM) ist viel Arbeit geflossen. Der Support für POWER9-Systeme (genauer: Power-ISA v3.0) ist vor gerade einmal einem halben Jahr in OpenBSD 6.8 eingeflossen. Dale Rahn fügte mit einem ersten Commit die riscv64-Plattform (64-Bit RISC-V) mit experimentellem Status hinzu.

Konkret erhielt powerpc64 den astfb(4)-Treiber für Framebuffer basierend auf dem Aspeed BMC, der auf vielen POWER8- und POWER9-Systemen zu finden ist. Auf den Installations-Images liegt nun auch ein SMP-Kernel (bsd.mp), und dieser Ramdisk-Kernel lässt sich nun auch über das Netz starten. Endlich verwendet OpenBSD 6.9 die Stromsparmechanismen des POWER9 und unterstützt mit ipmi(4) die Fernwartung auf PowerNV-Rechnern.

Viele kleine Verbesserungen und vor allem Treiber gibt es für arm64 und damit beispielsweise auch Rockchip RK3328/3399-Systeme oder den Raspberry Pi 3/4. Achtung: Speziell auf dem Pi 3 Modell B+ läuft die Onboard-Netzwerkkarte jedoch nicht. Der Fokus auf Sicherheit verdeutlicht sich in einem cryptox(4)-Treiber, der eventuell vorhandene Verschlüsselungs-Hardware auf ARMv8 oder neuer nutzen kann. Auch die MMU auf ARM-Systemen wird durch smmu(4) genutzt, um beispielsweise falsch konfigurierte oder sich verdächtig verhaltende I/O-Geräte zu erkennen. Für den Raspberry Pi gibt es mit sdhc(4) endlich einen Treiber für den µSD-Kartenslot im ACPI-Modus.

Wenig bekannt ist, dass OpenBSD in manchen Fällen bei der Adaption neuer Hardware sehr schnell ist. Die Portierung auf Apples neue ARM-M1-SoCs macht große Fortschritte. Apple M1 Icestorm und Firestorm werden erkannt, es gibt Unterstützung für den BCM4378 (Broadcom and Cypress IEEE 802.11a/ac/b/g/n wireless network device), UART, Watchdog, Interrupt Controller, PCIe-Bridge sowie die IOMMU. Damit läuft OpenBSD noch nicht auf den neuen Apple-Maschinen, das dürfte mit dem kommenden OpenBSD 7.0 im Herbst aber der Fall sein.

Da OpenBSD nicht gerade die Plattform der Wahl für massive Cloud-Server ist, gab es bislang nicht gerade massive Bestrebungen, den Netzwerk-Stack komplett multithreaded zu machen. Unternehmen wie Genua, Hersteller von Hochsicherheits-Firewalls wie der Genugate, fördern und unterstützen dies schon lange. OpenBSD 6.9 bringt einige Verbesserungen für den SMP-Betrieb mit, davon auch einige, von dem Netzwerk-Anwendungen profitieren.

David Gwynne arbeitet gar an einem komplett neu geschrieben Ersatz für den bridge(4)-Treiber, der Virtual Ethernet Bridge veb(4). Veb(4) erhöht durch eine logische Trennung vom Host-Network-Stack die Sicherheit des Systems und soll laut dem Entwickler bereits "a lot" schneller als bridge(4) und vor allem auch auf den parallelen Betrieb auf mehreren CPU-Kernen ausgelegt sein.

Mit RAID1C (C für crypto) kann OpenBSD 6.9 über softraid(4) ein Software-RAID sicher und nahtlos verschlüsseln. Der softraid(4)-Treiber stellt einen virtuellen Host Bus Adapter (HDA) zur Verfügung, unter dem RAID und andere I/O-Dienste laufen. Der moderne OpenBSD-Hypervisor VMM/VMD erhielt weitere Sicherheitsfunktionen und wurde aufgeräumt. Vmd(4) kann die neue veb(4)-Bridge verwenden und virtuelle Maschinen nun auch direkt aus komprimierten RAMDisks starten.

Viele modernde Sicherheitsfunktionen und -werkzeuge stammen aus OpenBSD. LibreSSL, die schlanke und sichere Alternative zu OpenSSL, liegt in Version 3.3.2 vor, OpenSSH als 8.5 und der vor einiger Zeit von Grund auf neu entwickelte OpenSMTPD als Version 6.9. Die Anzahl der vielen kleinen Neuerungen und Verbesserungen ist wie üblich sehr lang und ist detailliert in den Release-Notes zu OpenBSD 6.9 dokumentiert. Dort gibt es wie immer auch künstlerische Begleitung zum Release in Form einer Grafik und eines Songs. OpenBSD 6.9 ist für diverse Hardware-Architekturen auf den Spiegelservern des Projektes kostenlos erhältlich.

(tiw)