A Bottlerocket 1.1 kiadása, egy izolált konténereken alapuló disztribúció

Elérhető a Bottlerocket 1.1.0 Linux disztribúció kiadása, amelyet az Amazon részvételével fejlesztettek ki az elszigetelt konténerek hatékony és biztonságos elindítására. A disztribúció eszközei és vezérlőelemei Rust nyelven készültek, és az MIT és az Apache 2.0 licenc alatt kerülnek terjesztésre. Támogatja a Bottlerocket futtatását Amazon ECS és AWS EKS Kubernetes fürtökben, valamint olyan egyedi buildek és kiadások létrehozását, amelyek lehetővé teszik a különböző hangszerelési és futásidejű eszközök használatát konténerekhez.

A disztribúció egy atomosan és automatikusan frissített oszthatatlan rendszerképet biztosít, amely tartalmazza a Linux kernelt és egy minimális rendszerkörnyezetet, amely csak a konténerek futtatásához szükséges összetevőket tartalmazza. A környezet tartalmazza a systemd rendszerkezelőt, a Glibc könyvtárat, a Buildroot build eszközt, a GRUB rendszerbetöltőt, a gonosz hálózati konfigurátort, a konténeres izolált tároló futási környezetet, a Kubernetes konténer-orchestrációs platformot, az aws-iam-authenticatort és az Amazon ECS ügynököt. .

A konténer-rendezési eszközök egy külön felügyeleti tárolóban vannak, amely alapértelmezés szerint engedélyezve van, és az API-n és az AWS SSM-ügynökön keresztül kezelhető. Az alapképből hiányzik a parancshéj, az SSH-kiszolgáló és az értelmezett nyelvek (például nincs Python vagy Perl) - az adminisztrációs és hibakereső eszközök egy külön szolgáltatástárolóba kerülnek, amely alapértelmezés szerint le van tiltva.

A legfontosabb különbség a hasonló disztribúcióktól, mint például a Fedora CoreOS, CentOS/Red Hat Atomic Host, az elsődlegesen a maximális biztonság nyújtása a lehetséges fenyegetésekkel szembeni rendszervédelem megerősítése, az operációs rendszer összetevőiben lévő sérülékenységek kihasználásának bonyolítása és a tárolók elszigeteltségének növelése összefüggésében. A tárolók a Linux kernel szokásos mechanizmusaival jönnek létre – cgroups, namespaces és seccomp. A további elkülönítés érdekében a disztribúció a SELinuxot "kényszerítő" módban használja.

A gyökérpartíció csak olvasható módban, az /etc beállításokkal rendelkező partíció pedig a tmpfs-ben csatolva lesz, és újraindítás után visszaáll az eredeti állapotába. Az /etc könyvtárban lévő fájlok, például az /etc/resolv.conf és /etc/containerd/config.toml közvetlen módosítása nem támogatott – a beállítások végleges mentéséhez használja az API-t, vagy helyezze át a funkciókat külön tárolókba. A gyökérpartíció integritásának kriptográfiai ellenőrzésére a dm-verity modult használják, és ha blokkeszköz szintű adatmódosítási kísérletet észlel, a rendszer újraindul.

A legtöbb rendszerösszetevő Rust nyelven íródott, amely memóriabiztos eszközöket biztosít a memóriaterület felszabadítása utáni címzéséből, a nullmutatók hivatkozásának megszüntetéséből és a puffertúllépésből eredő sebezhetőségek elkerülésére. Az építés során az "--enable-default-pie" és az "--enable-default-ssp" fordítási módok alapértelmezés szerint lehetővé teszik a végrehajtható fájlok (PIE) címterű véletlenszerűsítését és a verem túlcsordulás elleni védelmét a kanári címkék helyettesítésével. A C/C++ nyelven írt csomagok esetében a "-Wall", "-Worror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" és "-fstack-clash" jelző is használható. tartalmazza -védelem.

Az új kiadásban:

  • Két új terjesztési lehetőséget javasoltak: aws-k8s-1.20 és vmware-k8s-1.20 a Kubernetes 1.20 támogatásával. Ezek a változatok, valamint a frissített aws-ecs-1 verzió az új Linux kernel 5.10-es kiadását használják. A zárolási mód alapértelmezés szerint „integritásra” van állítva (azok a képességek, amelyek lehetővé teszik a futó kernel felhasználói területről történő módosítását, le vannak tiltva). A Kubernetes 8-ön alapuló aws-k1.15s-1.15 változat támogatása megszűnt.
  • Az Amazon ECS támogatja az awsvpc hálózati módot, amely lehetővé teszi külön hálózati interfészek és belső IP-címek kiosztását az egyes feladatokhoz.
  • Hozzáadott beállítások a Kubernetes különféle paramétereinek vezérléséhez, beleértve a QPS-t, a pool-korlátokat és az AWS-től eltérő felhőszolgáltatókhoz való csatlakozás lehetőségét.
  • A bootstrap tároló korlátozza a felhasználói adatokhoz való hozzáférést a SELinux használatával.
  • Hozzáadott resize2fs segédprogram.

Forrás: opennet.ru

Hozzászólás