Майкрософт Linux түгээлтийн CBL-Mariner-ийн шинэчлэлтийг нийтэллээ

Майкрософт CBL-Mariner 2.0.20221029 (Common Base Linux Mariner) түгээлтийн иж бүрдлийн шинэчлэлтийг нийтэллээ. Энэ нь үүлэн дэд бүтэц, захын систем болон Microsoft-ын төрөл бүрийн үйлчилгээнд ашигладаг Линукс орчинд зориулсан бүх нийтийн суурь платформ болгон хөгжүүлж байна. Энэхүү төсөл нь Microsoft-ын Линукс шийдлүүдийг нэгтгэх, янз бүрийн зорилгоор Линукс системүүдийн засвар үйлчилгээг хялбаршуулах зорилготой юм. Төслийн бүтээн байгуулалтыг MIT лицензийн дагуу түгээдэг. Багцуудыг aarch64 болон x86_64 архитектурт зориулж үүсгэсэн. X1.1_86 архитектурт зориулж ачаалах боломжтой ISO дүрсийг (64 ГБ) бэлтгэсэн.

Шинэ хувилбарт:

  • Linux цөмийн 5.15.74, PHP 8.1.11, nodejs 16.17.1, cassandra 4.0.7, dbus 1.15.2, expat 2.5.0, mysql 8.0.31, terraform1.32.2.dy зэрэг хувилбаруудыг багтаасан багцын шинэчилсэн хувилбарууд. 5.8.0, wireshark 3.4.16, nginx 1.22.1.
  • cairomm 1.12.0, cpptest 1.1.2, k-exec-tools, kernel-drivers-gpu, libcroco 0.6.13, python-google-auth-oauthlib, sgx-backwards-compatibility зэрэг шинэ багцуудыг нэмсэн.
  • TCP түгжрэлийг хянах алгоритмыг (TCP түгжрэл) өөрчлөх модулиуд багтсан болно.
  • Эмзэг байдлын засваруудыг libtar, unbound, aspell, libtiff, redis, livepatch, libtasn1, PHP, nodejs, dbus, expat, mod_wsgi, wireshark, nginx, mysql, terraform багцууд руу шилжүүлсэн.

CBL-Mariner түгээлт нь үүлэн дэд бүтэц болон захын төхөөрөмжүүд дээр ажиллаж байгаа контейнер, хост орчин, үйлчилгээний агуулгыг бий болгох бүх нийтийн үндэс болох үндсэн багцуудын жижиг стандарт багцыг өгдөг. CBL-Mariner дээр нэмэлт багцуудыг нэмснээр илүү нарийн төвөгтэй, тусгай шийдлүүдийг бий болгож болох боловч эдгээр бүх системийн үндэс нь ижил хэвээр байгаа тул засвар үйлчилгээ, шинэчлэлтийг илүү хялбар болгодог. Жишээлбэл, CBL-Mariner нь WSL2 (Linux-д зориулсан Windows дэд систем) дэд систем дээр суурилсан орчинд Linux GUI програмуудыг ажиллуулах график стекийн бүрэлдэхүүн хэсгүүдээр хангадаг WSLg мини түгээлтийн үндэс болгон ашигладаг. WSLg-ийн өргөтгөсөн функц нь Weston Composite Server, XWayland, PulseAudio болон FreeRDP-тэй нэмэлт багцуудыг оруулснаар хэрэгждэг.

CBL-Mariner бүтээх систем нь SPEC файлууд болон эх кодууд дээр тулгуурлан бие даасан RPM багцуудыг үүсгэх, мөн rpm-ostree хэрэглүүрийг ашиглан үүсгэсэн цул системийн зургуудыг тусад нь багц болгон хуваахгүйгээр атомаар шинэчлэх боломжийг олгодог. Үүний дагуу шинэчлэлтийн хүргэлтийн хоёр загварыг дэмждэг: тусдаа багцуудыг шинэчлэх, системийн дүр төрхийг бүхэлд нь дахин бүтээх, шинэчлэх замаар. Урьдчилан бэлтгэсэн 3000 орчим RPM багцын агуулах боломжтой бөгөөд та тохиргооны файл дээр үндэслэн өөрийн зургийг бүтээхэд ашиглаж болно.

Түгээлт нь зөвхөн хамгийн шаардлагатай бүрэлдэхүүн хэсгүүдийг багтаасан бөгөөд санах ой, дискний зайны хамгийн бага зарцуулалт, түүнчлэн ачаалах өндөр хурдыг оновчтой болгодог. Энэхүү түгээлт нь аюулгүй байдлыг сайжруулах янз бүрийн нэмэлт механизмуудыг багтаасанаараа онцлог юм. Төсөл нь "анхдагчаар хамгийн их аюулгүй байдал" гэсэн хандлагыг баримталдаг. Seccomp механизмыг ашиглан системийн дуудлагыг шүүх, дискний хуваалтыг шифрлэх, дижитал гарын үсэг ашиглан багцуудыг шалгах боломжтой.

Линукс цөмд дэмжигдсэн хаягийн орон зайг санамсаргүй хуваарилах горимууд, мөн тэмдэгтийн халдлагаас хамгаалах механизмууд, mmap, /dev/mem болон /dev/kmem идэвхжсэн. Цөм болон модулийн өгөгдөл бүхий сегментүүдийг агуулсан санах ойн хэсгүүдийг зөвхөн унших горимд тохируулсан бөгөөд кодыг гүйцэтгэхийг хориглоно. Нэмэлт сонголт бол системийг эхлүүлсний дараа цөмийн модулиудыг ачаалахыг идэвхгүй болгох явдал юм. iptables хэрэгсэл нь сүлжээний пакетуудыг шүүхэд хэрэглэгддэг. Бүтээлийн шатанд стек халих, буфер хэт ихсэх, мөр форматлах асуудлаас хамгаалах нь анхдагчаар идэвхждэг (_FORTIFY_SOURCE, -fstack-protector, -Wformat-security, relro).

Системийн менежер systemd нь үйлчилгээг удирдах болон ачаалахад ашиглагддаг. RPM болон DNF багц менежерүүд нь багцын удирдлагад зориулагдсан. SSH сервер нь анхдагчаар идэвхжээгүй байна. Түгээлтийг суулгахын тулд текст болон график горимд ажиллах боломжтой суулгагчийг суулгасан болно. Суулгагч нь бүрэн эсвэл үндсэн багц багцыг суулгах сонголтыг санал болгодог бөгөөд дискний хуваалтыг сонгох, хостын нэрийг сонгох, хэрэглэгчдийг үүсгэх интерфэйсийг санал болгодог.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх