Vydání Bottlerocket 1.3, distribuce založená na izolovaných kontejnerech

Bylo zveřejněno vydání linuxové distribuce Bottlerocket 1.3.0, vyvinuté za účasti Amazonu pro efektivní a bezpečné spouštění izolovaných kontejnerů. Nástroje a ovládací komponenty distribuce jsou napsány v Rustu a distribuovány pod licencemi MIT a Apache 2.0. Podporuje spouštění Bottlerocket na clusterech Amazon ECS, VMware a AWS EKS Kubernetes a také vytváření vlastních sestavení a edic, které umožňují použití různých nástrojů pro orchestraci a běh pro kontejnery.

Distribuce poskytuje atomicky a automaticky aktualizovaný nedělitelný systémový obraz, který zahrnuje linuxové jádro a minimální systémové prostředí, včetně pouze komponent nezbytných ke spuštění kontejnerů. Prostředí zahrnuje správce systému systemd, knihovnu Glibc, nástroj Buildroot pro sestavení, zavaděč GRUB, zlý síťový konfigurátor, kontejnerové runtime pro izolované kontejnery, platformu pro orchestraci kontejnerů Kubernetes, aws-iam-authenticator a Amazon. Agent ECS.

Nástroje pro orchestraci kontejnerů jsou dodávány v samostatném kontejneru pro správu, který je ve výchozím nastavení povolen a spravován prostřednictvím rozhraní API a agenta AWS SSM. Základní image postrádá příkazový shell, SSH server a interpretované jazyky ​​ (například žádný Python nebo Perl) - administrativní nástroje a nástroje pro ladění jsou umístěny v samostatném kontejneru služeb, který je ve výchozím nastavení zakázán.

Klíčovým rozdílem od podobných distribucí, jako je Fedora CoreOS, CentOS/Red Hat Atomic Host, je primární zaměření na poskytování maximální bezpečnosti v kontextu posílení ochrany systému před možnými hrozbami, což ztěžuje zneužití zranitelností komponent OS a zvyšuje izolaci kontejnerů. . Kontejnery jsou vytvářeny pomocí standardních mechanismů linuxového jádra – cgroups, jmenných prostorů a seccomp. Pro další izolaci používá distribuce SELinux v režimu „vynucování“.

Kořenový oddíl je připojen pouze pro čtení a oddíl nastavení /etc je připojen v tmpfs a po restartu obnoven do původního stavu. Přímé úpravy souborů v adresáři /etc, jako jsou /etc/resolv.conf a /etc/containerd/config.toml, nejsou podporovány – pro trvalé uložení nastavení musíte použít API nebo přesunout funkcionalitu do samostatných kontejnerů. Modul dm-verity se používá ke kryptografickému ověření integrity kořenového oddílu, a pokud je detekován pokus o úpravu dat na úrovni blokového zařízení, systém se restartuje.

Většina systémových komponent je napsána v Rustu, který poskytuje funkce bezpečné pro paměť, aby se zabránilo zranitelnostem způsobeným přístupy do paměti po volném čase, dereferencemi nulového ukazatele a přetečením vyrovnávací paměti. Při výchozím sestavování se režimy kompilace "-enable-default-pie" a "-enable-default-ssp" používají k povolení náhodného uspořádání adresního prostoru spustitelných souborů (PIE) a ochraně proti přetečení zásobníku prostřednictvím kanárské substituce. U balíčků napsaných v C/C++ jsou navíc příznaky „-Wall“, „-Werror=format-security“, „-Wp,-D_FORTIFY_SOURCE=2“, „-Wp,-D_GLIBCXX_ASSERTIONS“ a „-fstack-clash“. povoleno -ochrana".

V novém vydání:

  • Opravené chyby zabezpečení v dockeru a runtime kontejnerových nástrojích (CVE-2021-41089, CVE-2021-41091, CVE-2021-41092, CVE-2021-41103) související s nesprávným nastavením přístupových práv, které umožňovaly nepřivilegovaným uživatelům jít nad rámec základu adresář a spouštět externí programy.
  • Do kubelet a pluta byla přidána podpora IPv6.
  • Po změně nastavení je možné kontejner restartovat.
  • Do balíčku eni-max-pods byla přidána podpora pro instance Amazon EC2 M6i.
  • Open-vm-tools přidali podporu pro filtry zařízení na základě sady nástrojů Cilium.
  • Pro platformu x86_64 je implementován hybridní bootovací režim (s podporou EFI a BIOS).
  • Aktualizované verze balíčků a závislosti pro jazyk Rust.
  • Podpora pro distribuční verzi aws-k8s-1.17 založenou na Kubernetes 1.17 byla ukončena. Doporučuje se používat verzi aws-k8s-1.21 s podporou Kubernetes 1.21. Varianty k8s používají nastavení cgroup runtime.slice a system.slice.

Zdroj: opennet.ru

Přidat komentář