Das Unternehmen Microsoft hat ein monatliches Update für die Azure Linux-Version 3.0.20260506 veröffentlicht. Die Distribution entwickelt sich zu einer universellen Basisplattform für Linux-Umgebungen, die in cloudbasierter Infrastruktur, Edge-Systemen und verschiedenen Microsoft-Diensten verwendet wird. Die eigenen Entwicklungen des Projekts werden unter der MIT-Lizenz veröffentlicht. Die Paket-Builds werden für die Architekturen aarch64 und x86_64 erstellt. Die Größe des Installationsabbilds beträgt 770 MB.
Zu den Änderungen in der neuen Version gehören:
- Pakete ignition und rust-afterburn wurden dem Repository (SPECS und SPECS-EXTENDED) hinzugefügt.
- Das Paket mit dem Netzwerk-Analysator Wireshark wurde mit Unterstützung für die Programmiersprache Lua neu gebaut.
- Bei der Erstellung des Kernel-Pakets für die Architektur arm64 wurde die Option CONFIG_IKCONFIG_PROC aktiviert, die den Zugriff auf die Build-Konfiguration des aktuellen Kernels über die Datei /proc/config.gz ermöglicht.
- Die Unterstützung für Live-Migration in QEMU wurde verbessert.
- Die Datei PackageBuild.yml wurde um die Option extraMacrosFiles erweitert, um zusätzliche Makrof Dateien während der Paket-Erstellung zu übergeben.
- Zahlreiche Schwachstellen in verschiedenen Paketen wurden behoben.
- Die Versionen des Linux-Kernels 6.6.137.1, clamav 1.5.2, cloud-hypervisor 51.1.56, containerd2 2.1.6, cups 2.4.18, erlang 26.2.5.20, golang 1.26.2-1 und libpng 1.6.57 wurden aktualisiert.
Die Azure Linux-Distribution bietet eine kleine Auswahl an grundlegenden Paketen, die als universelle Grundlage für die Erstellung von Container-Images, Host-Umgebungen und Diensten dienen, die in Cloud-Infrastrukturen und auf Edge-Geräten laufen. Komplexere und spezialisierte Lösungen können durch das Hinzufügen weiterer Pakete zu Azure Linux erstellt werden, jedoch bleibt die Basis für alle derartigen Systeme unverändert, was die Wartung und Vorbereitung von Aktualisierungen erleichtert.
Azure Linux dient als Grundlage für die Mini-Distribution WSLg, die Komponenten des Grafikstacks bereitstellt, um die Ausführung von GUI-Anwendungen unter Linux in Umgebungen mit der Windows-Subsystem für Linux 2 (WSL2) zu ermöglichen. Die erweiterte Funktionalität in WSLg wird durch die Einbeziehung zusätzlicher Pakete mit dem Komposite-Server Weston, XWayland, PulseAudio und FreeRDP realisiert.
Für die Verwaltung von Diensten und Systemlast kommt der Systemmanager systemd zum Einsatz. Die Paketverwaltung erfolgt über die Paketmanager RPM und DNF. Der SSH-Server ist standardmäßig nicht aktiviert. Für die Installation der Distribution steht ein Installer zur Verfügung, der sowohl im Text- als auch im grafischen Modus arbeiten kann. Der Installer bietet die Möglichkeit, ein vollständiges oder grundlegendes Paketset zu installieren, sowie eine Benutzeroberfläche zur Auswahl der Festplattenpartition, der Hostnamen und zur Erstellung von Benutzern.
Das Build-System von Azure Linux ermöglicht die Generierung sowohl einzelner RPM-Pakete basierend auf SPEC-Dateien und Quelltexten als auch monolithischer Systemabbilder, die mithilfe des rpm-ostree-Werkzeugs erstellt werden und atomar aktualisiert werden, ohne sie in einzelne Pakete aufzuteilen. Dementsprechend werden zwei Modelle zur Bereitstellung von Updates unterstützt: über die Aktualisierung einzelner Pakete und über den Neuaufbau und die Aktualisierung des gesamten Systemabbilds. Ein Repository, das etwa 3000 bereits erstellte RPM-Pakete enthält, steht zur Verfügung und kann zur Erstellung eigener Abbilder auf Basis einer Konfigurationsdatei verwendet werden.
Die Basisplattform umfasst nur die notwendigsten Komponenten und ist für einen minimalen Speicher- und Festplattenspeicherbedarf sowie eine hohe Ladegeschwindigkeit optimiert. In diesem Projekt wird der Ansatz „maximale Sicherheit per Default“ verfolgt, der die Aktivierung verschiedener zusätzlicher Mechanismen zur Erhöhung des Schutzes beinhaltet:
- Filterung von Systemaufrufen durch den seccomp-Mechanismus.
- Verschlüsselung von Festplattenteilen.
- Verifizierung von Paketen anhand digitaler Signaturen.
- Adressraumrandomisierung.
- Schutz vor Angriffen, die mit symbolischen Links, mmap, /dev/mem und /dev/kmem verbunden sind.
- Nur-Lese-Modus und Verbot der Codeausführung in Bereichen des Speichers, in denen Datensegmente des Kernels und von Modulen platziert sind.
- Option zum Verbot des Ladens von Kernelmodulen nach der Systeminitialisierung.
- Verwendung von iptables zur Filterung von Netzwerkpaketen.
- Aktivierung von Schutzmodi gegen Stacküberläufe, Pufferüberläufe und Formatierungsprobleme (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro) beim Kompilieren.
Quelle: opennet.ru
