ĂshtĂ« publikuar versioni 1.3.0 i distribucionit Linux Bottlerocket, i zhvilluar nĂ« bashkĂ«punim me kompaninĂ« Amazon pĂ«r tĂ« mundĂ«suar njĂ« nisje efikase dhe tĂ« sigurt tĂ« konteinerĂ«ve tĂ« izoluar. Instrumentet dhe komponentĂ«t menaxhues tĂ« distribucionit janĂ« shkruar nĂ« gjuhĂ«n Rust dhe shpĂ«rndahen nĂ«n licencat MIT dhe Apache 2.0. Bottlerocket mbĂ«shtet nisjen nĂ« klasterat Amazon ECS, VMware dhe AWS EKS Kubernetes, si dhe krijimin e ndĂ«rtimesh dhe redaksish tĂ« ndryshme qĂ« lejojnĂ« pĂ«rdorimin e mjeteve tĂ« ndryshme tĂ« orkestrimit dhe runtime pĂ«r konteinerĂ«t.
Ky distribucion ofron një imazh sistemik të pandarë dhe automatikisht të përditësuar, që përfshin bërthamën Linux dhe një mjedis minimal sistemi, duke përfshirë vetëm komponentët e nevojshëm për funksionimin e kontejnerëve. Në mjedis përdoren menaxheri i sistemit systemd, biblioteka Glibc, instrumenti i ndërtimit Buildroot, ngarkuesi GRUB, konfiguruesi i rrjetit wicked, runtime për kontejnerët e izoluar containerd, platforma e orkestrimit të kontejnerëve Kubernetes, autentifikuesi aws-iam-authenticator dhe agjenti Amazon ECS.
Instrumentet për orkestrimin e kontejnerëve ofrohen në një kontejner menaxhues të veçantë, i cili aktivizohet automatikisht dhe menaxhohet përmes API dhe AWS SSM Agent. Në imazhin bazë mungon shell-i komandues, server SSH dhe gjuhët e interpretuara (p.sh., nuk ka Python ose Perl) - mjetet për administratorin dhe mjetet e diagnostikimit janë transferuar në një kontejner shërbimi të veçantë, i cili është automatikisht i çaktivizuar.
Dallimi kryesor nga distribucionet e ngjashme, si Fedora CoreOS, CentOS/Red Hat Atomic Host është orientimi inicial për të ofruar siguri maksimale në kontekstin e forcuar të mbrojtjes së sistemit nga kërcënimet e mundshme, komplikuar shpëtimin e dobësive në komponentët e OS dhe rritur izolimin e kontejnerëve. Kontejnerët krijohen duke përdorur mekanizmat standard të bërthamës Linux - cgroups, hapsira emrash dhe seccomp. Për izolim shtesë, në distribucion aplikohet SELinux në modalitetin 'enforcing'.
Particioni kryesor montablet nĂ« mĂ«nyrĂ« vetĂ«m pĂ«r lexim dhe pjesa me konfigurimet /etc montablet nĂ« tmpfs dhe rikthen gjendjen e saj origjinale pas rinisjes. Ndryshimi direkt i skedarĂ«ve nĂ« katalogun /etc, siç janĂ« /etc/resolv.conf dhe /etc/containerd/config.toml, nuk mbĂ«shtetet â pĂ«r ruajtjen e pĂ«rhershme tĂ« konfigurimeve, duhet tĂ« pĂ«rdoret API ose tĂ« nxirret funksionaliteti nĂ« kontenierĂ« tĂ« veçantĂ«. PĂ«r verifikimin kriptografik tĂ« integritetit tĂ« ndarjes kryesore, Ă«shtĂ« angazhuar moduli dm-verity, dhe nĂ« rast se identifikohen pĂ«rpjekje pĂ«r tĂ« modifikuar tĂ« dhĂ«nat nĂ« nivelin e pajisjes bllokuese, sistemi ri-nishet.
Shumica e komponentëve sistemikë janë shkruar në gjuhën Rust, e cila ofron mjete për menaxhimin e sigurt të memories, duke evituar dobësi që shkaktohen nga referencat në hapësirën e memories pas lirimit të saj, dereferenca e treguesve null dhe dalja jashtë kufijve të buferave. Gjatë ndërtimit, në mënyrë default aplikohen mënyrat e kompilimit "--enable-default-pie" dhe "--enable-default-ssp" për të përfshirë randomizimin e hapësirës adresore të skedarëve ekzekutivë (PIE) dhe mbrojtjen nga mbushja e stack-ut përmes zëvendësimit të shenjave të kanarëve. Për paketat e shkruara në gjuhët C/C++, shtohen gjithashtu flamujt "-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" dhe "-fstack-clash-protection".
NĂ« versionin e ri:
- Janë eliminuar vulnerabilitetet në instrumentin docker dhe runtime containerd (CVE-2021-41089, CVE-2021-41091, CVE-2021-41092, CVE-2021-41103), të lidhura me caktimin e paqartë të të drejtave të qasjes, që i lejonin përdoruesit e paprivilegjuar të kalonin jashtë katalogut bazë dhe të ekzekutonin programe të jashtme.
- Në kubelet dhe pluto është shtuar mbështetje IPv6.
- Janë ofruar mundësi për të rinisur konteinerin pas ndryshimit të konfigurimeve të tij.
- Në paketin eni-max-pods është shtuar mbështetje për instancat Amazon EC2 M6i.
- Në open-vm-tools është shtuar mbështetje për filtrat e pajisjeve, e implementuar mbi bazën e instrumentit Cilium.
- Për platformën x86_64 është realizuar një mod hibrid ngarkimi (me mbështetje EFI dhe BIOS).
- Janë përditësuar versionet e paketave dhe varësive për gjuhën Rust.
- ĂshtĂ« pezulluar mbĂ«shtetja pĂ«r variantin e distribucionit aws-k8s-1.17 mbi bazĂ«n e Kubernetes 1.17. Rekomandohet tĂ« pĂ«rdoret varianti aws-k8s-1.21 me mbĂ«shtetje pĂ«r Kubernetes 1.21. NĂ« variantet k8s janĂ« aktivizuar konfigurimet cgroup runtime.slice dhe system.slice.
Burimi: opennet.ru
