Às deidh còig mìosan de leasachadh air a thaisbeanadh sgaoileadh manaidsear siostam 243 siostam. Am measg nan innleachdan, is urrainn dhuinn toirt fa-near amalachadh inneal-làimhseachaidh ann am PID 1 airson cuimhne ìosal san t-siostam, taic airson na prògraman BPF agad fhèin a cheangal airson trafaic aonad sìolaidh, grunn roghainnean ùra airson systemd-networkd, modh airson sùil a chumail air leud-bann an lìonraidh. eadar-aghaidh, a’ comasachadh gu bunaiteach air siostaman 64-bit àireamhan PID 22-bit an àite 16-bit, gluasad gu rangachd cgroups aonaichte, in-ghabhail ann an systemd-network-generator.
Atharraichean mòra:
Chaidh aithne air comharran a ghineadh le kernel mu dheidhinn taobh a-muigh cuimhne (Out-Of-Memory, OOM) a chuir ris an inneal-làimhseachaidh PID 1 gus aonadan a tha air crìoch caitheamh cuimhne a ruighinn gu stàite sònraichte leis a’ chomas roghnach toirt orra crìochnachadh. no stad;
Airson faidhlichean aonad, paramadairean ùra IPIngressFilterPath agus
IPEgressFilterPath, a leigeas leat prògraman BPF a cheangal ri luchd-làimhseachaidh neo-riaghailteach gus pacaidean IP a tha a’ tighinn a-steach agus a-mach a shìoladh air an cruthachadh le pròiseasan co-cheangailte ris an aonad seo. Leigidh na feartan a tha san amharc dhut seòrsa de bhalla-teine a chruthachadh airson seirbheisean systemd. Eisimpleir sgrìobhadh criathrag lìonra sìmplidh stèidhichte air BPF;
Chaidh an àithne “glan” a chuir ris a ’ghoireas systemctl gus an tasgadan, faidhlichean runtime, fiosrachadh inbhe agus clàran log a dhubhadh às;
systemd-networkd a’ cur taic ri eadar-aghaidh lìonra MACsec, nlmon, IPVTAP agus Xfrm;
bidh systemd-networkd a’ cur an gnìomh rèiteachadh fa-leth de chruachan DHCPv4 agus DHCPv6 tro na h-earrannan “[DHCPv4]” agus “[DHCPv6]” anns an fhaidhle rèiteachaidh. Chuir sinn ris an roghainn RoutesToDNS gus slighe air leth a chuir ris an t-seirbheisiche DNS a tha air a shònrachadh anns na paramadairean a fhuaireadh bhon t-seirbheisiche DHCP (gus an tèid trafaic chun DNS a chuir tron aon cheangal ris a’ phrìomh shlighe a fhuaireadh bhon DHCP). Chaidh roghainnean ùra a chur ris airson DHCPv4: MaxAttempts - an àireamh as motha de dh’ iarrtasan airson seòladh fhaighinn, BlackList - liosta dhubh de luchd-frithealaidh DHCP, SendRelease - cuir an comas teachdaireachdan DHCP RELEASE a chuir nuair a thig an seisean gu crìch;
Chaidh òrdughan ùra a chur ris a’ ghoireas systemd-analyze:
"Systemd-sgrùdadh clàr-ama" - parsadh ùine agus tionndadh;
"Systemd-sgrùdadh ùine" - mion-sgrùdadh agus atharrachadh amannan ùine;
“suidheachadh siostamd-anailis” - parsadh agus deuchainn abairtean ConditionXYZ;
“systemd-analyze exit-status” - parsadh agus tionndadh còdan fàgail bho àireamhan gu ainmean agus a chaochladh;
"systemd-analyze unit-files" - Liosta a h-uile slighe faidhle airson aonadan agus ailias aonadan.
Roghainnean SuccessExitStatus, RestartPreventExitStatus agus
Tha RestartForceExitStatus a-nis a’ toirt taic chan e a-mhàin còdan tilleadh àireamhach, ach cuideachd an aithnichearan teacsa (mar eisimpleir, “DATAERR”). Chì thu liosta nan còdan a chaidh a shònrachadh do aithnichearan a’ cleachdadh an àithne “systemd-analyze exit-status”;
Chaidh an àithne “sguab às” a chuir ris a’ ghoireas networkctl gus innealan lìonra mas-fhìor a dhubhadh às, a bharrachd air an roghainn “-stats” gus staitistig inneal a thaisbeanadh;
Chaidh suidheachaidhean SpeedMeter agus SpeedMeterIntervalSec a chur ri networkd.conf airson bho àm gu àm a bhith a’ tomhas trochur eadar-aghaidh lìonra. Chithear staitistig a gheibhear bho na toraidhean tomhais ann an toradh an àithne 'inbhe networkctl';
Chaidh inneal-gineadair systemd-network-gineadair ùr a chuir ris airson faidhlichean a ghineadh
.network, .netdev agus .link stèidhichte air roghainnean IP a chaidh seachad nuair a chaidh a chuir air bhog tro loidhne-àithne Linux kernel ann an cruth roghainnean Dracut;
Tha an luach sysctl “kernel.pid_max” air siostaman 64-bit a-nis air a shuidheachadh gu bunaiteach gu 4194304 (PIDs 22-bit an àite 16-bits), a lughdaicheas an coltas gum bi tubaistean ann nuair a bhios iad a’ sònrachadh PIDn, ag àrdachadh a’ chrìoch air an àireamh de bhuaidhean aig an aon àm. pròiseasan ruith, agus tha buaidh mhath aige air tèarainteachd. Dh’ fhaodadh an t-atharrachadh leantainn gu cùisean co-chòrdalachd, ach cha deach cùisean mar sin aithris ann an cleachdadh fhathast;
Gu gnàthach, bidh an ìre togail ag atharrachadh gu rangachd aonaichte cgroups-v2 (“-Ddefault-hierarchy= unified”). Roimhe sin, b’ e am modh tar-chinealach am fear bunaiteach (“-Ddefault-hierarchy=hybrid”);
Tha giùlan sìoltachan gairm an t-siostaim (SystemCallFilter) air atharrachadh, a tha, a thaobh gairm siostam toirmisgte, a-nis a’ cur crìoch air a’ phròiseas gu lèir, seach snàithleanan fa leth, leis gum faodadh crìoch a chuir air snàithleanan fa leth duilgheadasan nach gabh a thuigsinn. Chan eil na h-atharrachaidhean a’ buntainn ach ma tha Linux kernel 4.14+ agus libseccomp 2.4.0+ agad;
Tha comas aig prògraman neo-leasaichte pacaidean ICMP Echo (ping) a chuir le bhith a’ suidheachadh an sysctl “net.ipv4.ping_group_range” airson an raon iomlan de bhuidhnean (airson a h-uile pròiseas);
Gus am pròiseas togail a luathachadh, chaidh stad a chuir air gineadh leabhraichean-làimhe duine gu bunaiteach (gus làn sgrìobhainnean a thogail, feumaidh tu an roghainn “-Dman = true” no “-Dhtml = true” a chleachdadh airson leabhraichean-làimhe ann an cruth html). Gus am bi e nas fhasa na sgrìobhainnean fhaicinn, tha dà sgriobt air an gabhail a-steach: build/man/man agus build/man/html airson leabhraichean-làimhe inntinneach a chruthachadh agus ro-shealladh;
Gus ainmean fearainn a phròiseasadh le caractaran bho aibideil nàiseanta, tha an leabharlann libidn2 air a chleachdadh gu bunaiteach (gus libidn a thilleadh, cleachd an roghainn “-Dlibidn = true”);
Chaidh stad a chuir air taic don fhaidhle so-ghnìomhaichte /usr/sbin/halt.local, a thug seachad gnìomh nach deach a sgaoileadh gu farsaing ann an sgaoilidhean. Gus cur air bhog òrdughan a chuir air dòigh nuair a thèid an dùnadh sìos, thathas a’ moladh sgriobtaichean a chleachdadh ann an /usr/lib/systemd/system-shutdown/ no aonad ùr a mhìneachadh a tha an urra ri final.target;
Aig an ìre mu dheireadh den dùnadh, bidh systemd a-nis gu fèin-ghluasadach ag àrdachadh ìre an loga anns an sysctl “kernel.printk”, a dh ’fhuasgladh an duilgheadas le bhith a’ nochdadh anns na tachartasan log a thachair anns na h-ìrean dùnadh sìos, nuair a tha na daemons logaidh cunbhalach air crìochnachadh mu thràth. ;
Ann an journalctl agus goireasan eile a tha a’ taisbeanadh logaichean, tha rabhaidhean air an comharrachadh ann am buidhe, agus tha clàran sgrùdaidh air an comharrachadh ann an gorm gus am faicear iad bhon t-sluagh;
Anns an caochladair àrainneachd $ PATH, thig an t-slighe gu biona / a-nis ron t-slighe gu sbin /, i.e. ma tha ainmean co-ionann de fhaidhlichean so-ghnìomhaichte anns an dà chlàr, thèid am faidhle bhon bhiona / a chuir gu bàs;
tha systemd-logind a’ toirt seachad gairm SetBrightness() gus soilleireachd an sgrion atharrachadh gu sàbhailte gach seisean;
Chaidh a’ bhratach “--wait-for-initialization” a chuir ris an àithne “udevadm info” gus feitheamh gus an tòisich an inneal;
Rè bròg an t-siostaim, tha inneal-làimhseachaidh PID 1 a-nis a’ taisbeanadh ainmean aonadan an àite loidhne leis an tuairisgeul aca. Gus tilleadh gu giùlan san àm a dh'fhalbh, faodaidh tu an roghainn StatusUnitFormat a chleachdadh ann an /etc/systemd/system.conf no an roghainn kernel systemd.status_unit_format;
Chuir sinn roghainn KExecWatchdogSec ri /etc/systemd/system.conf airson buidheann faire PID 1, a tha a’ sònrachadh an ùine airson ath-thòiseachadh a’ cleachdadh kexec. Seann shuidheachadh
Chaidh ShutdownWatchdogSec ath-ainmeachadh gu RebootWatchdogSec agus tha e a’ mìneachadh ùine airson obraichean aig àm dùnadh no ath-thòiseachadh àbhaisteach;
Chaidh roghainn ùr a chur ris airson seirbheisean Cùmhnant cur an gnìomh, a leigeas leat òrdughan a shònrachadh a thèid a chuir gu bàs ro ExecStartPre. Stèidhichte air a 'chòd mearachd air a thilleadh leis an àithne, thèid co-dhùnadh a dhèanamh mu bhith a' coileanadh an aonaid a bharrachd - ma thèid còd 0 a thilleadh, lean air adhart le cur air bhog an aonaid, ma thig e bho 1 gu 254 gu crìch gu sàmhach às aonais bratach fàilligeadh, ma tha 255 a 'crìochnachadh le bratach teip;
Chuir sinn seirbheis ùr ris systemd-pstore.service gus dàta a tharraing bho sys/fs/pstore/ agus bho bhith a’ sàbhaladh gu /var/lib/pstore airson tuilleadh sgrùdaidh;
Chaidh òrdughan ùra a chur ris a’ ghoireas timedatectl airson paramadairean NTP a rèiteachadh airson systemd-timesyncd a thaobh eadar-aghaidh lìonra;
Chan eil an àithne “localectl list-locales” a’ taisbeanadh sgìrean a bharrachd air UTF-8 tuilleadh;
A’ dèanamh cinnteach gun tèid dearmad a dhèanamh air mearachdan sònrachaidh caochlaideach ann an sysctl.d/ files ma thòisicheas an t-ainm caochlaideach leis a’ charactar “-“;
seirbheis systemd-random-seed.service a-nis gu tur an urra ri bhith a’ tòiseachadh an cruinneachadh entropy de ghineadair àireamh pseudorandom kernel Linux. Bu chòir seirbheisean a dh’ fheumas tòiseachadh ceart /dev/urandom a thòiseachadh às deidh systemd-random-seed.service;
Tha an inneal-luachaidh systemd-boot a’ toirt seachad an comas roghnach taic a thoirt faidhle sìol le sreath air thuaiream ann an Roinn Siostam EFI (ESP);
Chaidh òrdughan ùra a chur ris a’ ghoireas bootctl: “bootctl random-seed” gus faidhle sìl a ghineadh san ESP agus “bootctl is-installed” gus sgrùdadh a dhèanamh air stàladh an luchd-tòiseachaidh systemd-boot. chaidh bootctl atharrachadh cuideachd gus rabhaidhean a thaisbeanadh mu rèiteachadh ceàrr de inntrigidhean bròg (mar eisimpleir, nuair a thèid an ìomhaigh kernel a dhubhadh às, ach tha an inntrig airson a luchdachadh air fhàgail);
A’ toirt seachad taghadh fèin-ghluasadach den sgaradh suaip nuair a thèid an siostam a-steach don mhodh cadail. Tha an sgaradh air a thaghadh a rèir a’ phrìomhachais a chaidh a dhealbhadh air a shon, agus a thaobh prìomhachasan co-ionann, an ìre de rùm an-asgaidh;
Chaidh roghainn keyfile-timeout a chur ris /etc/crypttab gus an ùine a dh'fhuiricheas an inneal leis an iuchair crioptachaidh a shuidheachadh mus iarr e facal-faire gus faighinn chun a' phàirt chrioptaichte;
Chaidh roghainn IOWeight a chur ris gus an cuideam I / O a shuidheachadh airson clàr-ama BFQ;
Chuir systemd-resolved modh 'teann' ris airson DNS-over-TLS agus chuir e an gnìomh an comas dìreach freagairtean DNS adhartach a thasgadh ("Cache no-negative" ann an resolution.conf);
Airson VXLAN, tha systemd-networkd air roghainn GenericProtocolExtension a chuir ris gus leudachadh protocol VXLAN a chomasachadh. Airson VXLAN agus GENEVE, chaidh an roghainn IPDoNotFragment a chur ris gus a’ bhratach casg brisidh a shuidheachadh airson pacaidean a tha a’ falbh;
Ann an systemd-networkd, anns an roinn “[Slighe]”, tha an roghainn FastOpenNoCookie air nochdadh gus cothrom a thoirt don uidheamachd airson ceanglaichean TCP fhosgladh gu sgiobalta (TFO - TCP Fast Open, RFC 7413) a thaobh slighean fa-leth, a bharrachd air an roghainn TTLPropagate gus TTL LSP (Label Switched Path ) a rèiteachadh. Tha an roghainn “Type” a’ toirt taic do mhodhan slighe ionadail, craolaidh, anycast, multicast, sam bith agus xresolve;
Tha Systemd-networkd a’ tabhann roghainn DefaultRouteOnDevice anns an roinn “[Network]” gus slighe àbhaisteach a rèiteachadh gu fèin-ghluasadach airson inneal lìonra sònraichte;
Tha Systemd-networkd air ProxyARP agus
ProxyARPWifi airson giùlan neach-ionaid ARP a shuidheachadh, MulticastRouter airson paramadairean slighe a shuidheachadh ann am modh multicast, MulticastIGMPVersion airson an dreach IGMP (Pròtacal Riaghladh Buidhne Eadar-lìn) atharrachadh airson multicast;
Tha Systemd-networkd air roghainnean Ionadail, Peer agus PeerPort a chuir ris airson tunailean FooOverUDP gus na seòlaidhean IP ionadail agus iomallach a rèiteachadh, a bharrachd air àireamh port an lìonraidh. Airson tunailean TUN, chaidh an roghainn VnetHeader a chuir ris gus taic GSO (Generic Segment Offload) a rèiteachadh;
Ann an systemd-networkd, anns na faidhlichean .network agus .link anns an roinn [Match], tha roghainn Seilbh air nochdadh, a leigeas leat innealan a chomharrachadh a rèir na feartan sònraichte aca ann an udev;
Ann an systemd-networkd, chaidh roghainn AssignToLoopback a chuir ris airson tunailean, a bhios a’ cumail smachd air a bheil deireadh an tunail air a shònrachadh don inneal loopback “lo”;
cuiridh systemd-networkd an stac IPv6 an gnìomh gu fèin-obrachail ma tha e air a bhacadh tro sysctl disable_ipv6 - tha IPv6 air a ghnìomhachadh ma tha roghainnean IPv6 (statach no DHCPv6) air am mìneachadh airson eadar-aghaidh an lìonraidh, air neo nach atharraich an luach sysctl a chaidh a shuidheachadh mar-thà;
Ann am faidhlichean .network, chaidh an roghainn KeepConfiguration a chuir an àite an t-suidheachaidh CriticalConnection, a bheir seachad barrachd dhòighean air suidheachaidhean a mhìneachadh (“tha”, “static”, “dhcp-on-stop”, “dhcp”) anns am bu chòir systemd-networkd. gun a bhith a’ suathadh ri ceanglaichean a th’ ann mar-thà nuair a thòisicheas tu;
So-leòntachd stèidhichte CVE-2019-15718, air adhbhrachadh le dìth smachd ruigsinneachd air an eadar-aghaidh D-Bus systemd-resolution. Tha a’ chùis a’ leigeil le neach-cleachdaidh gun bhuannachd obair a dhèanamh nach eil ri fhaighinn ach do luchd-rianachd, leithid atharrachadh roghainnean DNS agus a’ stiùireadh cheistean DNS gu frithealaiche meallta;
So-leòntachd stèidhichte CVE-2019-9619co-cheangailte ri gun a bhith a’ comasachadh pam_systemd airson seiseanan neo-eadar-ghnìomhach, a leigeas leis an t-seisean gnìomhach a spoofing.