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

BottleRocket

Несколько дней назад Amazon выпустила релиз первая значимая версия Бутылочная ракета 1.0.0, который представляет собой специализированный дистрибутив Linux, разработанный для эффективного и безопасного запуска изолированных контейнеров.

Операционная система Он предназначен для работы в кластерах Amazon ECS и AWS EKS Kubernetes. Предоставляются инструменты для создания ваших собственных сборок и исправлений, которые могут использоваться другими средами выполнения контейнера, ядром и инструментами оркестровки.

Дистрибутив предоставляет ядро ​​Linux и минимальную системную среду, что включает только компоненты, необходимые для запуска контейнеров.

Среди пакетов, задействованных в проекте, были системный менеджер systemd, библиотека Glibc to, инструменты сборки Buildroot, конфигуратор злобного загрузчика сети GRUB, среда выполнения для изолированных контейнеров в контейнере, платформа оркестрации Kubernetes Container Authenticator aws-iam-authentication agent и Amazon ECS.

Макет обновляется атомарно и представляется в виде неделимого образа системы. Системе назначаются два дисковых раздела, один из которых содержит активную систему, а обновление копируется на второй.

После внедрения обновления активируется второй раздел, а в первом до прибытия следующего обновления сохраняется предыдущая версия системы, к которой можно вернуться в случае возникновения проблем. Обновления устанавливаются автоматически без вмешательства администратора.

Ключевое отличие от аналогичных дистрибутивов такие как Fedora CoreOS, CentOS / Red Hat Atomic Host основное внимание уделяется обеспечению максимальной безопасности в контексте усиления защиты системы от возможных угроз, усложняющих эксплуатацию уязвимостей в компонентах операционной системы и повышающих изоляцию контейнеров.

Контейнеры создаются с использованием стандартных механизмов ядра Linux: cgroups, пространства имен и seccomp. Для дополнительной изоляции дистрибутив использует SELinux в режиме «приложения», а модуль dm-verity используется для криптографической проверки целостности корневого раздела.

Если на уровне блочного устройства обнаруживается попытка изменения данных, система перезагружается.

Корневой раздел монтируется только для чтения а раздел конфигурации / etc монтируется в tmpfs и восстанавливается в исходное состояние при перезагрузке.

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

Большинство компонентов системы написано на языке 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 - охрана ».

Инструменты оркестровки Из контейнеров отправляются в отдельном контейнере для управления который включен по умолчанию и управляется через агент и API AWS SSM.

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

Получить Bottlerocket 1.0.0

Как дистрибутив, так и компоненты управления распространением написаны на Rust и распространяются под лицензиями MIT и Apache 2.0. Проект разрабатывается на GitHub. и доступен для участия сообщества.

Образ развертывания системы создается для архитектур x86_64 и Aarch64.

Для получения дополнительной информации вы можете обратиться к по следующей ссылке. 


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.