systemd systeembehearder release 243

Nei fiif moannen fan ûntwikkeling presintearre systeem manager release systemd 243. Under de fernijingen kinne wy ​​​​opmerke de yntegraasje yn PID 1 fan in handler foar leech ûnthâld yn it systeem, stipe foar it heakjen fan jo eigen BPF-programma's foar it filterjen fan ienheidsferkear, in protte nije opsjes foar systemd-networkd, in modus foar it kontrolearjen fan de bânbreedte fan netwurk ynterfaces, ynskeakelje standert op 64-bit systemen 22-bit PID nûmers ynstee fan 16-bit, oergong nei in ferienige cgroups hierargy, opname yn systemd-netwurk-generator.

Grutte feroaringen:

  • Erkenning fan kernel-generearre sinjalen oer sûnder ûnthâld (Out-Of-Memory, OOM) is tafoege oan de PID 1-hanneler om ienheden dy't de limyt foar ûnthâldferbrûk berikt hawwe oer te setten yn in spesjale steat mei de opsjonele mooglikheid om se te twingen om te beëinigjen of stopje;
  • Foar ienheid triemmen, nije parameters IPIngressFilterPath en
    IPEgressFilterPath, wêrmei jo BPF-programma's kinne ferbine mei willekeurige handlers om ynkommende en útgeande IP-pakketten te filterjen dy't generearre binne troch prosessen ferbûn mei dizze ienheid. De foarstelde funksjes kinne jo meitsje in soarte fan firewall foar systemd tsjinsten. Foarbyld fan skriuwen in ienfâldich netwurkfilter basearre op BPF;

  • It kommando "skjinne" is tafoege oan it systemctl-hulpprogramma om de cache, runtime-bestannen, statusynformaasje en log-mappen te wiskjen;
  • systemd-networkd foeget stipe ta foar MACsec, nlmon, IPVTAP en Xfrm netwurk ynterfaces;
  • systemd-networkd ymplementearret aparte konfiguraasje fan DHCPv4- en DHCPv6-stacks troch de seksjes "[DHCPv4]" en "[DHCPv6]" yn it konfiguraasjetriem. De opsje RoutesToDNS tafoege om in aparte rûte ta te foegjen oan de DNS-tsjinner opjûn yn 'e parameters ûntfongen fan' e DHCP-tsjinner (sadat ferkear nei de DNS wurdt ferstjoerd fia deselde keppeling as de haadrûte ûntfongen fan 'e DHCP). Nije opsjes binne tafoege foar DHCPv4: MaxAttempts - maksimum oantal fersiken om in adres te krijen, BlackList - swarte list fan DHCP-tsjinners, SendRelease - ynskeakelje it ferstjoeren fan DHCP RELEASE-berjochten as de sesje einiget;
  • Nije kommando's binne tafoege oan it hulpprogramma systemd-analyze:
    • "systemd-analyze timestamp" - tiid parsing en konverzje;
    • "Systemd-analyze timespan" - analyze en konverzje fan tiidperioaden;
    • "systemd-analyze condition" - it parsearjen en testen fan ConditionXYZ-útdrukkingen;
    • "systemd-analyze útgongsstatus" - it parsearjen en konvertearjen fan útgongskoades fan nûmers nei nammen en oarsom;
    • "systemd-analyze unit-files" - Toant alle triempaden foar ienheden en ienheidsaliassen.
  • Opsjes SuccessExitStatus, RestartPreventExitStatus en
    RestartForceExitStatus stipet no net allinnich numerike return koades, mar ek harren tekst identifier (bygelyks, "DATAERR"). Jo kinne de list mei koades besjen dy't oan identifiers tawiisd binne mei it kommando "sytemd-analyze exit-status";

  • It kommando "delete" is tafoege oan it utility networkctl om firtuele netwurkapparaten te wiskjen, lykas de opsje "—stats" om apparaatstatistiken te sjen;
  • SpeedMeter en SpeedMeterIntervalSec ynstellings binne tafoege oan networkd.conf foar it periodyk mjitten fan de trochstreaming fan netwurk ynterfaces. Statistiken krigen fan 'e mjittingsresultaten kinne wurde besjoen yn' e útfier fan it kommando 'networkctl status';
  • Nije utility systemd-network-generator tafoege foar it generearjen fan bestannen
    .network, .netdev en .link basearre op IP-ynstellingen dy't trochjûn wurde by lansearre fia de Linux kernel kommandorigel yn Dracut ynstellingsformaat;

  • De sysctl "kernel.pid_max" wearde op 64-bit systemen is no standert ynsteld op 4194304 (22-bit PID's ynstee fan 16-bits), wat de kâns op botsingen ferminderet by it tawizen fan PID's, fergruttet de limyt op it oantal tagelyk rinnende prosessen, en hat in positive ynfloed op feiligens. De feroaring kin mooglik liede ta kompatibiliteitsproblemen, mar sokke problemen binne noch net yn 'e praktyk rapportearre;
  • Standert skeakelt it boustadium oer nei de ferienige hierargy cgroups-v2 ("-Ddefault-hierarchy = unified"). Earder wie de standert hybride modus ("-Ddefault-hierarchy = hybride");
  • It gedrach fan it systeemopropfilter (SystemCallFilter) is feroare, wat, yn it gefal fan in ferbeane systeemoprop, no it hiele proses beëiniget, ynstee fan yndividuele diskusjes, om't it beëinigjen fan yndividuele diskusjes liede kin ta ûnfoarspelbere problemen. De wizigingen jilde allinich as jo Linux kernel 4.14+ en libsecomp 2.4.0+ hawwe;
  • Unprivilegearre programma's krije de mooglikheid om ICMP Echo (ping) pakketten te stjoeren troch it ynstellen fan de sysctl "net.ipv4.ping_group_range" foar it hiele oanbod fan groepen (foar alle prosessen);
  • Om it bouproses te rapperjen, is de generaasje fan manhânliedingen standert stoppe (om folsleine dokumintaasje te bouwen, moatte jo de opsje "-Dman = wier" of "-Dhtml = wier" brûke foar hânboeken yn html-formaat). Om it makliker te meitsjen om de dokumintaasje te besjen, binne twa skripts opnommen: build/man/man en build/man/html foar it generearjen en besjen fan hânboeken fan belang;
  • Om domeinnammen te ferwurkjen mei karakters út nasjonale alfabetten, wurdt de libidn2-bibleteek standert brûkt (om libidn werom te jaan, brûk de opsje "-Dlibidn = wier");
  • Stipe foar it útfierbere bestân /usr/sbin/halt.local, dat funksjonaliteit levere dy't net wiidferspraat wie yn distribúsjes, is stopset. Om de start fan kommando's te organisearjen by it ôfsluten, is it oan te rieden om skripts te brûken yn /usr/lib/systemd/system-shutdown/ of in nije ienheid te definiearjen dy't hinget fan final.target;
  • Yn 'e lêste faze fan ôfsluting fergruttet systemd no automatysk it lognivo yn' e sysctl "kernel.printk", wat it probleem oplost mei it werjaan fan eveneminten yn 'e log dy't barde yn' e lettere stadia fan ôfsluting, as de reguliere logging-daemons al foltôge binne ;
  • Yn journalctl en oare nutsbedriuwen werjaan logs, warskôgings wurde markearre yn giel, en audit records wurde markearre yn blau om visueel markearje se út de mannichte;
  • Yn de omjouwingsfariabele $PATH komt it paad nei bin/ no foar it paad nei sbin/, d.w.s. as der identike nammen binne fan útfierbere triemmen yn beide mappen, sil de triem fan bin/ útfierd wurde;
  • systemd-logind jout in SetBrightness () oprop foar in feilich feroarje it skerm helderheid op in per-sesje basis;
  • De flagge "--wachtsje-foar-inisjalisaasje" is tafoege oan it kommando "udevadm info" om te wachtsjen op it inisjalisearjen fan it apparaat;
  • Tidens it opstarten fan it systeem toant PID 1-handler no de nammen fan ienheden yn stee fan in rigel mei har beskriuwing. Om werom te gean nei ferline gedrach, kinne jo de StatusUnitFormat-opsje brûke yn /etc/systemd/system.conf of de systemd.status_unit_format kernel opsje;
  • KExecWatchdogSec-opsje tafoege oan /etc/systemd/system.conf foar watchdog PID 1, dy't de timeout spesifisearret foar it opnij begjinnen mei kexec. Alde ynstelling
    ShutdownWatchdogSec is omdoopt ta RebootWatchdogSec en definiearret in time-out foar banen by ôfsluting of normale werstart;

  • In nije opsje is tafoege foar tsjinsten ExecCondition, wêrmei jo kommando's kinne opjaan dy't útfierd wurde foardat ExecStartPre. Op grûn fan 'e flaterkoade weromjûn troch it kommando, wurdt in beslút makke oer fierdere útfiering fan' e ienheid - as koade 0 wurdt weromjûn, giet de lansearring fan 'e ienheid troch, as fan 1 nei 254 it stil einiget sûnder in flaterflagge, as 255 it einiget mei in mislearre flagge;
  • In nije tsjinst tafoege systemd-pstore.service om gegevens te ekstrahearjen fan sys/fs/pstore/ en fan opslaan nei /var/lib/pstore foar fierdere analyze;
  • Nije kommando's binne tafoege oan it timedatectl-hulpprogramma foar it konfigurearjen fan NTP-parameters foar systemd-timesyncd yn relaasje ta netwurkynterfaces;
  • It kommando "localectl list-locales" toant gjin oare lokaasjes mear dan UTF-8;
  • Soarget derfoar dat fariabele tawizing flaters yn sysctl.d/ triemmen wurde negearre as de fariabele namme begjint mei it karakter "-";
  • tsjinst systemd-random-seed.service is no folslein ferantwurdlik foar it inisjalisearjen fan de entropypool fan 'e Linux kernel pseudorandom number generator. Tsjinsten dy't in korrekt inisjalisearre /dev/urandom fereaskje moatte wurde begon nei systemd-random-seed.service;
  • De systemd-boot bootloader biedt de opsjonele mooglikheid om te stypjen sied triem mei willekeurige folchoarder yn de EFI System Partition (ESP);
  • Nije kommando's binne tafoege oan it bootctl-hulpprogramma: "bootctl random-seed" om in siedbestân te generearjen yn 'e ESP en "bootctl is-ynstalleare" om de ynstallaasje fan 'e systemd-boot bootloader te kontrolearjen. bootctl is ek oanpast om warskôgingen te werjaan oer ferkearde konfiguraasje fan boot-yngongen (bygelyks as de kernelôfbylding wiske is, mar de yngong foar it laden is oerbleaun);
  • Biedt automatyske seleksje fan 'e ruilferdieling as it systeem yn sliepmodus giet. De partysje wurdt selektearre ôfhinklik fan de prioriteit dy't dêrfoar ynsteld is, en yn it gefal fan identike prioriteiten, it bedrach fan frije romte;
  • Tafoege keyfile-timeout opsje oan /etc/crypttab om yn te stellen hoe lang it apparaat mei de fersiferingskaai wachtet foardat it freget om in wachtwurd om tagong te krijen ta de fersifere partition;
  • IOWeight-opsje tafoege om it I/O-gewicht yn te stellen foar de BFQ-planner;
  • systemd-resolved tafoege 'string' modus foar DNS-over-TLS en ymplementearre de mooglikheid om allinich positive DNS-antwurden te cache ("Cache no-negative" yn resolved.conf);
  • Foar VXLAN hat systemd-networkd in opsje GenericProtocolExtension tafoege om VXLAN-protokol-útwreidingen yn te skeakeljen. Foar VXLAN en GENEVE is de IPDoNotFragment-opsje tafoege om de flagge foar fragmintaasjeferbod yn te stellen foar útgeande pakketten;
  • Yn systemd-networkd, yn 'e seksje "[Route]", is de FastOpenNoCookie-opsje ferskynde om it meganisme yn te skeakeljen foar it fluch iepenjen fan TCP-ferbiningen (TFO - TCP Fast Open, RFC 7413) yn relaasje ta yndividuele rûtes, lykas de opsje TTLPropagate om TTL LSP (Label Switched Path) te konfigurearjen. De opsje "Type" jout stipe foar lokale, útstjoering, anycast, multicast, elk en xresolve routingmodi;
  • Systemd-networkd biedt in DefaultRouteOnDevice-opsje yn 'e seksje "[Netwurk]" om automatysk in standertrûte foar in opjûn netwurkapparaat te konfigurearjen;
  • Systemd-networkd hat tafoege ProxyARP en
    ProxyARPWifi foar it ynstellen fan proxy ARP-gedrach, MulticastRouter foar it ynstellen fan routingparameters yn multicast-modus, MulticastIGMPVersion foar it feroarjen fan de IGMP (Internet Group Management Protocol) ferzje foar multicast;

  • Systemd-networkd hat Lokale, Peer en PeerPort-opsjes tafoege foar FooOverUDP-tunnels om de lokale en eksterne IP-adressen te konfigurearjen, lykas it netwurkpoartenûmer. Foar TUN-tunnels is de opsje VnetHeader tafoege om GSO (Generic Segment Offload) stipe te konfigurearjen;
  • Yn systemd-networkd, yn 'e .network- en .link-bestannen yn' e [Match] seksje, is in Eigenskip-opsje ferskynd, wêrtroch jo apparaten kinne identifisearje troch har spesifike eigenskippen yn udev;
  • Yn systemd-networkd is in AssignToLoopback-opsje tafoege foar tunnels, dy't kontrolearret oft it ein fan 'e tunnel wurdt tawiisd oan it loopback-apparaat "lo";
  • systemd-networkd aktivearret automatysk de IPv6-stapel as it blokkearre is fia sysctl disable_ipv6 - IPv6 is aktivearre as IPv6-ynstellingen (statysk of DHCPv6) definieare binne foar de netwurkynterface, oars feroaret de al ynstelde sysctl-wearde net;
  • Yn .network-bestannen is de CriticalConnection-ynstelling ferfongen troch de KeepConfiguration-opsje, dy't mear middels biedt foar it definiearjen fan situaasjes ("ja", "statysk", "dhcp-on-stop", "dhcp") wêryn systemd-networkd moat besteande ferbiningen net oanreitsje by it opstarten;
  • Kwetsberens fêst CVE-2019-15718, feroarsake troch gebrek oan tagong kontrôle nei de systemd-oplost D-Bus ynterface. It probleem lit in unprivileged brûker operaasjes útfiere dy't allinich beskikber binne foar behearders, lykas it feroarjen fan DNS-ynstellingen en it rjochtsjen fan DNS-fragen nei in rogue-tsjinner;
  • Kwetsberens fêst CVE-2019-9619relatearre oan it net ynskeakeljen fan pam_systemd foar net-ynteraktive sesjes, wêrtroch spoofing fan 'e aktive sesje mooglik is.

Boarne: opennet.ru

Add a comment