UtgÄvan av systemhanteraren systemd 243

Efter fem mÄnaders utveckling presenteras utgivning av systemhanteraren systemd 243. Bland nyheterna kan nÀmnas integrationen av en hanterare för minnesbrist i systemet i PID 1, stöd för att bifoga egna BPF-program för filtrering av enheternas trafik, mÀngder av nya alternativ för systemd-networkd, övervakningslÀge för bandbredden pÄ nÀtverksgrÀnssnitt, och standardanvÀndning av 22-bitars PID-nummer istÀllet för 16-bitars pÄ 64-bitars system, samt övergÄng till en enhetlig hierarki av cgroups, inklusive systemd-network-generator.

Huvudsakliga förÀndringar:

  • I hanteraren PID 1 har det lagts till erkĂ€nnande av kĂ€rnsgenererade signaler angĂ„ende minnesbrist (Out-Of-Memory, OOM) för att överföra enheter som nĂ„tt en minnesgrĂ€ns till ett specifikt tillstĂ„nd med möjlighet till tvingad avslutning eller stopp.
  • För unit-filer har nya parametrar introducerats: IPIngressFilterPath och
    IPEgressFilterPath, vilka möjliggör anslutning av BPF-program med godtyckliga hanterare för att filtrera inkommande och utgÄende IP-paket som genereras av processer relaterade till denna enhet. De föreslagna funktionerna möjliggör skapandet av en slags brandvÀggar för systemd-tjÀnster. Exempel pÄ hur man skriver ett enkelt nÀtverksfilter baserat pÄ BPF;
  • I systemctl-verktyget har kommandot "clean" lagts till för att ta bort cache, runtime-filer, statusinformation och loggkataloger;
  • I systemd-networkd har stöd lagts till för nĂ€tverksgrĂ€nssnitt som MACsec, nlmon, IPVTAP och Xfrm;
  • I systemd-networkd har separat konfigurering av DHCPv4- och DHCPv6-stacken genomförts via sektionerna "[DHCPv4]" och "[DHCPv6]" i konfigurationsfilen. En ny alternativ RoutesToDNS har lagts till för att lĂ€gga till en separat vĂ€g till DNS-servern, angiven i parametrarna som mottagits frĂ„n DHCP-servern (sĂ„ att trafiken till DNS skickas genom samma lĂ€nk som den huvudvĂ€g som mottogs frĂ„n DHCP). För DHCPv4 har nya alternativ lagts till: MaxAttempts - det maximala antalet förfrĂ„gningar om att hĂ€mta en adress, BlackList - en lista över blockerade DHCP-servrar, SendRelease - aktivering av sĂ€ndning av DHCP RELEASE-meddelanden vid sessionens slut;
  • I verktyget systemd-analyze har nya kommandon lagts till:
    • "systemd-analyze timestamp" - tolkning och omvandling av tid;
    • "systemd-analyze timespan" - tolkning och omvandling av tidsintervall;
    • "systemd-analyze condition" - tolkning och test av uttryck ConditionXYZ;
    • "systemd-analyze exit-status" - tolkning och omvandling av avslutningskoder frĂ„n nummer till namn och vice versa;
    • «systemd-analyze unit-files» – visar en lista över alla filvĂ€gar för enheter och enhetsalias.
  • Alternativen SuccessExitStatus, RestartPreventExitStatus och
    RestartForceExitStatus stöder nu inte bara numeriska returkoder utan Àven deras textidentifierare (till exempel «DATAERR»). Du kan se listan över kopplade koder till identifierare med kommandot «systemd-analyze exit-status»;
  • Verktyget networkctl har fĂ„tt kommandot «delete» för att ta bort virtuella nĂ€tverksenheter, samt alternativet «–stats» för att visa statistik över enheterna;
  • I networkd.conf har instĂ€llningarna SpeedMeter och SpeedMeterIntervalSec lagts till för att periodiskt mĂ€ta bandbredden pĂ„ nĂ€tverksgrĂ€nssnitten. Statistiken som erhĂ„lls frĂ„n mĂ€tningarna kan ses i utdata frĂ„n kommandot ‘networkctl status’;
  • En ny utility systemd-network-generator har lagts till för att generera filer
    .network, .netdev och .link baserat pÄ IP-instÀllningar som skickas vid systemstart via kommandoraden för Linux-kÀrnan i Dracut-instÀllningsformat;
  • VĂ€rdet sysctl «kernel.pid_max» pĂ„ 64-bitarsystem sĂ€tts nu som standard till 4194304 (22-bitars PID istĂ€llet för 16-bitars), vilket minskar risken för kollisioner vid tilldelning av PID, ökar grĂ€nsen för antalet samtidigt körda processer och har en positiv effekt pĂ„ sĂ€kerheten. Denna förĂ€ndring kan potentiellt leda till kompatibilitetsproblem, men i praktiken har det Ă€nnu inte rapporterats nĂ„gra sĂ„dana problem;
  • Som standard har övergĂ„ngen till en enhetlig hierarki för cgroups-v2 genomförts under byggsteget (»-Ddefault-hierarchy=unified«). Tidigare var hybridlĂ€ge standard (»-Ddefault-hierarchy=hybrid«);
  • Beteendet hos systemanropfilter (SystemCallFilter) har Ă€ndrats, sĂ„ att vid anrop av ett förbjudet systemanrop nu hela processen avslutas, istĂ€llet för enskilda trĂ„dar, eftersom avslutning av enskilda trĂ„dar kan leda till oförutsĂ€gbara problem. Ändringarna gĂ€ller endast om kĂ€rnan Linux 4.14+ och libseccomp 2.4.0+ finns;
  • Icke-privilegierade program har fĂ„tt möjlighet att skicka ICMP Echo-paket (ping) genom att sĂ€tta sysctl «net.ipv4.ping_group_range» för hela gruppintervallet (för alla processer);
  • För att snabba upp byggprocessen har genereringen av man-sidor stĂ€ngts av som standard (för att bygga fullstĂ€ndig dokumentation, anvĂ€nd alternativet «-Dman=true» eller «-Dhtml=true» för HTML-format man-sidor). För att underlĂ€tta visningen av dokumentation har vi inkluderat tvĂ„ skript build/man/man och build/man/html för att generera och förhandsgranska relevanta handböcker;
  • För att hantera domĂ€nnamn med tecken frĂ„n nationella alfabeten anvĂ€nds som standard biblioteket libidn2 (för att Ă„tergĂ„ till libidn, anvĂ€nd alternativet «-Dlibidn=true»);
  • Stöd för körbar fil /usr/sbin/halt.local har avbrutits, eftersom den inte blev tillrĂ€ckligt spridd i distributionerna. För att organisera körning av kommandon vid avstĂ€ngning rekommenderas det att anvĂ€nda skript i /usr/lib/systemd/system-shutdown/ eller definiera en ny enhet beroende av final.target;
  • I det sista skedet av avstĂ€ngningen ökar systemd nu automatiskt loggnivĂ„n i sysctl «kernel.printk», vilket löser problemet med visning av logghĂ€ndelser som intrĂ€ffade under de senaste stadierna av avstĂ€ngningen, nĂ€r de normala loggtjĂ€nsterna redan har avslutats;
  • I journalctl och andra loggvisningsverktyg har varningar markerats med gult, och revisionsposterna med blĂ„tt för att visuellt sĂ€rskilja dem frĂ„n mĂ€ngden;
  • I miljövariabeln $PATH kommer sökvĂ€gen till bin/ nu före vĂ€gen till sbin/, dvs. om samma namn för körbara filer finns i bĂ„da katalogerna, kommer filen frĂ„n bin/ att köras;
  • I systemd-logind har anropet SetBrightness() lagts till för sĂ€ker Ă€ndring av skĂ€rmens ljusstyrka för varje session;
  • Flaggan «--wait-for-initialization» har lagts till kommandot «udevadm info» för att vĂ€nta pĂ„ att enhetens initiering ska slutföras;
  • Vid systemstart skriver PID 1 ut namnen pĂ„ enheterna pĂ„ skĂ€rmen istĂ€llet för beskrivningen av dem. För att Ă„tergĂ„ till det tidigare beteendet kan alternativet StatusUnitFormat anvĂ€ndas i /etc/systemd/system.conf eller kernel-parametern systemd.status_unit_format;
  • I /etc/systemd/system.conf har alternativet KExecWatchdogSec lagts till för watchdog i PID 1, vilket definierar tidsgrĂ€nsen för omstart med hjĂ€lp av kexec. Den gamla instĂ€llningen
    ShutdownWatchdogSec har döpts om till RebootWatchdogSec och definierar tidsgrÀnsen för operationer vid avstÀngning eller normal omstart;
  • För tjĂ€nster har ett nytt alternativ lagts till ExecCondition, som lĂ„ter dig ange kommandon som kommer att köras före ExecStartPre. Baserat pĂ„ den kod som kommandot returnerar fattas beslut om enhetens fortsatta körning - om koden Ă€r 0 fortsĂ€tter enheten att starta, om den Ă€r mellan 1 och 254 avslutas den tyst utan att registrera ett fel, om den Ă€r 255 avslutas den med en felregistrering;
  • En ny tjĂ€nst, systemd-pstore.service, har lagts till för att hĂ€mta data frĂ„n sys/fs/pstore/ och spara dem i /var/lib/pstore för vidare analys;
  • Nya kommandon har lagts till verktyget timedatectl för att konfigurera NTP-parametrar för systemd-timesyncd kopplade till nĂ€tverksgrĂ€nssnitt;
  • Visningen av lokaler som inte Ă€r UTF-8 har avbrutits i kommandot «localectl list-locales»;
  • Fel vid tilldelning av variabler i sysctl.d/-filer ignoreras om variabelnamnet börjar med tecknet «-«;
  • TjĂ€nsten systemd-random-seed.service ansvarar nu helt för att initiera poolen av entropi för kĂ€rnans pseudorandomgenerator. TjĂ€nster som krĂ€ver en korrekt initierad /dev/urandom mĂ„ste starta efter systemd-random-seed.service;
  • I bootloadern systemd-boot har en valfri möjlighet för support sĂ€kerstĂ€llts seed-fil med en slumpmĂ€ssig sekvens i EFI System Partition (ESP);
  • Nya kommandon har lagts till verktyget bootctl: «bootctl random-seed» för att generera seed-filen i ESP och «bootctl is-installed» för att kontrollera installationen av bootloadern systemd-boot. I bootctl har Ă€ven varningar för felaktig konfiguration av boot-poster introducerats (t.ex. nĂ€r kĂ€rnans bild har raderats men boot-posten lĂ€mnats kvar);
  • Automatisk val av vĂ€xlingspartition har sĂ€kerstĂ€llts nĂ€r systemet gĂ„r i vilolĂ€ge. Partitionen vĂ€ljs baserat pĂ„ den prioritet som tilldelats den, och vid lika prioriteringar - mĂ€ngden ledigt utrymme;
  • I /etc/crypttab har alternativet keyfile-timeout lagts till för att ange vĂ€ntetiden för enheten med krypteringsnyckeln innan förfrĂ„gan om lösenord för Ă„tkomst till den krypterade partitionen visas;
  • Alternativet IOWeight har lagts till för att stĂ€lla in vikt för in/ut-data för BFQ-schemalĂ€ggaren;
  • I systemd-resolved har en strikt ('strict') driftslĂ€ge för DNS-over-TLS lagts till och möjligheten att cacha endast positiva DNS-svar ('Cache no-negative' i resolved.conf) har implementerats;
  • För VXLAN i systemd-networkd har alternativet GenericProtocolExtension lagts till för att aktivera VXLAN-protokollets tillĂ€gg. För VXLAN och GENEVE har alternativet IPDoNotFragment lagts till för att stĂ€lla in fragmenteringsflaggan för utgĂ„ende paket;
  • I systemd-networkd har sektionen "[Route]" fĂ„tt alternativet FastOpenNoCookie för att aktivera mekanismen för snabb öppning av TCP-anslutningar (TFO - TCP Fast Open, RFC 7413) kopplat till specifika rutter, samt alternativet TTLPropagate för att konfigurera TTL LSP (Label Switched Path). Alternativet "Type" stöder routningslĂ€gena local, broadcast, anycast, multicast, any och xresolve;
  • I systemd-networkd har sektionen "[Network]" fĂ„tt alternativet DefaultRouteOnDevice för automatisk konfiguration av standardrutt för den angivna nĂ€tverksenheten;
  • I systemd-networkd har alternativ föreslagits för nĂ€tverksbroar: ProxyARP och
    ProxyARPWifi för att konfigurera proxy ARP-beteende, MulticastRouter för att stÀlla in routningsparametrar i multicast-lÀge, MulticastIGMPVersion för att Àndra versionen av IGMP (Internet Group Management Protocol) för multicast;
  • I systemd-networkd har alternativ för FooOverUDP-tunnlar lagts till: Local, Peer och PeerPort för att konfigurera IP-adresser för lokala och fjĂ€rrsidor samt nĂ€tverksportnummer. För TUN-tunnlar har alternativet VnetHeader lagts till för att konfigurera stöd för GSO (Generic Segment Offload);
  • I systemd-networkd har sektionen [Match] i .network- och .link-filer fĂ„tt alternativet Property, vilket möjliggör identifiering av enheter baserat pĂ„ specifika egenskaper i udev;
  • I systemd-networkd har alternativet AssignToLoopback lagts till för tunnlar, vilket styr bindningen av tunneln till loopback-enheten "lo";
  • I systemd-networkd har aktiveringen av IPv6-stacken automatiserats om den blockeras via sysctl disable_ipv6 — IPv6 aktiveras om nĂ€tverksgrĂ€nssnittet har IPv6-instĂ€llningar (statisk eller DHCPv6), annars Ă€ndras inte det redan angivna vĂ€rdet för sysctl;
  • I .network-filer har instĂ€llningen CriticalConnection ersatts av alternativet KeepConfiguration, vilket ger fler resurser för att definiera situationer ("yes", "static", "dhcp-on-stop", "dhcp") dĂ€r systemd-networkd inte bör röra vid befintliga anslutningar vid uppstart;
  • SĂ€kerhetsbrist Ă„tgĂ€rdad CVE-2019-15718, orsakad av avsaknad av Ă„tkomstkontroll till systemd-resolveds D-Bus-grĂ€nssnitt. Problemet tillĂ„ter icke-behöriga anvĂ€ndare att utföra operationer som endast Ă€r tillgĂ€ngliga för administratörer, till exempel att Ă€ndra DNS-instĂ€llningar och styra DNS-förfrĂ„gningar till en falsk server;
  • SĂ€kerhetsbrist Ă„tgĂ€rdad CVE-2019-9619, relaterad till avstĂ€ngningen av pam_systemd för icke-interaktiva sessioner, vilket möjliggör förstöra ett aktivt sessions-id.

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster