Systemd 260: TPM2, sandboxing i nove mogućnosti u Linuxu

Zadnje ažuriranje: 17 travnja 2026
Autor: Isaac
  • Systemd 260 trajno uklanja podršku za System V skripte i zahtijeva izvorne jedinice za sve usluge.
  • Ova verzija jača integraciju s TPM2, uključujući upravljanje SRK-om i uslužne programe kao što su tpm2_id i systemd-pcrextend.
  • Mogućnosti sandboxinga, kontrola mreže i resursi po usluzi značajno su prošireni, uz nove opcije za kontejnere i privremena računala.
  • Projekt uključuje specifičnu dokumentaciju za AI agente i nove potpomognute tijekove rada za pregled kako bi se poboljšala kvaliteta doprinosa.

Što je novo u systemd 260 s TPM2 i sandboxingom

S dolaskom sistemd 260 Linux distribucije čine još jedan važan korak prema modernijem, sigurnijem ekosustavu usmjerenom prema cloud okruženjima, virtualizaciji i automatizaciji. Ova verzija ne samo da usavršava detalje: uvodi značajne promjene u pokretanju, upravljanju uslugama, umrežavanju, korištenju TPM2 za integritet i enkripciju te mogućnostima sandboxinga na razini pogona.

Istovremeno, projekt jača svoju dokumentaciju i način rada s agenti umjetne inteligencijeTo jasno pokazuje da je systemd ključni stup na koji se povezuje sve više alata za razvoj i praćenje. Ako upravljate Linux sustavima na poslužiteljima, u oblaku, na korporativnim računalima ili u laboratorijima, vrijedi odvojiti trenutak za pregled svih ovih novih značajki kako biste planirali ažuriranja i prilagodbe konfiguracije.

SystemRescue sustav spašavanja
Povezani članak:
SystemRescue: ultimativni sustav za spašavanje vašeg računala

Konačni oproštaj od System V i potpuna ovisnost o izvornim diskovima

Jedna od najupečatljivijih promjena u systemd 260 je potpuno povlačenje podrške za skripte System VKlasični proces pokretanja temeljen na /etc/init.d godinama je bio u procesu postupnog ukidanja, ali sada efektivno nestaje iz systemd koda.

To znači da su komponente odgovorne za premošćivanje između SysV skripti i izvornih jedinica uklonjene: systemd-rc-local-generator, rc-local.service, systemd-sysv-generator i systemd-sysv-install Prestaju postojati. Kao posljedica toga, bilo koja usluga koja još uvijek ovisi o tim naslijeđenim mehanizmima jednostavno se neće pokrenuti na sustavima koji usvajaju systemd 260.

Tijekom procesa čišćenja, nekoliko opcija izgradnje Mesona također je označeno kao zastarjelo ili uklonjeno. Zastavice -Drc-local=, -Dsysvinit-path= i -Dsysvrcnd-path= neki su potisnuti u prtljažnik sjećanja, dok drugi poput -Dintegracijski-testovi= i -Dcryptolib= Uklanjaju se izravno. To je jasna poruka: sve mora proći kroz izvorne jedinice i modernu systemd infrastrukturu.

Za mnoge europske infrastrukture koje se još uvijek oslanjaju na starije komponente, ova promjena zahtijeva pregled internih usluga, prilagođenih skripti i naslijeđenih implementacija. Migracija na dobro definirane datoteke jedinica više se ne preporučuje samo; obavezna je ako želite nastaviti s pokretanjem usluga na distribucijama koje integriraju systemd 260.

Viši zahtjevi za kernel i fokus na trenutna okruženja

Nova verzija podiže ljestvicu za kernel: od sada nadalje, Minimalna podržana verzija Linuxa je 5.10ostavljajući za sobom vrlo stare grane poput 5.4. Osim toga, projekt ukazuje na to da je idealno raditi na kernel 5.14 ili novijii posebno preporučuje 6.6 serija kako biste iskoristili sve dostupne značajke.

Ovo povećanje zahtjeva obično nije problem u modernim distribucijama, ali može zakomplicirati stvari u vrlo konzervativnim okruženjima ili u ugrađenim rješenjima koja se održavaju dugi niz godina. Prije nadogradnje na systemd 260, preporučljivo je provjeriti koja se jezgra koristi, posebno u Europski podatkovni centri s dugoročnim implementacijama ili u prilagođenim slikama.

Na suprotnom kraju spektra, distribucije s postupnim izdanjima poput Arch Linuxa ili openSUSE Tumbleweeda, vrlo popularne među onima koji žele najnovije značajke, obično brzo uključuju i nove kernele i nove grane systemda. Druge, poput Fedore, održavaju određeni stupanj stabilnosti u glavnoj verziji systemda tijekom životnog ciklusa svakog izdanja, što omogućuje malo više vremena za planiranje migracija.

TPM2, integritet pokretanja i napredna podrška za SRK

Jedno od područja gdje se systemd najviše razvija je njegova integracija s TPM2 (Modul pouzdane platforme 2.0)Ovaj čip, sve češći u modernim UEFI matičnim pločama i hardveru srednje i visoke klase, omogućuje vam povezivanje tajni sa stanjem sustava, mjerenje faza pokretanja i otključavanje šifriranih volumena automatski kada je okruženje očekivano.

Systemd 260 dodatno poboljšava ovu integraciju dodavanjem alata i usluga koje pokrivaju različite faze procesa pokretanja. Ključna komponenta je... systemd-tpm2-setup, odgovoran za pripremu infrastrukture oko Korijenski ključ pohrane (SRK) TPM-a. Ovaj korijenski ključ služi kao kriptografska osnova za sigurnu komunikaciju s čipom i sigurno pohranjivanje drugih tajni.

Tijekom pokretanja mogu se razlikovati dvije faze: vrlo rana u initrd-u i druga u korijenskom sustavu. U prvoj, usluga pod nazivom „Rano postavljanje TPM SRK-a“ provjerava ima li TPM već pohranjeni SRK i, ako ne postoji, stvara ga i privremeno ga čini dostupnim pod /run/systemd/tpm2-srk-public-key.*Kasnije, nakon što se stvarni datotečni sustav montira, usluga će konsolidirati SRK i provjeriti je li ključ pohranjen u /var/lib/systemd/tpm2-srk-public-key.pem Podudara se s onim u TPM-u.

  AVX10: Intelov pokušaj optimizacije performansi jezgre

U dobro konfiguriranim scenarijima vide se ovakvi unosi u dnevnik. "SRK je već pohranjen u TPM-u" i poruke koje pokazuju da se SRK otisak podudara s očekivanim. S druge strane, ako okruženje nije usklađeno (na primjer, u postavkama s Yoctom ili na pločama poput Raspberry Pija sa SPI TPM-om i prilagođenim metodama pokretanja s U-Bootom i izmjerenim pokretanjem), mogu se pojaviti situacije u kojima systemd ne uspijeva stvoriti ove datoteke pod /var/lib/systemd, što dovodi u sumnju je li SRK ispravno konfiguriran.

Kada se stanje TPM-a promijeni, particije su modificirane ili je tijek pokretanja promijenjen, povezana politika možda više neće biti primjenjiva. U takvim slučajevima, neki održavatelji preporučuju obrišite TPM utor ili pravilo i ponovno registrirajte ključ, slijedeći postupke slične onima opisanim u vodičima za šifriranje diska s TPM-om u okruženjima kao što je openSUSE, gdje je detaljno opisano kako ponovno stvoriti PCR politiku i ponovno povezati otključavanje volumena.

Osim SRK-a, još jedno praktično poboljšanje je uvođenje internog uslužnog programa u udev pod nazivom tpm2_idOvaj integrirani alat se pokreće kada sustav otkrije TPM2 uređaj i Automatski izdvaja identifikator proizvođača i model.To pojednostavljuje popis sigurnosnog hardvera, što je vrlo korisno u javnim upravama, reguliranim tvrtkama ili kritičnim infrastrukturama gdje je potrebno točno znati koji su TPM moduli raspoređeni.

Integracija s infrastrukturom za mjerenje startupa također je pojačana specifičnim jedinicama kao što su systemd-pcrextendkoji bilježe događaje poput „enter-initrd“, „leave-initrd“, „sysinit“ ili „ready“ u različitim PCR-ima (na primjer, PCR 11). Ovaj niz proširenja omogućuje TPM-u da akumulira kriptografski provjerljiv zapis toka pokretanja, koji se zatim može koristiti za politike pouzdanog pokretanja ili za UKI (Ujedinjene slike jezgre) koji potvrđuju status uređaja prije otpuštanja tipki.

Sigurnosne mjere i sandboxing usluga sa systemd-om

Systemd ne samo da pokreće procese: nudi i vrlo opsežan skup direktive o sandboxu izolirati usluge i ograničiti štetu u slučaju kompromitiranja. Ovaj pristup "dubinske obrane" oslanja se na cgrupe, imenske prostore, mogućnosti kernela i filtere sistemskih poziva (seccomp).

Za procjenu statusa određene usluge, systemd uključuje alat systemd-analiza sigurnostiKada se pokrene, generira izvješće s indeksom izloženosti na skali od 0 do 10, gdje je niža vrijednost bolja. Izvješće analizira omogućene ili nedostajuće zaštite (izolacija mreže, pristup datotečnom sustavu, uređaji itd.), što olakšava otkrivanje ranjivosti. koje su prilagodbe potrebne i provjerite poboljšavaju li uvedene promjene doista rezultat.

Umjesto uređivanja izvorne jedinice - koja bi se izgubila u budućim ažuriranjima paketa - preporučuje se stvaranje nadglasati en /etc/systemd/system/mi-servicio.service.d/ s datotekom, na primjer, sandbox.confNakon izmjene, jednostavno ponovno učitajte konfiguraciju s systemctl daemon-reload i ponovno pokrenite uslugu kako bi nova ograničenja stupila na snagu.

Na razini datotečnog sustava, jedna od najvažnijih opcija je ZaštitniSustav=Vrijednosti kao što su strict, full o true Montiraju različite dijelove stabla u načinu rada samo za čitanje. Uobičajena praksa, kada je to moguće, je korištenje ProtectSystem=strogoZbog toga su /usr, /boot, /efi i /etc dostupni samo za čitanje za uslugu. Ako aplikacija treba pisati u određene direktorije, to joj je dopušteno pomoću ČitajPišiPutnje=/putanja u jedinstvu.

Za dodatno poboljšanje privatnosti, preporučuje se i ograničavanje pristupa korisničkim direktorijima putem ProtectHome=truešto sprječava servis da čita /home, /root ili /run/user. Nadalje, PrivatnoVrijeme=true Stvara izolirani prostor /tmp i /var/tmp, sprječavajući unakrsnu vidljivost privremenih datoteka između procesa.

Na uređajima, PrivatniUređaji=true Skriva stvarno /dev stablo i zamjenjuje ga minimalnim skupom sigurnih pseudo-uređaja (null, zero, random itd.). Ako uređaj treba određeni uređaj (na primjer, serijski port ili blok diska), može se dodijeliti pomoću DeviceAllow=/dev/xxx rw ili u načinu rada samo za čitanje.

Mreža je također ključni vektor. S PrivatnaMreža=true Stvara se izolirani mrežni imenski prostor, ostavljajući samo povratnu petlju; usluga neće vidjeti fizička sučelja i neće moći komunicirati s vanjskim svijetom. Alternativno, možete ograničiti koje obitelji adresa može koristiti tako da RestrictAddressFamilies=dopuštajući samo AF_INET i AF_INET6 za IPv4/IPv6, AF_UNIX za lokalne utičnice ili čak none potpunu japanizaciju mrežnih mogućnosti.

Što se tiče privilegija, direktiva NemaNovihPrivileges=true Jedan je od najmoćnijih: sprječava proces da stekne nove privilegije putem setuid binarnih datoteka ili promjena mogućnosti. Ukratko, čak i ako servis izvršava ranjivi kod, ne bi trebao moći eskalirati do roota putem tradicionalnih mehanizama. U kombinaciji s CapabilityBoundingSet=Definiranjem točnog popisa dopuštenih mogućnosti (npr. samo CAP_NET_BIND_SERVICE za slušanje na portovima s niskim naponima), površina napada je minimizirana.

  Najbolji programi za oporavak izbrisanih datoteka

Da idemo još dalje, systemd omogućuje filtriranje sistemskih poziva s SystemCallFilter=Umjesto ručnog održavanja popisa sistemskih poziva, koriste se unaprijed definirane grupe, kao što su @system-service, @network-io, @basic-io ili zabraniti grupe poput ~@privileged. S systemd-analyze syscall-filter Moguće je provjeriti koji specifični pozivi pripadaju svakoj grupi. To omogućuje izradu vrlo ograničenog profila izvršavanja, slično onome što bi ponudio namjenski sandbox.

Druge relevantne prilagodbe su ZaštititePodešavanjeJezgre=true, što blokira modifikaciju parametara kernela u /proc/sys i /sys, ZaštititeModuleJezgre=truešto sprječava utovar ili istovar modula, Zaštita zapisnika jezgre = istinašto sprječava čitanje registara kernela i ZaštitneKontrolneGrupe=truešto blokira pisanje u hijerarhiju cgroups. Sve se to besprijekorno kombinira s novim mogućnostima izolacije korisnika kao što su PrivatniKorisnici=puno, koja je u verziji 260 ažurirana kako bi mapirala cijeli raspon korisničkih ID-ova, eliminirajući prethodna zaobilazna rješenja potrebna za okruženja s ugniježđenim systemd-om.

PrivateUsers, xaccess i kontrole pristupa novim uređajima

Mehanizam Privatni korisniciDizajniran za pokretanje usluga u izoliranom prostoru korisničkog ID-a, konsolidiran je u systemd 260. Opcija PrivatniKorisnici=puno Sada mapira cijeli raspon identifikatora, pojednostavljujući stvari u kontejnerima i na sustavima s ugniježđenim instancama systemd-a temeljenim na starijim verzijama (prije 257). Ovo poboljšanje eliminiralo je hakove koji su se koristili za otkrivanje tih starijih instanci.

Paralelno, komponente kao što su systemd-logind i systemd-udevd Oni pokreću koncept xaccessOvaj mehanizam nadopunjuje klasičnu logiku pristupxaccess omogućuje pristup određenim uređajima (npr. audio ili video) korisnicima s grafičkim sesijama u prvom planu na lokalnom računalu. Dozvole se mogu delegirati xaccessu. udaljeni korisnici sa posebno označenim sesijamatako da, na primjer, korisnik spojen putem udaljene radne površine može pristupiti lokalnim GPU uređajima za renderiranje bez davanja širokih dozvola cijelom sustavu.

Konfiguracija ovih sesija uključuje varijable okruženja izložene putem PAM-a, konkretno PAMXDG_SESSION_EXTRA_DEVICE_ACCESS=To omogućuje definiranje koji specifični uređaji spadaju u ovaj okvir. To je pristup koji je u velikoj mjeri usklađen s regulatornim zahtjevima i zahtjevima zaštite podataka Europske unije, koji zahtijevaju granularnost i sljedivost u pristupu osjetljivoj hardverskoj opremi.

mstack, systemd-mstack i novi alati za kontejnere

U području kontejnerizacije, systemd 260 uvodi funkcionalnost mstock i pridruženu naredbu, systemd-mstackIdeja iza mstack-a je omogućiti definiranje OverlayFS na temelju strukture posebnog direktorija pod nazivom .mstack/, koji slijedi određenu specifikaciju za organiziranje svojih slojeva.

Novi alat naredbenog retka, systemd-mstack, olakšava interaktivni rad s ovim "stekovima" datotečnog sustava, dodajući fleksibilnost pri postavljanju slojevitih okruženja za kontejnere ili visoko izolirane usluge. Ova funkcionalnost je također povezana s poboljšanjima u systemd-importd, koji proširuje svoju podršku za Preuzimanje i upravljanje OCI slikamaTo pojačava ulogu systemda kao mehanizma za kontejnerizaciju i sandboxing, što je vrlo uobičajeno kod europskih pružatelja usluga u oblaku i modernih hosting platformi.

Mreža: Integracija s ModemManagerom i nove mogućnosti performansi

Na mrežnom sloju, systemd-networkd nastavlja dobivati ​​na važnosti. Jedna od njegovih značajnih novih značajki je njegova integracija s ModemManagerom korištenjem protokola "jednostavno povezivanje"To vam omogućuje upravljanje modemima i mobilnim vezama izravno iz mreže bez oslanjanja na vanjske alate.

Kako bi se podržao ovaj tok, dodaje se novi odjeljak. u konfiguracijske datoteke, s parametrima kao što su APN=, AllowedAuthenticationMechanisms=, User=, Password=, IPFamily=, AllowRoaming=, PIN=, OperatorId=, RouteMetric= y UseGateway=To olakšava implementaciju u ruralna područja ili okruženja s povezivošću temeljenom na mobilnim mrežama, vrlo prisutna na određenim područjima Europe gdje nema uvijek optičkih vlakana ili kvalitetnih fiksnih linija.

Što se tiče performansi, datoteke .link systemd-networkd uključuje nove opcije posebno za Ethernet uređaje. Među njima su: ScatterGather, ScatterGatherFragmentList, TCPECNSegmentationOffload, TCPMangleIdSegmentationOffload, GenericReceiveOffloadList i GenericReceiveOffloadUDProvingOve opcije omogućuju fino podešavanje preusmjeravanja posla na hardver i upravljačke programe, što je ključno u korporativnim mrežama, podatkovnim centrima i pružateljima usluga koji trebaju minimizirati svaku milisekundu latencije.

Nadalje, sučelja Varlink i JSON systemd-networkd sada može prijaviti IP adrese u formatu čitljivo ljudima (nizovi znakova) uz zadržavanje reprezentacije kao niza cijelih brojeva. To pojednostavljuje integraciju s nadzornim pločama za praćenje, administratorskim skriptama ili alatima trećih strana koji ne žele raditi s neintuitivnim numeričkim formatima.

Prenosivost usluga, kratkotrajni virtualni strojevi i neprivilegirane usluge

Komad systemd-prijenosniSoftver odgovoran za upravljanje "prijenosnim" uslugama pakiranim u slike dobiva vrlo zanimljivu mogućnost: može se pokretati kao usluga na razini korisnikaTo znači da neprivilegirani korisnici, u svojoj normalnoj sesiji, mogu pokretati i upravljati prenosivim servisima unutar vlastitog prostora bez pribjegavanja sudo naredbi ili povišenim privilegijama.

Nadalje, počevši od ove verzije, prijenosna može generirati pravila i uspostaviti sliku povezanu s prenosivom uslugomTo sprječava izmjenu slike bez ponovnog pričvršćivanja. Korisnici tako mogu postaviti samostalna okruženja s dodatnim jamstvima nepromjenjivosti, što je prilično atraktivno za laboratorije, razvojna okruženja i testne sandboxe.

  Intel Core i9 i do 64 GB RAM-a: mini računalo za manje od 500 eura za igrače i kreatore sadržaja.

Nadalje, systemd-vmspawn —alat dizajniran za pokretanje virtualnih strojeva na integrirani način sa systemd-om — proširuje svoje mogućnosti registracije u systemd-machined unutar korisničke sesijeTakođer uvodi opciju –efemerno za stvaranje efemernih strojeva koji se uništavaju na kraju upotrebe. To se savršeno uklapa u CI/CD cjevovode, virtualne učionice ili europske obrazovne platforme koje zahtijevaju brzo i kontrolirano podizati i vući strojeve.

Precizno podešena kontrola CPU-a, memorije i raspoređivanja pomoću SCHED_EXT i THP

Systemd 260 također se bavi kontrolom performansi s novim pravilima. Opcija usluge PravilaZakazivanjaProcesora= sada prihvatite vrijednost ext, što aktivira planer SCHED_EXTOvaj alternativni planer otvara vrata eksperimenti s različitim politikama planiranja prema standardima kernela, nešto što bi moglo biti zanimljivo u istraživačko-razvojnim laboratorijima ili u visoko specijaliziranim implementacijama.

U području memorije pojavljuje se MemorijaTHP=što omogućuje upravljanje korištenjem Prozirne ogromne stranice (THP) po usluzi. Umjesto globalnog ponašanja za cijeli sustav, može se odlučiti treba li određena jedinica iskoristiti THP, onemogućiti ga ili usvojiti međunačine. Za kritične primjene u bankarstvu, osiguranju ili javnoj upravi, ova granularna kontrola može napraviti razliku u latencija, potrošnja memorije i performanse.

Nove naredbe u systemctl-u i proširena upotreba Varlinka

Dobro poznati komandos systemctl osvaja novu narudžbu: označeno kao postavljeno u red čekanjaOva radnja interno poziva D-Bus metodu. StaviOznačeneZadaćeURed() i omogućuje rad s redovima unaprijed odabranih poslova i usluga. Iako se ovo može činiti kao sporedan detalj, ključno je za operativne timove koji orkestriraju velike serverske farme To je još jedan alat za poboljšanje tijeka rada implementacije i automatizacije.

Paralelno s tim, projekt nastavlja širiti korištenje Varlink kao komunikacijski mehanizam između komponenti. Mnogi dijelovi systemd-a pružaju stabilna Varlink sučelja koja olakšavaju integraciju s vanjskim alatima, prilagođenim nadzornim pločama ili agentima za praćenje kojima je potreban strukturirani pristup sistemskim informacijama.

Polja za identifikaciju sustava i korisničko iskustvo

Zanimljiva, ali korisna nova značajka za neke distribucije je uvođenje polja FANCY_NAME= u arhivu /etc/os-releaseOvo polje nalikuje PRETTY_NAME, ali dopušta ANSI nizovi i složeniji Unicode znakoviZahvaljujući tome, određene distribucije i izdanja mogu se predstaviti s upečatljivijim ili prepoznatljivijim imenima.

Vrijednost FANCY_NAME može se vidjeti putem systemd upravitelja, korištenjem systemd-naziv-domaćina ili prilikom savjetovanja hostnamectlIako je riječ o maloj promjeni, u desktop okruženjima i grafičkim administratorskim panelima može biti korisna za identificirati sustav na prvi pogled kojim se upravlja, posebno kada se radi o mnogim izvedenim varijantama.

Posebna dokumentacija za AI agente i tijek rada potpomognutog pregleda

Jedan od najzanimljivijih znakova u kojem smjeru ide razvoj Systemd-a je pojava dokumentacije posebno usmjerene na agenti umjetne inteligencijeDatoteka je uključena u repozitorij AGENTS.mddizajniran za alate za analizu koda i programerske asistente, a kako su neki primijetili tehnološki vodiči, bolje razumjeti arhitekturu, stil, tijek razvoja i smjernice za doprinos projekta.

Ovaj dokument opisuje komponente, putove izgradnje, kako pokrenuti testove i integraciju te smjernice za generiranje prihvatljivih zakrpa. Namjera je da AI agenti koji pregledavaju kod ili generiraju promjene rade s solidan kontekst o tome kako je systemd organiziransmanjenje pogrešaka i pogrešno usmjerenih prijedloga.

Pored AGENTS.md pojavljuje se datoteka pod nazivom CLAUDE.mdOvo se eksplicitno odnosi na prvi i fokusira se na vođenje alata Claude Code, jednog od najčešće korištenih razvojnih asistenata temeljenih na umjetnoj inteligenciji. Na taj način projekt eksplicitno uključuje umjetnu inteligenciju u svoj razvojni ciklus.

Osim toga, uključena je i konfiguracijska datoteka. claude-review.ymlgdje je definirano kako treba pregledati proces analize zahtjeva za promjenama (pull requests), uz pomoć Claude Codea. U tom kontekstu, doprinosi koji su koristili umjetnu inteligenciju moraju uključivati oznake otkrivanja kao Co-developed-by u zakrpama, ostavljajući dokaz da je automatizirani alat sudjelovao u stvaranju koda.

Sa svim ovim promjenama - čišćenjem naslijeđene podrške, poboljšanjima sandboxa, poboljšanjima TPM2 i SRK-a, naprednom mrežnom integracijom, novim mogućnostima prenosivosti i dokumentacijom dizajniranom za inteligentne agente - sistemd 260 To jača njegovu središnju ulogu u modernom Linux ekosustavu. Za administratore i razvojne programere u Španjolskoj i Europi, neposredni izazov uključuje pregled kernela, prilagodbu konfiguracija pokretanja i usluga te iskorištavanje tih značajki za izgradnju sigurnijih, automatiziranih infrastruktura usklađenih s trenutnom upotrebom sustava.