Izdanje Bottlerocket 1.1, distribucije temeljene na izoliranim spremnicima

Dostupno je izdanje distribucije Linuxa Bottlerocket 1.1.0, razvijeno uz sudjelovanje Amazona za učinkovito i sigurno pokretanje izoliranih spremnika. Distribucijski alati i kontrolne komponente napisani su u Rustu i distribuiraju se pod licencama MIT i Apache 2.0. Podržava pokretanje Bottlerocket-a u klasterima Amazon ECS i AWS EKS Kubernetes, kao i stvaranje prilagođenih verzija i izdanja koja omogućuju upotrebu raznih alata za orkestraciju i vrijeme izvođenja za spremnike.

Distribucija pruža atomski i automatski ažuriranu nedjeljivu sliku sustava koja uključuje Linux kernel i minimalno okruženje sustava, uključujući samo komponente potrebne za pokretanje spremnika. Okruženje uključuje upravitelja sustava systemd, biblioteku Glibc, alat za izgradnju Buildroot, GRUB boot loader, opaki mrežni konfigurator, runtime spremnika za izolirane spremnike, Kubernetes platformu za orkestraciju spremnika, aws-iam-authenticator i Amazon ECS agent.

Alati za orkestraciju spremnika dolaze u zasebnom spremniku za upravljanje koji je omogućen prema zadanim postavkama i njime se upravlja putem API-ja i AWS SSM agenta. Osnovnoj slici nedostaje naredbena ljuska, SSH poslužitelj i interpretirani jezici (na primjer, nema Python ili Perl) - administrativni alati i alati za otklanjanje pogrešaka smješteni su u zasebni spremnik usluge, koji je prema zadanim postavkama onemogućen.

Ključna razlika u odnosu na slične distribucije kao što su Fedora CoreOS, CentOS/Red Hat Atomic Host je primarni fokus na pružanje maksimalne sigurnosti u kontekstu jačanja zaštite sustava od mogućih prijetnji, što otežava iskorištavanje ranjivosti u komponentama OS-a i povećava izolaciju spremnika . Spremnici se stvaraju korištenjem standardnih mehanizama Linux kernela - cgroups, namespaces i seccomp. Za dodatnu izolaciju, distribucija koristi SELinux u načinu "provođenja".

Korijenska particija je montirana samo za čitanje, a /etc particija postavki je montirana u tmpfs i vraćena u svoje izvorno stanje nakon ponovnog pokretanja. Izravna izmjena datoteka u /etc direktoriju, kao što su /etc/resolv.conf i /etc/containerd/config.toml, nije podržana - da biste trajno spremili postavke, morate koristiti API ili premjestiti funkcionalnost u zasebne spremnike. Modul dm-verity koristi se za kriptografsku provjeru integriteta root particije, a ako se otkrije pokušaj izmjene podataka na razini blok uređaja, sustav se ponovno pokreće.

Većina komponenti sustava napisana je u Rustu, koji pruža značajke za sigurnost memorije kako bi se izbjegle ranjivosti uzrokovane pristupima memoriji nakon oslobađanja, dereferenciranjem nultog pokazivača i prekoračenjem međuspremnika. Prilikom izrade prema zadanim postavkama, načini kompilacije "-enable-default-pie" i "-enable-default-ssp" koriste se za omogućavanje nasumičnog odabira adresnog prostora izvršne datoteke (PIE) i zaštitu od preljeva stogova kroz canary zamjenu. Za pakete napisane u C/C++ dodatno su zastavice “-Wall”, “-Werror=format-security”, “-Wp,-D_FORTIFY_SOURCE=2”, “-Wp,-D_GLIBCXX_ASSERTIONS” i “-fstack-clash” omogućena - zaštita".

U novom izdanju:

  • Predložene su dvije nove opcije distribucije aws-k8s-1.20 i vmware-k8s-1.20 s podrškom za Kubernetes 1.20. Ove varijante, kao i ažurirana verzija aws-ecs-1, koriste novo izdanje Linux kernela 5.10. Način zaključavanja je prema zadanim postavkama postavljen na "integritet" (mogućnosti koje dopuštaju promjene u pokrenutom kernelu iz korisničkog prostora su blokirane). Podrška za varijantu aws-k8s-1.15 koja se temelji na Kubernetesu 1.15 je prekinuta.
  • Amazon ECS podržava mrežni način rada awsvpc, koji vam omogućuje dodjeljivanje zasebnih mrežnih sučelja i internih IP adresa za svaki zadatak.
  • Dodane postavke za kontrolu raznih Kubernetes parametara, uključujući QPS, ograničenja bazena i mogućnost povezivanja s pružateljima usluga u oblaku koji nisu AWS.
  • Bootstrap spremnik omogućuje ograničenje pristupa korisničkim podacima pomoću SELinuxa.
  • Dodan uslužni program resize2fs.

Izvor: opennet.ru

Dodajte komentar