siostam manaidsear siostam sgaoileadh 243

À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.

Source: fosgailtenet.ru

Cuir beachd ann