Компания Microsoft опубликовала ежемесячное обновление дистрибутива Azure Linux 3.0.20260506. Дистрибутив развивается в качестве универсальной базовой платформы для Linux-окружений, используемых в облачной инфраструктуре, edge-системах и различных сервисах Microsoft. Собственные наработки проекта распространяются под лицензией MIT. Сборки пакетов формируются для архитектур aarch64 и x86_64. Размер установочного образа 770 МБ.
新版本的变化包括:
- В репозиторий (SPECS и SPECS-EXTENDED) добавлены пакеты ignition и rust-afterburn.
- Пакет с сетевым анализатором Wireshark пересобран с поддержкой языка Lua.
- При сборке пакета с ядром для архитектуры arm64 включён параметр CONFIG_IKCONFIG_PROC, включающий возможность получения доступа к сборочной конфигурации текущего ядра через файл /proc/config.gz.
- Улучшена поддержка live-миграции в QEMU.
- В файл PackageBuild.yml добавлен параметр extraMacrosFiles для передачи дополнительных файлов с макросами во время сборки пакета.
- Устранено несколько десятков уязвимостей в различных пакетах.
- Обновлены версии ядра Linux 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, libpng 1.6.57, mysql 8.0.46.
Azure Linux 发行版提供了一组标准的基本包,可作为创建在云基础设施和边缘设备上运行的容器、主机环境和服务的通用基础。可以通过在 Azure Linux 之上添加额外的包来创建更复杂和专业的解决方案,但所有此类系统的基础保持不变,从而更容易维护和准备更新。
Azure Linux 用作 WSLg 迷你发行版的基础,它提供图形堆栈组件,用于在基于 WSL2(适用于 Linux 的 Windows 子系统)的环境中运行 Linux GUI 应用程序。 WSLg 中的扩展功能是通过包含 Weston Composite Server、XWayland、PulseAudio 和 FreeRDP 的附加软件包来实现的。
系统管理器systemd用于管理服务和启动。 提供了 RPM 和 DNF 包管理器来进行包管理。 默认情况下未启用 SSH 服务器。 为了安装该发行版,提供了一个可以在文本和图形模式下工作的安装程序。 安装程序提供了使用完整或基本软件包集进行安装的选项,并提供了用于选择磁盘分区、选择主机名和创建用户的界面。
Azure Linux 构建系统允许您基于 SPEC 文件和源代码生成单独的 RPM 包,以及使用 rpm-ostree 工具包生成并原子更新的整体系统映像,而无需分解为单独的包。因此,支持两种更新交付模型:通过更新单个包以及通过重建和更新整个系统映像。提供了大约 3000 个预构建 RPM 软件包的存储库,您可以使用它们基于配置文件构建自己的映像。
基础平台仅包含必要的组件,并针对最小的内存和磁盘空间消耗以及高加载速度进行了优化。该项目使用“默认最大安全性”方法,其中涉及包含各种附加机制来提高安全性:
- 使用 seccomp 机制过滤系统调用。
- 磁盘分区加密。
- 通过数字签名验证包。
- 地址空间随机化。
- 防止符号链接攻击、mmap、/dev/mem 和 /dev/kmem。
- 只读模式并禁止在包含内核和模块数据段的内存区域中执行代码。
- 系统初始化后禁用加载内核模块的选项。
- 使用 iptables 过滤网络数据包。
- 在构建期间启用针对堆栈溢出、缓冲区溢出和字符串格式化问题的保护模式(_FORTIFY_SOURCE、-fstack-protector、-Wformat-security、relro)。
来源: opennet.ru
