systemd menedżer systemu wersja 246

Po pięciu miesiącach rozwoju przedstawione wydanie menedżera systemu systemd 246. Nowa wersja zawiera obsługę zamrażania jednostek, możliwość weryfikacji obrazu dysku głównego za pomocą podpisu cyfrowego, obsługę kompresji logów i zrzutów rdzenia za pomocą algorytmu ZSTD, możliwość odblokowania przenośnych katalogów domowych za pomocą tokenów FIDO2, obsługę odblokowania Microsoft BitLocker partycje poprzez /etc/ crypttab, nazwa BlackList została zmieniona na DenyList.

Głównym zmiany:

  • Dodano obsługę kontrolera zasobów zamrażarki opartego na cgroups v2, za pomocą którego można zatrzymać procesy i tymczasowo zwolnić część zasobów (procesor, wejścia/wyjścia, a potencjalnie nawet pamięć) w celu wykonania innych zadań. Zamrażaniem i rozmrażaniem jednostek steruje się za pomocą nowego polecenia „systemctl freeze” lub poprzez D-Bus.
  • Dodano obsługę weryfikacji obrazu dysku głównego przy użyciu podpisu cyfrowego. Weryfikacja odbywa się z wykorzystaniem nowych ustawień w jednostkach usługowych: RootHash (hasz root służący do weryfikacji obrazu dysku określonego za pomocą opcji RootImage) oraz RootHashSignature (podpis cyfrowy w formacie PKCS#7 dla hasha root).
  • Procedura obsługi PID 1 implementuje możliwość automatycznego ładowania prekompilowanych reguł AppArmor (/etc/apparmor/earlypolicy) na początkowym etapie rozruchu.
  • Dodano nowe ustawienia plików jednostkowych: ConditionPathIsEncrypted i AssertPathIsEncrypted do sprawdzania położenia określonej ścieżki na urządzeniu blokowym korzystającym z szyfrowania (dm-crypt/LUKS), ConditionEnvironment i AssertEnvironment do sprawdzania zmiennych środowiskowych (na przykład ustawionych przez PAM lub podczas ustawiania kontenerów).
  • Dla jednostek *.mount zaimplementowano ustawienie ReadWriteOnly, które zabrania montowania partycji w trybie tylko do odczytu, jeśli nie było możliwości zamontowania jej do odczytu i zapisu. W /etc/fstab ten tryb jest konfigurowany przy użyciu opcji „x-systemd.rw-only”.
  • Dla jednostek *.socket dodano ustawienie PassPacketInfo, które umożliwia jądru dodawanie dodatkowych metadanych dla każdego pakietu odczytanego z gniazda (włącza dla gniazda tryby IP_PKTINFO, IPV6_RECVPKTINFO i NETLINK_PKTINFO).
  • Dla usług (*.service unit) proponowane są ustawienia CoredumpFilter (definiuje sekcje pamięci, które powinny być uwzględniane w zrzutach rdzenia) oraz
    TimeoutStartFailureMode/TimeoutStopFailureMode (definiuje zachowanie (SIGTERM, SIGABRT lub SIGKILL), gdy nastąpi przekroczenie limitu czasu podczas uruchamiania lub zatrzymywania usługi).

  • Większość opcji obsługuje teraz wartości szesnastkowe określone za pomocą przedrostka „0x”.
  • W różnych parametrach wiersza poleceń i plikach konfiguracyjnych związanych z konfiguracją kluczy lub certyfikatów można określić ścieżkę do gniazd unixowych (AF_UNIX) w celu przesyłania kluczy i certyfikatów poprzez wywołania usług IPC, gdy nie jest pożądane umieszczanie certyfikatów na niezaszyfrowanym dysku składowanie.
  • Dodano obsługę sześciu nowych specyfikatorów, których można używać w jednostkach, tmpfiles.d/, syusers.d/ i innych plikach konfiguracyjnych: %a do zastępowania bieżącej architektury, %o/%w/%B/%W do zastępowania pól identyfikatory z /etc/os-release i %l dla podstawienia krótkiej nazwy hosta.
  • Pliki jednostek nie obsługują już składni „.include”, która została wycofana 6 lat temu.
  • Ustawienia StandardError i StandardOutput nie obsługują już wartości „syslog” i „syslog-console”, które zostaną automatycznie przekonwertowane na „journal” i „journal+console”.
  • W przypadku automatycznie tworzonych punktów montowania opartych na tmpfs (/tmp, /run, /dev/shm itp.) zapewnione są ograniczenia rozmiaru i liczby i-węzłów odpowiadające 50% rozmiaru pamięci RAM dla /tmp i /dev/ shm i 10% pamięci RAM dla wszystkich pozostałych.
  • Dodano nowe opcje wiersza poleceń jądra: systemd.hostname, aby ustawić nazwę hosta na początkowym etapie rozruchu, udev.blockdev_read_only, aby ograniczyć wszystkie urządzenia blokowe powiązane z dyskami fizycznymi do trybu tylko do odczytu (możesz użyć polecenia „blockdev --setrw”, aby selektywnie anulować), systemd .swap, aby wyłączyć automatyczną aktywację partycji wymiany, systemd.clock-usec, aby ustawić zegar systemowy w mikrosekundach, systemd.condition-needs-update i systemd.condition-first-boot, aby zastąpić ConditionNeedsUpdate i ConditionFirstBoot czeki.
  • Domyślnie sysctl fs.suid_dumpable jest ustawione na 2 („suidsafe”), co umożliwia zapisywanie zrzutów rdzenia dla procesów z flagą suid.
  • Plik /usr/lib/udev/hwdb.d/60-autosuspend.hwdb został zapożyczony do bazy danych sprzętu z ChromiumOS, która zawiera informacje o urządzeniach PCI i USB obsługujących automatyczny tryb uśpienia.
  • Do pliku networkd.conf dodano ustawienie ManageForeignRoutes. Po włączeniu systemd-networkd zacznie zarządzać wszystkimi trasami skonfigurowanymi przez inne narzędzia.
  • Do plików .network dodano sekcję „[SR-IOV]” służącą do konfigurowania urządzeń sieciowych obsługujących SR-IOV (wirtualizacja we/wy z pojedynczym rootem).
  • W systemd-networkd do sekcji „[Network]” dodano ustawienie IPv4AcceptLocal, aby umożliwić odbieranie pakietów przychodzących z lokalnym adresem źródłowym przez interfejs sieciowy.
  • systemd-networkd dodał możliwość konfiguracji dyscyplin priorytetyzacji ruchu HTB poprzez [HierarchyTokenBucket] i
    [HierarchyTokenBucketClass], „pfifo” przez [PFIFO], „GRED” przez [GenericRandomEarlyDetection], „SFB” przez [StochasticFairBlue], „ciasto”
    przez [CAKE], „PIE” przez [PIE], „DRR” przez [DeficitRoundRobinScheduler] i
    [DeficitRoundRobinSchedulerClass], „BFIFO” poprzez [BFIFO],
    „PFIFOHeadDrop” przez [PFIFOHeadDrop], „PFIFOFast” przez [PFIFOFast], „HHF”
    przez [HeavyHitterFilter], „ETS” poprzez [EnhancedTransmissionSelection],
    „QFQ” poprzez [QuickFairQueueing] i [QuickFairQueueingClass].

  • W systemd-networkd do sekcji [DHCPv4] dodano ustawienie UseGateway, aby wyłączyć korzystanie z informacji o bramie uzyskanych przez DHCP.
  • W systemd-networkd, w sekcjach [DHCPv4] i [DHCPServer] dodano ustawienie SendVendorOption umożliwiające instalowanie i przetwarzanie dodatkowych opcji dostawcy.
  • systemd-networkd implementuje nowy zestaw opcji EmitPOP3/POP3, EmitSMTP/SMTP i EmitLPR/LPR w sekcji [DHCPServer], aby dodać informacje o serwerach POP3, SMTP i LPR.
  • W systemd-networkd, w plikach .netdev w sekcji [Bridge], dodano ustawienie VLANProtocol umożliwiające wybranie używanego protokołu VLAN.
  • W systemd-networkd, w plikach .network w sekcji [Link], zaimplementowano ustawienie Group w celu zarządzania grupą łączy.
  • Nazwę ustawień BlackList zmieniono na DenyList (zachowując starą obsługę nazw w celu zapewnienia kompatybilności wstecznej).
  • Systemd-networkd dodał dużą część ustawień związanych z IPv6 i DHCPv6.
  • Dodano polecenie „forcerenew” do networkctl, aby wymusić aktualizację wszystkich powiązań adresów (dzierżawa).
  • W przypadku rozwiązania systemowego w konfiguracji DNS stało się możliwe określenie numeru portu i nazwy hosta na potrzeby weryfikacji certyfikatu DNS-over-TLS. Implementacja DNS-over-TLS dodała obsługę sprawdzania SNI.
  • Systemd-resolved ma teraz możliwość skonfigurowania przekierowania nazw DNS o pojedynczej etykiecie (pojedynczej etykiecie, z jednej nazwy hosta).
  • systemd-journald zapewnia obsługę algorytmu zstd do kompresji dużych pól w dziennikach. Włożono prace mające na celu zabezpieczenie przed kolizjami w tabelach skrótów używanych w czasopismach.
  • Klikalne adresy URL z łączami do dokumentacji zostały dodane do dziennikactl podczas wyświetlania komunikatów dziennika.
  • Dodano ustawienie audytu do pliku journald.conf, aby kontrolować, czy podczas inicjalizacji systemd-journald jest włączona kontrola.
  • Systemd-coredump ma teraz możliwość kompresowania zrzutów rdzenia przy użyciu algorytmu zstd.
  • Dodano ustawienie UUID do systemd-repart, aby przypisać UUID do utworzonej partycji.
  • Usługa systemd-homed, która umożliwia zarządzanie przenośnymi katalogami domowymi, dodała możliwość odblokowywania katalogów domowych za pomocą tokenów FIDO2. Zaplecze szyfrowania partycji LUKS dodało obsługę automatycznego zwracania pustych bloków systemu plików po zakończeniu sesji. Dodano ochronę przed podwójnym szyfrowaniem danych w przypadku ustalenia, że ​​partycja /home w systemie jest już zaszyfrowana.
  • Dodano ustawienia do /etc/crypttab: „keyfile-erase”, aby usunąć klucz po użyciu i „try-empty-password”, aby spróbować odblokować partycję przy użyciu pustego hasła przed zapytaniem użytkownika o hasło (przydatne przy instalowaniu zaszyfrowanych obrazów z hasłem przydzielonym po pierwszym uruchomieniu, a nie podczas instalacji).
  • systemd-cryptsetup dodaje obsługę odblokowywania partycji Microsoft BitLocker podczas uruchamiania systemu przy użyciu pliku /etc/crypttab. Dodano także możliwość czytania
    klucze do automatycznego odblokowywania partycji z plików /etc/cryptsetup-keys.d/ .key i /run/cryptsetup-keys.d/ .klucz.

  • Dodano systemd-xdg-autostart-generator do tworzenia plików jednostkowych z plików autostartu .desktop.
  • Dodano polecenie „reboot-to-firmware” do „bootctl”.
  • Dodano opcje do systemd-firstboot: „--image” do określenia obrazu dysku do rozruchu, „--kernel-command-line” do inicjacji pliku /etc/kernel/cmdline, „--root-password-hashed” do określ skrót hasła roota i „--delete-root-password”, aby usunąć hasło roota.

Źródło: opennet.ru

Dodaj komentarz