Microsoft har udgivet en opdatering til Azure Linux 3.0.20241101-distributionen, der fortsætter udviklingen af den stabile gren 3.0, som blev etableret i august. Distributionen udvikles som en universel basisplatform for Linux-miljøer, der bruges i cloud-infrastruktur, edge-systemer og forskellige Microsoft-tjenester. Projektets resultater distribueres under MIT-licensen. Pakkerne bygges til aarch64- og x86_64-arkitekturer. Størrelsen af installationsbilledet er 751 MB.
Blandt ændringerne i den nye version:
- Der er tilføjet support til FF-A-specifikationen (Firmware Framework for Arm A-profile) for systemer baseret på ARM-arkitekturen.
- Modulet intel_ifs (In-Field Scan) er inkluderet i kernen og gør det muligt at udføre low-level diagnostiske tests af CPU'er på Intel-processorer, som kan afsløre problemer, der ikke identificeres af de standardværktøjer, der er baseret på fejlrettelseskoder (ECC) eller paritetsbiter.
- SBAT-poster er tilføjet til GRUB2-bootloaderen for Fedora Linux.
- Konfigurationen CONFIG_X86_AMD_PLATFORM_DEVICE er aktiveret under byggingen af kernen, hvilket gør, at AMD-specifikke ACPI-enheder behandles som typiske platformenheder, såsom I2C, UART og GPIO.
- Der er sikret, at iptables-kommandoer fungerer ved at oversætte regler til nftables bytekode (ud over iptables-legacy er iptables-nft-pakken også blevet aktiveret).
- Versionerne af pakkerne er blevet opdateret, herunder Linux-kernen 6.6.57, Go 1.23, OpenIPMI 2.0.36, libpcap 1.10.5, vim 9.1.0791, mysql 8.0.40, clamav 1.0.7, cloud-init 24.3.1, php 8.3.12, mdadm 4.3, libarchive 3.7.7.
Azure Linux-distributionen tilbyder et lille standard sæt af grundpakker, der fungerer som en universel base til opbygning af containerindhold, host-miljøer og tjenester, der kører i cloud-infrastrukturer og på edge-enheder. Mere komplekse og specialiserede løsninger kan laves ved at tilføje ekstra pakker oven på Azure Linux, men basen for alle sådanne systemer forbliver uændret, hvilket gør vedligeholdelse og forberedelse af opdateringer lettere.
Azure Linux anvendes som basis for mini-distributionen WSLg, som leverer komponenterne i grafikstakken til at køre GUI-applikationer i Linux-miljøer baseret på WSL2 (Windows Subsystem for Linux). Den udvidede funktionalitet i WSLg implementeres gennem tilføjelse af ekstra pakker med sammensatte serveren Weston, XWayland, PulseAudio og FreeRDP.
Systemd bruges til at administrere tjenester og belastning. Pakkehåndterere RPM og DNF leveres til pakkehåndtering. SSH-serveren er ikke aktiveret som standard. Installationsprogrammet til distributionen tilbydes, som kan køre i både tekst- og grafiske tilstande. Installationsprogrammet giver mulighed for installation med et fuldt eller grundlæggende sæt pakker, tilbyder en grænseflade til at vælge diskpartition, vælge værtsnavn og oprette brugere.
Build-systemet i Azure Linux gør det muligt at generere både separate RPM-pakker baseret på SPEC-filer og kildekoder, samt monolitiske systembilleder, der dannes ved hjælp af rpm-ostree værktøjerne og opdateres atomisk uden opdeling i separate pakker. Følgelig understøttes der to modeller for opdateringslevering: gennem opdatering af individuelle pakker og gennem opbygning og opdatering af hele systembilledet. Der er et repository tilgængeligt, der inkluderer omkring 3000 allerede byggete RPM-pakker, som kan bruges til at sammensætte egne billeder baseret på konfigurationsfilen.
Den grundlæggende platform inkluderer kun de mest nødvendige komponenter og er optimeret til minimal hukommelses- og diskforbrug samt for høj opstartshastighed. I projektet anvendes tilgangen 'maksimal sikkerhed som standard', hvilket indebærer, at der er inkluderet forskellige ekstra mekanismer til at forbedre beskyttelsen:
- Filtrering af systemopkald ved hjælp af seccomp-mekanismen.
- Kryptering af diskpartitioner.
- Verifikation af pakker via digital signatur.
- Randomisering af adresserummet.
- Beskyttelse mod angreb relateret til symbolske links, mmap, /dev/mem og /dev/kmem.
- Tilstand kun for læsning og forbud mod udførelse af kode i områder af hukommelsen, hvor kerne- og moduldata placeret.
- Mulighed for at forbyde indlæsning af kerne-moduler efter systeminitialisering.
- Brug af iptables til filtrering af netværkspakker.
- Inkludering under opbygning af beskyttelsesmetoder mod stakoverløb, bufferoverflow og format-strengproblemer (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro).
Kilde: opennet.ru
