The OpenNET Project / Index page

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

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

31.03.2022 13:39

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

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

  • При установке RPM-пакетов обеспечена генерации списка программ в формате JSON и монтирование его в host-контейнер как файл /var/lib/bottlerocket/inventory/application.json для получения информации о доступных пакетах.
  • Обновлены контейнеры "admin" и "control".
  • Обновлены версии пакетов и зависимости для языков Go и Rust.
  • Обновлены версии пакетов со сторонними программами.
  • Решены проблемы с конфигурацией tmpfilesd для kmod-5.10-nvidia.
  • При установке tuftool обеспечена привязка версий зависимостей.


  1. Главная ссылка к новости (https://github.com/bottlerocke...)
  2. OpenNews: Amazon опубликовал Bottlerocket 1.0.0, Linux-дистрибутив на базе изолированных контейнеров
  3. OpenNews: Четвёртый тестовый выпуск ОС Subgraph
  4. OpenNews: Спецслужбы Франции опубликовали защищённый дистрибутив CLIP OS
  5. OpenNews: Релиз ОС Qubes 4.1, использующей виртуализацию для изоляции приложений
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/56944-bottlerocket
Ключевые слова: bottlerocket
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (17) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 14:13, 31/03/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    чзх докер ос(альпайн) переписали на расте????
     
     
  • 2.9, Аноним (9), 17:44, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > при участии компании Amazon

    Спасибо, не надо.

     
     
  • 3.11, Аноним (11), 17:58, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >Инструментарий и управляющие компоненты дистрибутива написаны на языке Rust

    Спасибо, не надо.

     
     
  • 4.15, Аноним (9), 20:21, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Да тут как обычно, одни обёртки.
     
  • 3.12, Annym (?), 18:39, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    а чем компания неугодила то?
     

  • 1.5, Аноним (5), 14:54, 31/03/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > при участии компании Amazon для эффективного и безопасного запуска

    Сиречь: от майора, но без зонда. Чесна-чесна!

     
  • 1.7, Аноним (7), 16:31, 31/03/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Amazon, systemd, docker, rust - чуваки делают всё, чтобы стриггерить максимальное количество экспертов опеннета!
     
     
  • 2.10, Аноним (9), 17:46, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > управляющие компоненты дистрибутива написаны на языке Rust

    Как обычно, на расте - только обёртка.

     
     
  • 3.13, Учетчик Экспердов (?), 18:58, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> In addition, almost all first-party components are written in Rust.
    >>  Rust 95.4%  Go 2.4%  Shell 1.6%  Dockerfile 0.6%
    > Как обычно, на расте - только обёртка.

    Первый эксперд триггернулся! Ура, товарищи!

     
     
  • 4.16, Аноним (9), 20:22, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    И сколько раста в системде?
     
     
  • 5.18, Аноним (-), 22:33, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > И сколько раста в системде?

    Ходи сразу с козырей:
    ­— И сколько раста в ядре? А ведь все приложения - по сути просто обертки над ядром! Вот!


     
  • 4.17, Аноним (9), 20:23, 31/03/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > first-party components

    А чего не all-party? Что за манипуляции считать раст только среди раста?

     
  • 2.20, Аноним (20), 17:10, 01/04/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я не понял, а где жс?
     

  • 1.14, BSDunya (?), 19:45, 31/03/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Хорошая штука, как раз искал дистрибутив для виртуалки на которой запускаю всякий шлак с докерхаба и своих мокрописяк.
     

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



    Спонсоры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

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