Hi ha disponible Bottlerocket 1.8, una distribució basada en contenidors aïllats

S'ha publicat el llançament de la distribució Linux Bottlerocket 1.8.0, desenvolupada amb la participació d'Amazon per al llançament eficient i segur de contenidors aïllats. Les eines i els components de control de la distribució estan escrits en Rust i es distribueixen sota les llicències MIT i Apache 2.0. Admet l'execució de Bottlerocket als clústers d'Amazon ECS, VMware i AWS EKS Kubernetes, així com la creació de compilacions i edicions personalitzades que permeten l'ús de diverses eines d'orquestració i temps d'execució per als contenidors.

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ó:

  • S'ha actualitzat el contingut dels contenidors administratius i de control.
  • El temps d'execució dels contenidors aïllats s'ha actualitzat a la branca containerd 1.6.x.
  • Assegura que els processos en segon pla que coordinen el funcionament dels contenidors es reinicien després dels canvis al magatzem de certificats.
  • És possible establir els paràmetres d'arrencada del nucli a través de la secció Configuració d'arrencada.
  • Habilitat per ignorar els blocs buits quan es supervisa la integritat de la partició arrel mitjançant dm-verity.
  • S'ha proporcionat la possibilitat d'enllaçar estàticament noms d'amfitrió a /etc/hosts.
  • S'ha proporcionat la possibilitat de generar una configuració de xarxa mitjançant la utilitat netdog (s'ha afegit l'ordre generate-net-config).
  • S'han proposat noves opcions de distribució amb suport per a Kubernetes 1.23. El temps d'inici dels pods a Kubernetes s'ha reduït desactivant el mode configMapAndSecretChangeDetectionStrategy. S'han afegit nous paràmetres de kubelet: provider-id i podPidsLimit.
  • S'ha proposat una nova versió del kit de distribució "aws-ecs-1-nvidia" per a Amazon Elastic Container Service (Amazon ECS), subministrat amb controladors NVIDIA.
  • S'ha afegit suport per a dispositius d'emmagatzematge Microchip Smart Storage i MegaRAID SAS. S'ha ampliat el suport per a targetes Ethernet als xips Broadcom.
  • Versions i dependències de paquets actualitzades per als idiomes Go i Rust, així com versions de paquets amb programes de tercers. Bottlerocket SDK s'ha actualitzat a la versió 0.26.0.

Font: opennet.ru

Afegeix comentari