Microsoft ha rinominato la distribuzione CBL-Mariner in Azure Linux. In precedenza, il nome Azure Linux era utilizzato per una build specializzata installata in Azure Kubernetes Service (AKS), mentre la piattaforma generale per la creazione di distribuzioni si sviluppava sotto il nome di CBL-Mariner (Common Base Linux Mariner). Poche giorni fa, Microsoft ha rinominato il repository CBL-Mariner in azurelinux, ha cambiato i nomi degli strumenti e ha sostituito il riferimento a CBL-Mariner nella documentazione con Azure Linux. Dopo questo cambiamento, è stata rilasciata la prima versione della piattaforma con il nuovo nome — Azure Linux 2.0.20240301, in cui sono stati risolti errori e vulnerabilità accumulate nelle applicazioni.
Il progetto mira a unificare le soluzioni Linux adottate in Microsoft e semplificare il mantenimento aggiornato dei sistemi Linux per vari scopi. Tra l'altro, la distribuzione viene utilizzata nell'infrastruttura cloud, nei sistemi edge e in vari servizi Microsoft. I progressi del progetto sono distribuiti con licenza MIT. I pacchetti vengono creati per le architetture aarch64 e x86_64. È stata preparata un'immagine ISO di avvio (860 MB) per l'architettura x86_64.
La distribuzione Azure Linux offre un set di base di pacchetti fondamentali che fungono da base universale per creare contenitori, ambienti host e servizi eseguiti in infrastrutture cloud e su dispositivi edge. Soluzioni più complesse e specializzate possono essere create tramite l'aggiunta di pacchetti aggiuntivi sopra Azure Linux, ma la base per tutti questi sistemi rimane invariata, semplificando la manutenzione e la preparazione degli aggiornamenti.
Ad esempio, Azure Linux viene utilizzato come base per un mini-distributivo WSLg, che fornisce i componenti del stack grafico per eseguire applicazioni GUI Linux in ambienti basati sul sottosistema WSL2 (Windows Subsystem for Linux). La funzionalità avanzata in WSLg è implementata attraverso l'inclusione di pacchetti aggiuntivi con compositing. server Weston, XWayland, PulseAudio e FreeRDP.
Il sistema di build di Azure Linux consente di generare sia pacchetti RPM separati basati su file SPEC e sorgenti, sia immagini di sistema monolitiche create utilizzando lo strumento rpm-ostree e aggiornate in modo atomico senza suddivisione in pacchetti separati. Pertanto, sono supportati due modelli di consegna degli aggiornamenti: tramite l'aggiornamento di pacchetti singoli e tramite la ricostruzione e l'aggiornamento dell'intera immagine di sistema. È disponibile un repository che include circa 3000 pacchetti RPM già compilati, utilizzabile per assemblare le proprie immagini basate su un file di configurazione.
La piattaforma di base include solo i componenti essenziali ed è ottimizzata per un consumo minimo di memoria e spazio su disco, oltre a garantire elevate velocità di caricamento. Nel progetto si applica un approccio di "massima sicurezza per impostazione predefinita", che prevede l'inclusione di vari meccanismi aggiuntivi per aumentare la protezione:
- Filtraggio delle chiamate di sistema tramite il meccanismo seccomp.
- Crittografia delle partizioni disco.
- Verifica dei pacchetti tramite firma digitale.
- Randomizzazione dello spazio degli indirizzi.
- Protezione contro attacchi legati a collegamenti simbolici, mmap, /dev/mem e /dev/kmem.
- Modalità sola lettura e divieto di esecuzione di codice in aree di memoria in cui sono allocati segmenti contenenti dati del kernel e dei moduli.
- Opzione per vietare il caricamento dei moduli del kernel dopo l'inizializzazione del sistema.
- Utilizzo di iptables per la filtrazione dei pacchetti di rete.
- Abilitazione nella compilazione delle modalità di protezione contro il buffer overflow, le vulnerabilità di overflow dello stack e problemi di formattazione delle stringhe (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro).
Per la gestione dei servizi e del carico, viene utilizzato il gestore di sistema systemd. Per la gestione dei pacchetti sono forniti i gestori di pacchetti RPM e DNF. Il server SSH non è abilitato di default. Per l'installazione della distribuzione è fornito un installer che può operare sia in modalità testuale che grafica. Nell'installer è disponibile la possibilità di installare con un set completo o base di pacchetti, un'interfaccia per selezionare la partizione del disco, scegliere il nome dell'host e creare utenti.
Oltre ai cambiamenti legati a CBL-Mariner e Azure Linux, Microsoft ha anche presentato un nuovo rilascio della piattaforma Azure Sphere 24.03, costruita su base Linux e destinata alla creazione di dispositivi IoT basati su microcontroller a basso consumo (MCU, microcontroller unit) con sottosistemi periferici integrati. Una delle caratteristiche distintive della piattaforma è la sottosistema Pluton, progettata per fornire risorse hardware per la crittografia, la memorizzazione di chiavi segrete e l'esecuzione di operazioni crittografiche complesse. Pluton include un processore specializzato separato, un motore crittografico, un generatore hardware di numeri casuali e uno storage isolato per le chiavi.
Fonte: opennet.ru
