Llançament de Bottlerocket 1.1, una distribució basada en contenidors aïllats

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

La distribució proporciona una imatge del sistema indivisible actualitzada atòmicament i automàticament que inclou el nucli de Linux i un entorn de sistema mínim, que inclou només els components necessaris per executar contenidors. L'entorn inclou el gestor del sistema systemd, la biblioteca Glibc, l'eina de compilació Buildroot, el carregador d'arrencada GRUB, el configurador de xarxa malvat, el temps d'execució containerd per a contenidors aïllats, la plataforma d'orquestració de contenidors Kubernetes, l'aws-iam-authenticator i l'Amazon. Agent ECS.

Les eines d'orquestració de contenidors vénen en un contenidor de gestió independent que s'habilita de manera predeterminada i es gestiona mitjançant l'API i l'agent AWS SSM. La imatge base no té un intèrpret d'ordres, un servidor SSH i idiomes interpretats (per exemple, sense Python o Perl): les eines administratives i les eines de depuració es col·loquen en un contenidor de servei independent, que està desactivat per defecte.

La diferència clau amb distribucions similars com Fedora CoreOS, CentOS/Red Hat Atomic Host és l'enfocament principal a proporcionar la màxima seguretat en el context de millorar la protecció del sistema davant de possibles amenaces, fent més difícil explotar les vulnerabilitats dels components del sistema operatiu i augmentar l'aïllament dels contenidors. . Els contenidors es creen utilitzant mecanismes estàndard del nucli de Linux: cgroups, espais de noms i seccomp. Per a un aïllament addicional, la distribució utilitza SELinux en mode "aplicar".

La partició arrel es munta de només lectura, i la partició de configuració /etc es munta en tmpfs i es restaura al seu estat original després d'un reinici. No s'admet la modificació directa dels fitxers del directori /etc, com ara /etc/resolv.conf i /etc/containerd/config.toml; per desar permanentment la configuració, heu d'utilitzar l'API o moure la funcionalitat a contenidors separats. El mòdul dm-verity s'utilitza per verificar criptogràficament la integritat de la partició arrel i, si es detecta un intent de modificar dades a nivell de dispositiu de bloc, el sistema es reinicia.

La majoria dels components del sistema estan escrits en Rust, que proporciona funcions segures per a la memòria per evitar vulnerabilitats causades per accessos a memòria posteriors lliures, desreferències de punter nul i desbordaments de memòria intermèdia. Quan es construeix per defecte, els modes de compilació "-enable-default-pie" i "-enable-default-ssp" s'utilitzen per habilitar l'aleatorització de l'espai d'adreces de fitxers executables (PIE) i la protecció contra desbordaments de pila mitjançant la substitució canària. Per als paquets escrits en C/C++, les marques "-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" i "-fstack-clash" són addicionals habilitat -protecció".

A la nova versió:

  • Предложено два новых варианта дистрибутива aws-k8s-1.20 и vmware-k8s-1.20 c поддержкой Kubernetes 1.20. В данных вариантах, а также в обновлённом варианте aws-ecs-1, задействован новый выпуск ядра Linux 5.10. Режим lockdown по умолчанию переведён в значение «integrity» (блокируются возможности, позволяющие вносить изменения в работающее ядро из пространства пользователя). Прекращена поддержка варианта aws-k8s-1.15 на базе Kubernetes 1.15.
  • Для Amazon ECS реализована поддержка сетевого режима awsvpc, позволяющего выделять отдельные сетевых интерфейсы и внутренние IP-адреса для каждой задачи.
  • Добавлены настройки для управления различными параметрами Kubernetes, включая QPS, лимиты на пулы и возможность подключения к облачным провайдерам, отличным от AWS.
  • В bootstrap-контейнере обеспечено ограничение доступа к данным пользователя при помощи SELinux.
  • Добавлена утилита resize2fs.

Font: opennet.ru

Afegeix comentari