ΠΠΎΡΡΡΠΏΠ΅Π½ Π²ΡΠΏΡΡΠΊ Linux-Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Bottlerocket 1.1.0, ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈ ΡΡΠ°ΡΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Amazon Π΄Π»Ρ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΡΠΊΠ° ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ². ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ·ΡΠΊΠ΅ Rust ΠΈ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠΌΠΈ MIT ΠΈ Apache 2.0. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ Π·Π°ΠΏΡΡΠΊ Bottlerocket Π² ΠΊΠ»Π°ΡΡΠ΅ΡΠ°Ρ Amazon ECS ΠΈ AWS EKS Kubernetes, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΡΠ±ΠΎΡΠΎΠΊ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΉ, Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΎΡΠΊΠ΅ΡΡΡΠΎΠ²ΠΊΠΈ ΠΈ runtime Π΄Π»Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ².
Die verspreiding verskaf 'n atomies en outomaties bygewerkte ondeelbare stelselbeeld wat die Linux-kern insluit en 'n minimale stelselomgewing wat slegs die komponente insluit wat nodig is om houers te laat loop. Die omgewing sluit die systemd-stelselbestuurder, die Glibc-biblioteek, die Buildroot-bounutsding, die GRUB-selflaaier, die bose netwerkkonfigureerder, die containerd-geΓ―soleerde houer-looptyd, die Kubernetes-houerorkestrasieplatform, die aws-iam-authenticator en die Amazon ECS-agent in .
Die houer-orkestrasie-nutsgoed kom in 'n aparte bestuurshouer wat by verstek geaktiveer is en bestuur word deur die API en AWS SSM Agent. Die basisbeeld het nie 'n opdragdop, 'n SSH-bediener en geΓ―nterpreteerde tale nie (byvoorbeeld geen Python of Perl nie) - administratiewe en ontfoutingsnutsgoed word na 'n aparte dienshouer geskuif, wat by verstek gedeaktiveer is.
Die belangrikste verskil van soortgelyke verspreidings soos Fedora CoreOS, CentOS/Red Hat Atomic Host is die primΓͺre fokus op die verskaffing van maksimum sekuriteit in die konteks van die versterking van stelselbeskerming teen moontlike bedreigings, bemoeilik die uitbuiting van kwesbaarhede in OS-komponente en die verhoging van houer-isolasie. Houers word geskep deur die gewone meganismes van die Linux-kern te gebruik - cgroups, namespaces en seccomp. Vir addisionele isolasie gebruik die verspreiding SELinux in die "afdwingende" modus.
Die wortelpartisie word in leesalleen-modus gemonteer, en die partisie met /etc-instellings word in tmpfs gemonteer en na 'n herbegin na sy oorspronklike toestand herstel. Direkte wysiging van lΓͺers in die /etc-gids, soos /etc/resolv.conf en /etc/containerd/config.toml, word nie ondersteun nie - om instellings permanent te stoor, moet jy die API gebruik of die funksionaliteit na aparte houers skuif. Vir kriptografiese verifikasie van die integriteit van die wortelpartisie, word die dm-verity-module gebruik, en as 'n poging om data op die bloktoestelvlak te wysig bespeur word, herlaai die stelsel.
Die meeste stelselkomponente is in Rust geskryf, wat geheue-veilige nutsmiddels verskaf om kwesbaarhede te vermy wat veroorsaak word deur die aanspreek van 'n geheue-area nadat dit vrygestel is, nulwysers af te lei, en bufferoorskryding. Wanneer daar gebou word, word die samestellingmodusse "--enable-default-pie" en "--enable-default-ssp" by verstek gebruik om adresspasie-randomisering van uitvoerbare lΓͺers (PIE) en beskerming teen stapeloorloop deur kanarie-etiketvervanging moontlik te maak. Vir pakkette geskryf in C/C++, is die "-Wall", "-Werror=format-security", "-Wp,-D_FORTIFY_SOURCE=2", "-Wp,-D_GLIBCXX_ASSERTIONS" en "-fstack-clash" vlae addisioneel ingesluit -beskerming.
In die nuwe vrystelling:
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ Π΄Π²Π° Π½ΠΎΠ²ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠ²Π° aws-k8s-1.20 ΠΈ vmware-k8s-1.20 c ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Kubernetes 1.20. Π Π΄Π°Π½Π½ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ , Π° ΡΠ°ΠΊΠΆΠ΅ Π² ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅ aws-ecs-1, Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ Π½ΠΎΠ²ΡΠΉ Π²ΡΠΏΡΡΠΊ ΡΠ΄ΡΠ° Linux 5.10. Π Π΅ΠΆΠΈΠΌ lockdown ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π²Π΅Π΄ΡΠ½ Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Β«integrityΒ» (Π±Π»ΠΎΠΊΠΈΡΡΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ Π²Π½ΠΎΡΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ ΡΠ΄ΡΠΎ ΠΈΠ· ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ). ΠΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²Π°ΡΠΈΠ°Π½ΡΠ° aws-k8s-1.15 Π½Π° Π±Π°Π·Π΅ Kubernetes 1.15.
- ΠΠ»Ρ Amazon ECS ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ΅ΠΆΠΈΠΌΠ° awsvpc, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ Π²ΡΠ΄Π΅Π»ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠ΅ IP-Π°Π΄ΡΠ΅ΡΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Kubernetes, Π²ΠΊΠ»ΡΡΠ°Ρ QPS, Π»ΠΈΠΌΠΈΡΡ Π½Π° ΠΏΡΠ»Ρ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΠΎΠ±Π»Π°ΡΠ½ΡΠΌ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ°ΠΌ, ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ ΠΎΡ AWS.
- Π bootstrap-ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ SELinux.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΡΠΈΠ»ΠΈΡΠ° resize2fs.
Bron: opennet.ru