Systemd 245 avec la mise en œuvre de répertoires utilisateurs portables est disponible

Après trois mois de développement présenté la publication du gestionnaire système systemd 245. Dans cette nouvelle version, de nouveaux composants systemd-homed et systemd-repart ont été ajoutés, la prise en charge de profils utilisateurs portables au format JSON a été incluse, la possibilité de définir des espaces de noms dans systemd-journald a été assurée, et le mécanisme « pidfd » a été ajouté. Le site a été entièrement reconçu du projet, où la majeure partie de la documentation disponible est rassemblée et un nouveau logo a été proposé.

Systemd 245 avec la mise en œuvre de répertoires utilisateurs portables est disponible

Principales modifications:

  • Un service a été ajouté systemd-homed, qui gère des répertoires personnels portables, fournis sous forme d'image de fichier montable, avec des données chiffrées. Systemd-homed permet de créer des environnements autonomes pour les données utilisateur, pouvant être transférés entre différents systèmes sans se soucier de la synchronisation des identifiants et de la confidentialité. Les paramètres des informations d'identification des utilisateurs sont associés au répertoire personnel plutôt qu'aux paramètres systèmes — au lieu de /etc/passwd, /etc/group et /etc/shadow, un profil au format JSON. Pour plus de détails, voir le dernier annonce systemd-homed.
  • Un composant associé à systemd-homed, «userdb» (« systemd-userdb »), qui traduit les comptes UNIX/glibc NSS en enregistrements JSON et fournit une API Varlink unifiée pour interroger et itérer sur les enregistrements. Dans le profil JSON lié au répertoire personnel, les paramètres nécessaires au fonctionnement de l'utilisateur sont indiqués, y compris les données sur le nom, le hachage du mot de passe, les clés de chiffrement, les quotas et les ressources fournies. Le profil peut être certifié par une signature numérique, stockée sur un token externe Yubikey. Pour gérer les profils, un outil « userdbctl » a été proposé. Le support des profils au format JSON a été ajouté dans divers composants de systemd, y compris systemd-logind et pam-systemd, permettant aux utilisateurs de répertoires portables d'organiser l'authentification, la connexion, la configuration des variables d'environnement, la création de sessions, l'établissement de limites, etc. À l'avenir, une fonctionnalité de génération de profils JSON par le cadre sssd, avec stockage des paramètres utilisateur dans LDAP, est attendue.
  • Une nouvelle utilitaire « systemd-repart » a été ajoutée pour la re-partition des tables de partitions de disque au format GPT. La structure des partitions est définie de manière déclarative à travers des fichiers décrivant quelles partitions doivent ou peuvent exister. À chaque démarrage, la table de partitions réelle est comparée à ces fichiers, après quoi les partitions manquantes sont ajoutées ou, si la taille relative ou absolue spécifiée dans les paramètres ne correspond pas, la taille des partitions existantes est augmentée. Seules les modifications incrémentales sont autorisées, c'est-à-dire que la suppression et la réduction de taille ne sont pas possibles, les partitions ne peuvent qu'être ajoutées et augmentées.
    L'utilitaire est principalement conçu pour être exécuté à partir de initrd et détermine automatiquement le disque sur lequel la partition racine est placée, ce qui ne nécessite aucune configuration supplémentaire en dehors des fichiers définissant les modifications.

    En pratique, systemd-repart peut s'avérer utile pour les images du système d'exploitation qui peuvent d'abord être livrées sous une forme minimale et s'étendre après le premier démarrage jusqu'à la taille du périphérique de bloc existant ou être complétées par des partitions supplémentaires (par exemple, la partition racine peut être étendue pour couvrir l'ensemble du disque ou, après le premier démarrage, une partition d'échange ou /home peut être créée). Une autre utilisation peut être des configurations avec deux partitions alternantes — au départ, seule la première partition peut être fournie, et la seconde peut être créée au premier démarrage.

  • Il est maintenant possible de démarrer plusieurs instances de systemd-journald, chacune tenant des journaux dans son espace de noms. En plus du service principal systemd-journald.service, un modèle est proposé dans le répertoire .service pour créer des instances supplémentaires liées à leurs propres espaces de noms à l'aide de la directive « LogNamespace ». Chaque espace de noms de journal est géré par un processus d'arrière-plan distinct avec son propre ensemble de paramètres et de limites. La possibilité proposée peut être utile pour équilibrer la charge en cas de volumes élevés de journaux ou pour renforcer l'isolation des applications. Une option « —namespace » a été ajoutée à journalctl, limitant la requête à l'espace de noms spécifié.
  • Dans systemd-udevd et d'autres composants de systemd, un mécanisme de nomination d'alternatives pour les interfaces réseau a été ajouté, permettant d'appliquer plusieurs noms à une seule interface simultanément. La taille du nom peut atteindre 128 caractères (auparavant, le nom de l'interface réseau était limité à 16 caractères). Par défaut, systemd-udevd assigne désormais à chaque interface réseau toutes les variantes de noms générées par les schémas de nomination pris en charge. Ce comportement peut être modifié via les nouvelles options AlternativeName et AlternativeNamesPolicy dans les fichiers .link. Dans systemd-nspawn, la génération de noms alternatifs avec le nom complet du conteneur pour les liens veth créés côté hôte a été mise en œuvre.
  • Dans l'API sd-event.h, le support du sous-système du noyau Linux « pidfd » a été ajouté pour traiter les situations de réutilisation des PID (pidfd est lié à un processus spécifique et ne change pas, tandis que le PID peut être associé à un autre processus après l'achèvement du processus actuel associé à ce PID). Tous les composants de systemd, à l'exception du PID 1, ont été convertis pour utiliser les pidfds, si ce sous-système est pris en charge par le noyau actuel.
  • Dans systemd-logind, un contrôle d'accès à l'opération de changement de terminal virtuel a été assuré via PolicyKit. Par défaut, les droits de changement de terminal actif ne sont accordés qu'aux utilisateurs ayant initié une session à au moins une reprise sur un terminal virtuel local.
  • Pour simplifier la création d'images initrd avec systemd, le gestionnaire PID 1 détermine l'utilisation dans initrd et, dans ce cas, charge automatiquement initrd.target au lieu de default.target. Avec cette approche, les images initrd et du système principal peuvent différer uniquement par la présence du fichier /etc/initrd-release.
  • Un nouveau paramètre de ligne de commande du noyau a été ajouté — « systemd.cpu_affinity », équivalent de l'option CPUAffinity dans /etc/systemd/system.conf, permettant de configurer le masque d'affinité CPU pour PID 1 et d'autres processus.
  • Le rechargement de la base SELinux est assuré avec le redémarrage de PID 1 via des commandes telles que « systemctl daemon-reload ».
  • Dans le gestionnaire PID 1, un paramètre « systemd.show-status=error » a été ajouté, qui, lorsqu'il est activé, affiche uniquement les messages d'erreur et les retards significatifs lors du démarrage sur la console.
  • Dans systemd-sysusers, le support pour la création d'utilisateurs avec un nom de groupe principal différent de celui de l'utilisateur a été ajouté.
  • Dans systemd-growfs, la prise en charge de l'extension des partitions XFS a été ajoutée via l'option de montage x-systemd.growfs dans /etc/fstab, en plus de l'extension des partitions Ext4 et Btrfs précédemment prise en charge.
  • Dans /etc/crypttab, l'option x-initrd.attach a été ajoutée pour identifier la partition chiffrée déjà déverrouillée à l'étape initrd.
  • Dans systemd-cryptsetup, la prise en charge du déverrouillage des partitions chiffrées à l'aide de cartes à puce PKCS#11 a été ajoutée (option pkcs11-uri dans /etc/crypttab), par exemple pour associer le chiffrement des partitions aux clés YubiKeys.
  • De nouvelles options de montage « x-systemd.required-by » et « x-systemd.wanted-by » ont été ajoutées dans /etc/fstab pour configurer explicitement les unités définissant les opérations de montage, invoquées à la place de local-fs.target et remote-fs.target.
  • Une nouvelle option d'isolement sandbox pour les services — ProtectClock — a été ajoutée, limitant l'écriture dans l'horloge système (l'accès est bloqué au niveau de /dev/rtc, des appels système et des autorisations CAP_SYS_TIME/CAP_WAKE_ALARM).
  • Dans la spécification Partitions Découvrables et systemd-gpt-auto-generator, la définition des partitions a été ajoutée.
    /var и /var/tmp.
  • Dans « systemctl list-unit-files », un nouveau colonne affichant l'état d'activation recommandé par le fabricant pour ce type d'unités a été ajoutée lors de l'affichage de la liste des unités.
  • Dans « systemctl », l'option « —with-dependencies » a été ajoutée, de sorte que les commandes telles que « systemctl status » et « systemctl cat » affichent non seulement toutes les unités correspondantes, mais aussi celles dont elles dépendent.
  • Dans systemd-networkd, la configuration qdisc a été mise à jour pour permettre la configuration des paramètres TBF (Token Bucket Filter), SFQ (Stochastic Fairness Queuing), CoDel (Controlled-Delay Active Queue Management) et FQ (Fair Queue).
  • Dans systemd-networkd, la prise en charge des dispositifs réseau IFB (Intermediate Functional Block).
  • Dans systemd-networkd, le paramètre MultiPathRoute a été implémenté dans la section [Route] pour la configuration des routes multi-chemins.
  • Dans systemd-networkd, l'option SendDecline a été ajoutée pour le client DHCPv4, qui vérifie les doublons d'adresses après réception d'une réponse DHCP avec une adresse, et en cas de conflit d'adresses, l'adresse attribuée est rejetée. Pour le client DHCPv4, l'option RouteMTUBytes, qui permet de définir la taille de MTU pour les routes générées à partir des baux d'adresses IP, a également été ajoutée.
  • La configuration PrefixRoute dans la section « [Address] » des fichiers « .network » a été déclarée obsolète. Elle est remplacée par la configuration « AddPrefixRoute », qui a un sens inverse.
  • Dans les fichiers .network, la configuration Gateway de la section «[Route]» a été ajoutée avec le support d'une nouvelle valeur «_dhcp», qui permet de choisir une route statique en fonction de la passerelle configurée via DHCP.
  • Dans les fichiers .network, la section «[RoutingPolicyRule]» a introduit des paramètres
    User et SuppressPrefixLength pour définir le routage source basé sur les plages UID et la taille du préfixe.
  • Dans networkctl, la commande «status» permet désormais d'afficher les journaux associés à chaque interface réseau.
  • Dans systemd-networkd-wait-online, la prise en charge de la définition du temps d'attente maximal pour que l'interface passe à l'état opérationnel et pour attendre la disparition de l'interface a été ajoutée.
  • Le traitement des fichiers .link et .network avec une section «[Match]» vide ou commentée a été arrêté.
  • Dans les fichiers .link et .network, la section «[Match]» a introduit le paramètre «PermanentMACAddress» pour vérifier l'adresse MAC permanente des appareils lors de l'utilisation d'une MAC aléatoire générée.
  • La section «[TrafficControlQueueingDiscipline]» dans les fichiers .network a été renommée en «[NetworkEmulator]», et le préfixe «NetworkEmulator» a été supprimé des noms des paramètres associés.
  • Dans systemd-resolved, la prise en charge de la vérification SNI pour DNS-over-TLS a été ajoutée.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster