The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

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

07.10.2021 09:32

Опубликован выпуск Linux-дистрибутива Bottlerocket 1.3.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".

В новом выпуске:

  • Устранены уязвимости в инструментарии docker и runtime containerd (CVE-2021-41089, CVE-2021-41091, CVE-2021-41092, CVE-2021-41103), связанные с некорректной установкой прав доступа, что позволяло непривилегированным пользователям выйти за пределы базового каталога и выполнить внешние программы.
  • В kubelet и pluto добавлена поддержка IPv6.
  • Предоставлена возможность перезапуска контейнера после изменения его настроек.
  • В пакет eni-max-pods добавлена поддержка инстансов Amazon EC2 M6i.
  • В open-vm-tools добавлена поддержка фильтров устройств, реализованная на базе инструментария Cilium.
  • Для платформы x86_64 реализован гибридный режим загрузки (с поддержкой EFI и BIOS).
  • Обновлены версии пакетов и зависимости для языка Rust.
  • Прекращена поддержка варианта дистрибутива aws-k8s-1.17 на базе Kubernetes 1.17. Рекомендовано использовать вариант aws-k8s-1.21 c поддержкой Kubernetes 1.21. В вариантах k8s задействованы настройки cgroup runtime.slice и system.slice.


  1. Главная ссылка к новости (https://github.com/bottlerocke...)
  2. OpenNews: Выпуск Bottlerocket 1.2, дистрибутива на базе изолированных контейнеров
  3. OpenNews: Runj - OCI-совместимый инструментарий для управления контейнерами на базе FreeBSD jail
  4. OpenNews: Четвёртый тестовый выпуск ОС Subgraph
  5. OpenNews: Спецслужбы Франции опубликовали защищённый дистрибутив CLIP OS
  6. OpenNews: Релиз ОС Qubes 4.0, использующей виртуализацию для изоляции приложений
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/55934-bottlerocket
Ключевые слова: bottlerocket
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (16) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 09:38, 07/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    вот если этот безумно безопасный инструмент работал на ОС, написанной на расте. а так дыры ос use-after-free сводят на нет безопасность раста.
     
     
  • 2.4, eganru (?), 09:46, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    [i]сводят на нет безопасность раста[/i] - идеального кода не бывает.
    но если, грубо говоря, на 1000 строчек кода будет не 10 ошибок, а 9 - это уже неплохо.
     
     
  • 3.9, Аноним (9), 11:31, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Будет 19 вместо 10, только самых тупых.
     

  • 1.2, Онаним (?), 09:39, 07/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    - В базовом образе отсутствует командная оболочка, сервер SSH и интерпретируемые языки
    - управляется через API и AWS SSM Agent

    Он точно bottlerocket а не bottlesitter?

     
     
  • 2.5, Аноним (5), 10:16, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Он точно bottlerocket а не bottlesitter?

    Точно. Бутыль-ракета, для посадки:)

     
     
  • 3.6, Умер (?), 10:18, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Для насадки!
     

  • 1.8, Урри (ok), 11:26, 07/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    "Оркестровка контейнеров", каков слог, а?

    У меня тут оркестровка системных служб в оркестре дистирибутива глюканула после того, как я оркестровку своего кода попытался поправить.

    Пришлось просить господина Ядро соизволить обратить внимание на три клавиши и разогнать этот оркестровый балаган к х..м да собрать новый оркестр (правда, из тех же б...ей). Ну, то есть, бутнуться по новой.

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

     
     
  • 2.12, Аноним (12), 12:33, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А вы, друзья, как ни садитесь, все в музыканты не годитесь.
     
     
  • 3.13, Аноним (5), 13:10, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Но тем прочнее наш союз... Мы так страдали - это минус. Теперь мы вместе - это плюс.
     

  • 1.11, Аноним (11), 11:57, 07/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    больше изоляции богу изоляции
     
     
  • 2.14, Аноним (14), 15:01, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    главное, чтоб икспертов опеннета поменьше (в идеале - ноль)
     
     
  • 3.15, topin89 (ok), 15:32, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Можно больше, но только в изолированном контейнере
     
     
  • 4.17, hefenud (ok), 23:17, 07/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    При чем в контейнере без доступ к сети. А желательно с заваренными наглухо дверями.
     
     
  • 5.18, Аноним (18), 00:23, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    главное без доступа к самкам, еде и воздуху
     
  • 4.24, Всем Анонимам Аноним (?), 11:14, 08/10/2021 [^] [^^] [^^^] [ответить]  
  • +/
    5 баллов :) :) :)
     

  • 1.31, Аноним (5), 17:33, 08/10/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Господа предпочитают через боль. Понимаю, не осуждаю.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру