È disponibile systemd 245 con implementazione di home directory portabili

Dopo tre mesi di sviluppo presentato rilascio del gestore di sistema 🥇TrueNAS Open Storage — il risultato della fusione tra FreeNAS e TrueNAS | ProHoster. Nel nuovo rilascio sono stati aggiunti nuovi componenti systemd-homed e systemd-repart, inclusa la supporto per profili utente portabili in formato JSON, che consente la definizione degli spazi dei nomi in systemd-journald e aggiunta la supporto per il meccanismo «pidfd». Completamente riprogettato sito del progetto, su cui è raccolta gran parte della documentazione disponibile e proposto un nuovo logo.

È disponibile systemd 245 con implementazione di home directory portabili

Principali cambiamenti:

  • Aggiunto il servizio systemd-homed, che gestisce le directory home portabili fornite in forma di immagine di file montabile, i dati in esse sono crittografati. Systemd-homed permette di creare ambienti autonomi per i dati degli utenti, portabili tra diversi sistemi, senza preoccuparsi della sincronizzazione degli identificatori e della privacy. Le credenziali dell'utente sono legate alla directory home, piuttosto che alle impostazioni di sistema — invece di /etc/passwd, /etc/group e /etc/shadow, viene utilizzato un profilo in formato JSON. Maggiori informazioni sono disponibili in un annuncio precedente systemd-homed.
  • Aggiunto il componente complementare systemd-homed «userdb» («systemd-userdb»), che trasforma le iscrizioni UNIX/glibc NSS in record JSON e fornisce un'API unificata Varlink per chiedere e iterare sui record. Nel profilo JSON legato alla directory home sono indicati i parametri necessari per il lavoro dell'utente, inclusi i dati su nome, hash della password, chiavi per la crittografia, quote e risorse fornite. Il profilo può essere firmato digitalmente e memorizzato su un token esterno Yubikey. È stata proposta l'utility «userdbctl» per la gestione dei profili. La supporto per profili in formato JSON è stata aggiunta a vari componenti di systemd, inclusi systemd-logind e pam-systemd, che consentono di organizzare l'autenticazione, l'accesso, la configurazione delle variabili d'ambiente, la creazione di sessioni, l'impostazione dei limiti, ecc. In futuro si prevede l'arrivo della possibilità di generare profili JSON tramite il framework sssd con memorizzazione delle impostazioni degli utenti in LDAP.
  • È stata aggiunta una nuova utility «systemd-repart», progettata per la suddivisione delle tabelle delle partizioni del disco nel formato GPT. La struttura delle partizioni è definita in forma dichiarativa tramite file che descrivono quali partizioni devono o possono esistere. Ad ogni avvio, la tabella delle partizioni effettiva viene confrontata con questi file, dopo di che vengono aggiunte le partizioni mancanti o, se la dimensione relativa o assoluta specificata nelle impostazioni non corrisponde, aumenta la dimensione di quelle esistenti. Sono consentiti solo cambiamenti incrementali, cioè la rimozione e la riduzione delle dimensioni non sono possibili, le partizioni possono solo essere aggiunte e aumentate.
    L'utility è fondamentalmente progettata per essere eseguita da initrd e rileva automaticamente il disco su cui è posizionata la partizione root, senza richiedere configurazioni aggiuntive oltre ai file di definizione delle modifiche.

    Nella pratica, systemd-repart può risultare utile per le immagini del sistema operativo, che inizialmente possono essere fornite in versione minima, e dopo il primo avvio espandersi per adattarsi alle dimensioni del dispositivo di blocco esistente o essere integrate con partizioni aggiuntive (ad esempio, la partizione root può espandersi per coprire l'intero disco o dopo il primo avvio può essere creata una partizione di scambio o /home). Un'altra applicazione possono essere configurazioni con due partizioni che si alternano — inizialmente può essere fornita solo la prima partizione, mentre la seconda viene creata al primo avvio.

  • È stata introdotta la possibilità di eseguire più istanze di systemd-journald, ciascuna delle quali registra i log nel proprio spazio dei nomi. Oltre al principale systemd-journald.service, nella cartella .service è stato proposto un modello per la creazione di istanze aggiuntive, legate ai propri spazi dei nomi tramite la direttiva «LogNamespace». Ogni spazio dei nomi dei log è gestito da un processo in background separato con il proprio set di impostazioni e limiti. Questa funzionalità proposta può rivelarsi utile per bilanciare il carico in caso di un elevato volume di log o per rafforzare l'isolamento delle applicazioni. In journalctl è stata aggiunta l'opzione «—namespace», che limita la query solo allo spazio dei nomi specificato.
  • In systemd-udevd and other systemd components, support for the mechanism of assigning alternative names to network interfaces has been added, allowing multiple names to be applied to a single interface at the same time. The name size can reach 128 characters (previously, the network interface name was limited to 16 characters). By default, systemd-udevd now assigns all name variants generated by supported naming schemes to each network interface. This behavior can be changed through the new settings AlternativeName and AlternativeNamesPolicy in .link files. In systemd-nspawn, generation of alternative names with the full name of the container for host-side veth links has been implemented.
  • The API sd-event.h has added support for the Linux kernel 'pidfd' subsystem to handle situations involving PID reuse (pidfd is bound to a specific process and does not change, while PID can be assigned to another process after the current process associated with that PID has finished). All systemd components, except for PID 1, have been transitioned to use pidfds if this subsystem is supported by the current kernel.
  • In systemd-logind, access verification for the virtual terminal switch operation has been ensured through PolicyKit. By default, the privileges to switch the active terminal are granted only to users who have initiated a session on the local virtual terminal at least once.
  • To simplify the creation of initrd images with systemd, the PID 1 handler now determines the usage in initrd and automatically loads initrd.target instead of default.target in this case. With this approach, initrd images and the main system can differ only by the presence of the file /etc/initrd-release.
  • A new kernel command line parameter has been added — 'systemd.cpu_affinity', equivalent to the CPUAffinity option in /etc/systemd/system.conf, allowing the CPU affinity mask for PID 1 and other processes to be configured.
  • The SELinux database is now reloaded together with the restart of PID 1 through commands such as 'systemctl daemon-reload'.
  • The PID 1 handler has added the setting 'systemd.show-status=error', where only error messages and significant delays during the boot process are displayed on the console.
  • In systemd-sysusers, support for creating users with a primary group name different from the username has been added.
  • In systemd-growfs, support for extending XFS partitions has been implemented through the mount option x-systemd.growfs in /etc/fstab, in addition to the previously supported extension of Ext4 and Btrfs partitions.
  • The x-initrd.attach option has been added in /etc/crypttab to specify an encrypted partition that has already been unlocked during the initrd stage.
  • Support has been added in systemd-cryptsetup for unlocking encrypted partitions using smart cards PKCS#11 (the pkcs11-uri option in /etc/crypttab), for example, to link partition encryption to YubiKeys.
  • New mount options 'x-systemd.required-by' and 'x-systemd.wanted-by' have been added in /etc/fstab for explicitly configuring units that define mount operations invoked instead of local-fs.target and remote-fs.target.
  • A new service sandbox isolation option has been added — ProtectClock, which restricts writing to system clocks (access is blocked at the /dev/rtc level, system calls, and permissions CAP_SYS_TIME/CAP_WAKE_ALARM).
  • In the specification Discoverable Partitions and systemd-gpt-auto-generator, partition definitions have been added.
    /var и /var/tmp.
  • In 'systemctl list-unit-files', a new column has been introduced that displays the enablement state suggested in manufacturer defaults for that type of unit.
  • The '—with-dependencies' option has been added to 'systemctl', so that commands like 'systemctl status' and 'systemctl cat' will output not only all relevant units but also the units they depend on.
  • In systemd-networkd, configuration for qdisc has been enhanced to support TBF (Token Bucket Filter), SFQ (Stochastic Fairness Queuing), CoDel (Controlled-Delay Active Queue Management), and FQ (Fair Queue) parameters.
  • Support for IFB (Intermediate Functional Block).
  • has been added to systemd-networkd in the [Route] section with the MultiPathRoute parameter for configuring multi-path routes.
  • For the DHCPv4 client in systemd-networkd, the SendDecline option has been added, so that after receiving a DHCP reply with an address, a duplicate address check is performed, and in the event of an address conflict, the issued address is declined. The RouteMTUBytes option has also been added for the DHCPv4 client, allowing the MTU size for routes generated from IP address bindings (leases) to be specified.
  • The PrefixRoute configuration in the '[Address]' section of the '.network' files has been deprecated. It has been replaced by the 'AddPrefixRoute' configuration, which has the opposite meaning.
  • Nei file .network è stata aggiunta la supporto per un nuovo valore "_dhcp" nella configurazione Gateway della sezione "[Route]", che consente la selezione di un percorso statico basato sul gateway configurato tramite DHCP.
  • Nei file .network sono state aggiunte impostazioni nella sezione "[RoutingPolicyRule]".
    User e SuppressPrefixLength per specificare il routing sorgente basato su intervalli UID e dimensione del prefisso.
  • In networkctl, il comando "status" può ora visualizzare i log associati a ciascuna interfaccia di rete.
  • In systemd-networkd-wait-online è stata aggiunta la supporto per specificare il tempo massimo di attesa per il passaggio dell'interfaccia allo stato attivo e per attendere la scomparsa dell'interfaccia.
  • Cessata l'elaborazione dei file .link e .network con sezioni "[Match]" vuote o commentate.
  • Nei file .link e .network, la sezione "[Match]" ha ora la configurazione "PermanentMACAddress" per verificare l'indirizzo MAC permanente dei dispositivi in caso di utilizzo di un MAC casuale generato.
  • La sezione "[TrafficControlQueueingDiscipline]" nei file .network è stata rinominata in "[NetworkEmulator]" e il prefisso "NetworkEmulator" è stato rimosso dai nomi delle relative impostazioni.
  • In systemd-resolved per DNS-over-TLS è stata aggiunta la supporto per la verifica SNI.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster