Rilaxx tal-maniġer tas-sistema systemd 252 b'appoġġ għall-UKI (Unified Kernel Image).

Wara ħames xhur ta 'żvilupp, ġie ppreżentat ir-rilaxx tal-maniġer tas-sistema systemd 252. Il-bidla ewlenija fil-verżjoni l-ġdida kienet l-integrazzjoni ta' appoġġ għal proċess ta 'but modernizzat, li jippermettilek tivverifika mhux biss il-kernel u l-bootloader, iżda wkoll il-komponenti tal-ambjent tas-sistema bażika bl-użu ta’ firem diġitali.

Il-metodu propost jinvolvi l-użu ta’ immaġni tal-kernel unifikata UKI (Immaġni Unifikata tal-Kernel) meta tgħabbi, li tikkombina handler għat-tagħbija tal-kernel minn UEFI (UEFI boot stub), immaġni tal-kernel Linux u l-ambjent tas-sistema initrd mgħobbija fil-memorja, użata għall-inizjalizzazzjoni inizjali fl-istadju qabel l-immuntar tal-għerq FS. L-immaġni UKI hija ppakkjata bħala fajl eżekutibbli wieħed f'format PE, li jista 'jitgħabba bl-użu ta' bootloaders tradizzjonali jew imsejjaħ direttament mill-firmware UEFI. Meta tissejjaħ minn UEFI, huwa possibbli li tivverifika l-integrità u l-affidabbiltà tal-firma diġitali mhux biss tal-kernel, iżda wkoll il-kontenut tal-initrd.

Biex jiġu kkalkolati l-parametri tar-reġistri TPM PCR (Trusted Platform Module Platform Configuration Register) użati biex jimmonitorjaw l-integrità u jiġġeneraw firma diġitali tal-immaġni UKI, hija inkluża miżura ta' utilità ġdida. Iċ-ċavetta pubblika u l-informazzjoni PCR li takkumpanjaha użata fil-firma jistgħu jiġu inkorporati direttament fl-immaġni tal-boot tal-UKI (iċ-ċavetta u l-firma huma ssejvjati f'fajl PE fl-oqsma '.pcrsig' u '.pcrkey') u estratti minnha minn esterni jew utilitajiet interni.

B'mod partikolari, l-utilitajiet systemd-cryptsetup, systemd-cryptenroll u systemd-creds ġew adattati biex jużaw din l-informazzjoni, li biha tista 'tiżgura li diviżorji ta' diski kkodifikati huma marbuta ma' qalba ffirmata b'mod diġitali (f'dan il-każ, aċċess għall-partizzjoni kriptata). hija pprovduta biss jekk l-immaġni UKI tkun għaddiet verifika b'firma diġitali bbażata fuq parametri li jinsabu fit-TPM).

Barra minn hekk, hija inkluża l-utilità systemd-pcrphase, li tippermettilek tikkontrolla l-irbit ta’ diversi stadji tal-boot ma’ parametri li jinsabu fil-memorja tal-kriptoproċessuri li jappoġġjaw l-ispeċifikazzjoni TPM 2.0 (pereżempju, tista’ tagħmel iċ-ċavetta tad-deċifrar tal-partizzjoni LUKS2 disponibbli biss f’ l-immaġni initrd u jimblokka l-aċċess għaliha fi stadji aktar tard downloads).

Xi bidliet oħra:

  • Jiżgura li l-locale default huwa C.UTF-8 sakemm ma jkunx speċifikat lokale differenti fis-settings.
  • Issa huwa possibbli li titwettaq operazzjoni kompleta ta' servizz presett ("systemctl preset") matul l-ewwel boot. L-abilitazzjoni ta' presets fil-ħin tal-ibbutjar teħtieġ bini bl-għażla "-Dfirst-boot-full-preset", iżda huwa ppjanat li jkun attivat awtomatikament f'rilaxxi futuri.
  • L-unitajiet tal-ġestjoni tal-utent jinvolvu kontrollur tar-riżorsi tas-CPU, li għamilha possibbli li jiġi żgurat li s-settings CPUWeight jiġu applikati għall-unitajiet kollha tal-porzjon użati biex jaqsmu s-sistema f'partijiet (app.slice, background.slice, session.slice) biex jiġu iżolati r-riżorsi bejn servizzi għall-utenti differenti, li jikkompetu għar-riżorsi tas-CPU. CPUWeight jappoġġa wkoll il-valur "idle" biex jattiva l-mod xieraq ta' forniment tar-riżorsi.
  • F'unitajiet temporanji ("transitorji") u fl-utilità systemd-repart, is-settings li jipprevjenu huma permessi billi jinħolqu fajls drop-in fid-direttorju /etc/systemd/system/name.d/.
  • Għall-immaġini tas-sistema, il-bandiera tat-tmiem tal-appoġġ hija ssettjata, li tiddetermina dan il-fatt ibbażat fuq il-valur tal-parametru l-ġdid "SUPPORT_END=" fil-fajl /etc/os-release.
  • Miżjud "ConditionCredential=" u "AssertCredential=", li jistgħu jintużaw biex jinjoraw jew jikkraxxjaw unitajiet jekk ċerti kredenzjali ma jkunux preżenti fis-sistema.
  • Żid is-settings “DefaultSmackProcessLabel=" u "DefaultDeviceTimeoutSec=" ma' system.conf u user.conf biex jiddefinixxu l-livell ta' sigurtà default SMACK u l-ħin ta' attivazzjoni tal-unità.
  • Fis-settings “ConditionFirmware=" u "AssertFirmware=", il-kapaċità li jiġu speċifikati oqsma SMBIOS individwali ġiet miżjuda, pereżempju, biex tniedi unità biss jekk il-qasam /sys/class/dmi/id/board_name fih il-valur "Custom Bord", tista 'tispeċifika "ConditionFirmware=smbios" -field(board_name = "Custom Board")".
  • Matul il-proċess ta 'inizjalizzazzjoni (PID 1), il-kapaċità li timporta kredenzjali minn oqsma SMBIOS (Tip 11, "kordi tal-bejjiegħ OEM") żdiedet flimkien mad-definizzjoni tagħhom permezz ta' qemu_fwcfg, li tissimplifika l-provvista ta 'kredenzjali għal magni virtwali u telimina l- ħtieġa għal għodod ta 'partijiet terzi bħal cloud -init u ignition.
  • Waqt l-għeluq, il-loġika għat-tneħħija tas-sistemi tal-fajls virtwali (proc, sys) ġiet mibdula u l-informazzjoni dwar il-proċessi li jimblukkaw it-tneħħija tas-sistemi tal-fajls tiġi ssejvjata fil-log.
  • Il-filtru tas-sejħa tas-sistema (SystemCallFilter) jippermetti aċċess għas-sejħa tas-sistema riscv_flush_icache b'mod awtomatiku.
  • Il-bootloader sd-boot iżid il-kapaċità li boot f'modalità mħallta, li fiha l-kernel Linux 64-bit jibda minn firmware UEFI 32-bit. Abbiltà sperimentali miżjuda biex tapplika awtomatikament ċwievet SecureBoot minn fajls misjuba fl-ESP (partizzjoni tas-sistema EFI).
  • Għażliet ġodda ġew miżjuda mal-utilità bootctl: “—all-architectures” għall-installazzjoni ta’ binarji għall-arkitetturi EFI kollha appoġġjati, “—root =” u “—image =” biex taħdem ma’ direttorju jew immaġni ta’ disk, “—install-source =" għad-definizzjoni tas-sors għall-installazzjoni, "-efi-boot-option-description=" biex tikkontrolla l-ismijiet tad-dħul tal-boot.
  • Il-kmand 'list-automounts' ġie miżjud mal-utilità systemctl biex turi lista ta' direttorji mmuntati awtomatikament u l-għażla "--image=" biex tesegwixxi kmandi fir-rigward tal-immaġni tad-diska speċifikata. Miżjud għażliet "--state=" u "--type=" għall-kmandi 'show' u 'status'.
  • systemd-networkd żied għażliet "TCPCongestionControlAlgorithm=" biex tagħżel l-algoritmu tal-kontroll tal-konġestjoni TCP, "KeepFileDescriptor="" biex issalva d-deskrittur tal-fajl tal-interfaces TUN/TAP, "NetLabel=" biex tissettja NetLabels, "RapidCommit=" biex tħaffef il-konfigurazzjoni permezz ta' DHCPv6 (RFC 3315). Il-parametru “RouteTable=" jippermetti li jiġu speċifikati l-ismijiet tat-tabelli tar-routing.
  • systemd-nspawn jippermetti l-użu ta' mogħdijiet relattivi tal-fajls fl-għażliet "--bind=" u "--overlay=". Żid l-appoġġ għall-parametru 'rootidmap' mal-għażla "--bind=" biex torbot l-ID tal-utent tal-għeruq fil-kontenitur mas-sid tad-direttorju mmuntat fuq in-naħa tal-host.
  • systemd-resolved juża OpenSSL bħala backend tal-kriptaġġ tiegħu b'mod awtomatiku (l-appoġġ gnutls jinżamm bħala għażla). Algoritmi DNSSEC mhux appoġġjati issa huma ttrattati bħala mhux sikuri minflok ma jirritornaw żball (SERVFAIL).
  • systemd-sysusers, systemd-tmpfiles u systemd-sysctl jimplimentaw il-kapaċità li jittrasferixxu s-settings permezz ta' mekkaniżmu ta' ħażna ta' kredenzjali.
  • Żid il-kmand 'compare-versions' ma' systemd-analyse biex iqabbel is-sekwenzi man-numri tal-verżjoni (simili għal 'rpmdev-vercmp' u 'dpkg --compare-versions'). Żid il-kapaċità li jiġu ffiltrati l-unitajiet bil-maskra mal-kmand 'systemd-analyze dump'.
  • Meta tagħżel modalità ta 'rqad f'diversi stadji (sospensjoni-imbagħad-ibernazzjoni), il-ħin mgħoddi fil-modalità standby issa jintgħażel abbażi tat-tbassir tal-ħajja tal-batterija li fadal. It-tranżizzjoni immedjata għall-modalità sleep isseħħ meta jibqa 'inqas minn 5% ta' ċarġ tal-batterija.
  • Modalità ta' output ġdida "-o short-delta" ġiet miżjuda ma' 'journalctl', li turi d-differenza fil-ħin bejn messaġġi differenti fir-reġistru.
  • systemd-repart iżid appoġġ għall-ħolqien ta 'diviżorji bis-sistema tal-fajls Squashfs u diviżorji għal dm-verity, inkluż b'firem diġitali.
  • Żid is-setting "StopIdleSessionSec=" ma' systemd-logind biex tintemm sessjoni inattiva wara timeout speċifikat.
  • Systemd-cryptenroll żied għażla "--unlock-key-file=" biex estratt iċ-ċavetta tad-decryption minn fajl aktar milli tħeġġeġ lill-utent.
  • Issa huwa possibbli li titħaddem l-utilità systemd-growfs f'ambjenti mingħajr udev.
  • systemd-backlight tejjeb l-appoġġ għal sistemi b'ħafna karti tal-grafika.
  • Il-liċenzja għall-eżempji tal-kodiċi pprovduti fid-dokumentazzjoni nbidlet minn CC0 għal MIT-0.

Bidliet li jiksru l-kompatibilità:

  • Meta tiċċekkja n-numru tal-verżjoni tal-kernel bl-użu tad-direttiva ConditionKernelVersion, issa qed jintuża paragun sempliċi ta' string fl-operaturi '=' u '!=', u jekk l-operatur tal-paragun ma jkunx speċifikat xejn, it-tqabbil tal-glob-mask jista' jintuża bl-użu tal- karattri '*', '?' U '[', ']'. Biex tqabbel il-verżjonijiet tal-istil stverscmp(), uża l-operaturi '<', '>', '<=' u '>='.
  • It-tikketta SELinux użata biex tiċċekkja l-aċċess minn fajl unit issa tinqara fil-ħin li jitgħabba l-fajl, aktar milli fil-ħin tal-kontroll tal-aċċess.
  • Il-kundizzjoni "ConditionFirstBoot" issa hija attivata fuq l-ewwel boot tas-sistema biss direttament fl-istadju tal-boot u tirritorna "falza" meta ssejjaħ unitajiet wara li l-boot ikun komplut.
  • Fl-2024, systemd qed tippjana li tieqaf tappoġġja l-mekkaniżmu li jillimita r-riżorsi cgroup v1, li kien deprecated fir-rilaxx tas-systemd 248. L-amministraturi huma avżati biex jieħdu ħsieb qabel il-migrazzjoni tas-servizzi bbażati fuq cgroup v2 għal cgroup v1. Id-differenza ewlenija bejn cgroups v2 u v1 hija l-użu ta 'ġerarkija cgroups komuni għat-tipi kollha ta' riżorsi, minflok ġerarkiji separati għall-allokazzjoni tar-riżorsi tas-CPU, għar-regolazzjoni tal-konsum tal-memorja, u għall-I/O. Ġerarkiji separati jwasslu għal diffikultajiet fl-organizzazzjoni tal-interazzjoni bejn il-handlers u għal spejjeż addizzjonali tar-riżorsi tal-kernel meta jiġu applikati regoli għal proċess referenzjat f'ġerarkiji differenti.
  • Fit-tieni nofs tal-2023, qed nippjanaw li ntemmu l-appoġġ għall-ġerarkiji tad-direttorju maqsum, fejn /usr huwa mmuntat separatament mill-għerq, jew /bin u /usr/bin, /lib u /usr/lib huma separati.

Sors: opennet.ru

Żid kumment