Pagpagawas sa Bottlerocket 1.2, usa ka pag-apod-apod base sa nahilit nga mga sudlanan

Ang pagpagawas sa Linux distribution Bottlerocket 1.2.0 anaa, naugmad uban sa pag-apil sa Amazon alang sa episyente ug luwas nga paglansad sa mga nahilit nga mga sudlanan. Ang mga himan sa pag-apod-apod ug mga sangkap sa pagkontrol kay gisulat sa Rust ug giapod-apod ubos sa mga lisensya sa MIT ug Apache 2.0. Gisuportahan niini ang pagpadagan sa Bottlerocket sa Amazon ECS, VMware ug AWS EKS Kubernetes clusters, ingon man paghimo og custom nga mga build ug mga edisyon nga nagtugot sa paggamit sa nagkalain-laing orkestrasyon ug runtime nga mga himan alang sa mga sudlanan.

Ang pag-apod-apod naghatag sa atomiko ug awtomatik nga gi-update nga dili mabahin nga imahe sa sistema nga naglakip sa Linux kernel ug usa ka gamay nga palibot sa sistema, lakip lamang ang mga sangkap nga gikinahanglan sa pagpadagan sa mga sudlanan. Ang palibot naglakip sa systemd system manager, ang Glibc library, ang Buildroot build tool, ang GRUB boot loader, ang daotan nga network configurator, ang containerd runtime para sa nahilit nga mga sudlanan, ang Kubernetes container orchestration platform, ang aws-iam-authenticator, ug ang Amazon ahente sa ECS.

Ang mga himan sa pag-orkestra sa sudlanan moabut sa usa ka bulag nga sudlanan sa pagdumala nga gipagana pinaagi sa default ug gidumala pinaagi sa API ug AWS SSM Agent. Ang base nga imahe kulang sa usa ka command shell, SSH server ug gihubad nga mga pinulongan (pananglitan, walay Python o Perl) - ang mga himan sa administratibo ug mga himan sa pag-debug gibutang sa usa ka bulag nga sudlanan sa serbisyo, nga gibabagan sa default.

Ang yawe nga kalainan gikan sa parehas nga mga pag-apod-apod sama sa Fedora CoreOS, CentOS / Red Hat Atomic Host mao ang panguna nga pokus sa paghatag labing kataas nga seguridad sa konteksto sa pagpalig-on sa proteksyon sa sistema gikan sa posible nga mga hulga, nga labi ka lisud nga pahimuslan ang mga kahuyangan sa mga sangkap sa OS ug pagdugang pagkalainlain sa sulud. . Ang mga sudlanan gihimo gamit ang standard Linux kernel mechanisms - cgroups, namespaces ug seccomp. Alang sa dugang nga pag-inusara, ang pag-apod-apod naggamit sa SELinux sa "pagpatuman" nga mode.

Ang root partition kay gi-mount read-only, ug ang /etc settings partition kay gi-mount sa tmpfs ug gibalik sa iyang orihinal nga kahimtang human sa restart. Ang direkta nga pagbag-o sa mga file sa /etc nga direktoryo, sama sa /etc/resolv.conf ug /etc/containerd/config.toml, dili suportado - aron permanente nga makatipig sa mga setting, kinahanglan nimo nga gamiton ang API o ibalhin ang gamit sa lain nga mga sudlanan. Ang dm-verity module gigamit sa cryptographicly pagmatuod sa integridad sa root partition, ug kon ang usa ka pagsulay sa pag-usab sa data sa block device nga lebel makita, ang sistema reboots.

Kadaghanan sa mga sangkap sa sistema gisulat sa Rust, nga naghatag mga bahin nga luwas sa panumduman aron malikayan ang mga kahuyangan nga gipahinabo sa pagkahuman sa wala’y bayad nga pag-access sa memorya, mga wala’y kapilian nga pointer, ug mga overrun sa buffer. Kung magtukod pinaagi sa default, ang mga mode sa compilation nga "-enable-default-pie" ug "-enable-default-ssp" gigamit aron mahimo ang randomization sa executable file address space (PIE) ug proteksyon batok sa mga stack overflows pinaagi sa canary substitution. Alang sa mga pakete nga gisulat sa C/C++, ang mga bandera nga “-Wall”, “-Werror=format-security”, “-Wp,-D_FORTIFY_SOURCE=2”, “-Wp,-D_GLIBCXX_ASSERTIONS” ug “-fstack-clash” dugang pa. gipalihok -proteksyon".

Sa bag-ong pagpagawas:

  • Gidugang nga suporta alang sa mga salamin sa rehistro sa imahe sa sulud.
  • Gidugang ang abilidad sa paggamit sa mga sertipiko nga gipirmahan sa kaugalingon.
  • Gidugang nga kapilian aron ma-configure ang hostname.
  • Ang default nga bersyon sa administratibong sudlanan gi-update.
  • Gidugang ang topologyManagerPolicy ug topologyManagerScope settings para sa kubelet.
  • Gidugang nga suporta alang sa kernel compression gamit ang zstd algorithm.
  • Ang abilidad sa pagkarga sa mga virtual machine ngadto sa VMware sa OVA (Open Virtualization Format) nga format gihatag.
  • Ang bersyon sa pag-apod-apod nga aws-k8s-1.21 gi-update nga adunay suporta alang sa Kubernetes 1.21. Ang suporta alang sa aws-k8s-1.16 gihunong na.
  • Gi-update nga mga bersyon sa pakete ug mga dependency alang sa Rust nga pinulongan.

Source: opennet.ru

Idugang sa usa ka comment