Опубликован Bottlerocket 1.15, дистрибутив на базе изолированных контейнеров

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 2261
Зарегистрирован: 20.08.2022

#

Опубликован Bottlerocket 1.15, дистрибутив на базе изолированных контейнеров
Дата публикации:Fri, 22 Sep 2023 10:39:36 +0300




Опубликован выпуск Linux-дистрибутива Bottlerocket 1.15.0, развиваемого при участии компании Amazon для эффективного и безопасного запуска изолированных контейнеров. Инструментарий и управляющие компоненты дистрибутива написаны на языке Rust и распространяются под лицензиями MIT и Apache 2.0. Поддерживается запуск Bottlerocket в кластерах Amazon ECS, VMware и AWS EKS Kubernetes, а также создание произвольных сборок и редакций, допускающих применение различных инструментов оркестровки и runtime для контейнеров.



Дистрибутив предоставляет атомарно и автоматически обновляемый неделимый системный образ, включающий ядро Linux и минимальное системное окружение, включающие только компоненты, необходимые для запуска контейнеров. В окружении задействованы системный менеджер systemd, библиотека Glibc, сборочный инструментарий
Buildroot, загрузчик GRUB, конфигуратор сети wicked, runtime для изолированных контейнеров containerd, платформа оркестровки контейнеров Kubernetes, аутентификатор aws-iam-authenticator и агент Amazon ECS.



Инструменты для оркестровки контейнеров поставляются в отдельном управляющем контейнере, который включается по умолчанию и управляется через API и AWS SSM Agent. В базовом образе отсутствует командная оболочка, сервер SSH и интерпретируемые языки (например, нет Python или Perl) - средства для администратора и отладочные инструменты вынесены в отдельный служебный контейнер, который по умолчанию отключён.




Ключевым отличием от похожих дистрибутивов, таких как Fedora CoreOS, CentOS/Red Hat Atomic Host является первичная ориентация на предоставление максимальной безопасности в контексте усиления защиты системы от возможных угроз, усложнения эксплуатации уязвимостей в компонентах ОС и повышения изоляции контейнеров. Контейнеры создаются при помощи штатных механизмов ядра Linux - cgroups, пространств имён и seccomp. Для дополнительной изоляции в дистрибутиве применяется SELinux в режиме "enforcing".



Корневой раздел монтируется в режиме только для чтения, а раздел с настройками /etc монтируется в tmpfs и восстанавливает исходное состояние после перезапуска. Прямое изменение файлов в каталоге /etc, таких как /etc/resolv.conf и /etc/containerd/config.toml, не поддерживается - для постоянного сохранения настроек следует использовать API или выносить функциональность в отдельные контейнеры. Для криптографической верификации целостности корневого раздела задействован модуль dm-verity, а в случае выявления попытки модификации данных на уровне блочного устройства система перезагружается.




Большинство системных компонентов написаны на языке Rust, предоставляющем средства для безопасной работы с памятью, позволяющие избежать уязвимостей, вызванных обращением к области памяти после её освобождения, разыменованием нулевых указателей и выходом за границы буфера. При сборке по умолчанию применяются режимы компиляции "--enable-default-pie" и "--enable-default-ssp" для включения рандомизации адресного пространства исполняемых файлов (PIE) и защиты от переполнения стека через подстановку канареечных меток.
Для пакетов, написанных на языке C/C++, дополнительно включаются флаги
"-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" и "-fstack-clash-protection".



В новом выпуске:
  • На платформах, использующих UEFI, добавлена поддержка безопасного режима загрузки (Secure Boot).

    Ядро Linux обновлено до версии 6.1. Системный менеджер systemd обновлён до версии 252.
    Для настройки сети на хостах задействованы компоненты systemd-networkd и systemd-resolved вместо сервиса wicked.
    Локальное хранилище переведено на использование файловой системы XFS для новых установок (на уже установленных системах продолжат использоваться EXT4, wicked и прошлые ядра).
    Обновлено содержимое управляющего (control) и администрирующего (admin) контейнеров.
    Добавлена команда "apiclient report" для генерации отчёта CIS (Center of Internet Security) с оценкой безопасности настроек. Также в состав включён агент для проверки соответствия системы требованиям CIS.

    В параметры, задаваемые по умолчанию для контейнеров OCI, добавлены настройки ограничения ресурсов.
    Предложен новый вариант дистрибутива "aws-ecs-2" для Amazon Elastic Container Service (Amazon ECS), в котором используется UEFI Secure Boot, systemd-networkd и XFS. Во всех вариантах дистрибутива для Amazon ECS добавлена поддержка AppMesh.


    Предложены новые варианты дистрибутива c поддержкой Kubernetes 1.28, в которых используются UEFI Secure Boot, systemd-networkd и XFS.
    Прекращена поддержка вариантов на базе Kubernetes 1.22 и обновлены версии Kubernetes 1.27.4, 1.26.7, 1.25.12 и 1.24.16 в остальных поддерживаемых вариантах. В варианты на базе Kubernetes 1.25 и более новых выпусков добавлена настройка SeccompDefault.


    В вариантах дистрибутива "metal-*" (Bare Metal, для работы поверх обычного оборудования) включён драйвер Intel VMD и добавлены пакеты linux-firmware и aws-iam-authenticator.


Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=59799

Жизнь за Нер'зула!

Ответить