Prenons l'exemple d'un appareil médical exécutant Linux dans un hôpital. Il traite les données des patients, ajuste le dosage et transmet les rapports aux systèmes cliniques. Ou un distributeur automatique au coin d'une rue, traitant des transactions 24 heures sur 24. Ou une passerelle en bordure de réseau de fabrication, relayant les données des capteurs de l'usine. Le système d'exploitation de chacun de ces appareils a été vérifié lors de son installation. Mais chaque binaire et chaque bibliothèque correspondent-ils toujours exactement à ce qui a été créé ? Si vous exigez cette garantie pour un appareil dans une salle d'opération ou une usine, pourquoi ne pas attendre la même chose des serveurs qui font tourner votre entreprise ?
La faille dans votre chaîne de démarrage
Généralement, l'installation par défaut d'un système d'exploitation générique est « déverrouillée », ce qui vous permet d'être root sur votre ordinateur et d'effectuer des modifications persistantes. Ainsi, même si une installation générique de Red Hat Enterprise Linux (RHEL) ou Debian prend en charge le démarrage sécurisé, seul le noyau est généralement signé. La chaîne de confiance cryptographique du micrologiciel ne couvre pas le système de fichiers racine ni les applications. Mais pour les organisations qui souhaitent créer des « appliances », il est possible de renforcer la sécurité en liant le démarrage sécurisé à l'intégrité du système d'exploitation, à l'aide de signatures personnalisées.
Des workflows de conteneurs à l'intégrité du système d'exploitation
La plupart des organisations créent, signent et déploient déjà des images de conteneurs via des pipelines CI/CD. Chaque extraction de conteneur vérifie un condensé cryptographique. Chaque fois qu'un nouveau conteneur démarre, l'environnement d'exécution confirme que l'image correspond à la signature. Les organisations font déjà confiance à ce modèle pour leurs applications.
Le mode image pour RHEL apporte ce même workflow de conteneurs au système d'exploitation lui-même. Au lieu d'installer et de configurer un système d'exploitation manuellement ou via des scripts, vous le définissez dans un Containerfile (ou un autre système de création OCI compatible), vous le créez sous forme d'image de conteneur et vous le déployez avec bootc. Le système d'exploitation devient un artefact versionné et reproductible qui suit le même pipeline que vos applications. Les mises à jour sont atomiques. La fonction de restauration (rollback) est intégrée. Chaque système déployé exécute l'image que vous avez créée, et vous pouvez remonter cette image jusqu'au système de création qui l'a produite.
Grâce au mode image, les images scellées vont encore plus loin. L'image du système d'exploitation que vous avez créée et signée bénéficie désormais d'une vérification cryptographique, du micrologiciel à l'exécution. Vous n'adoptez pas un nouveau processus. Vous étendez une relation de confiance existante, depuis vos applications jusqu'à la couche du système d'exploitation.
Fonctionnement
Le démarrage sécurisé et une image de noyau unifiée et signée vérifient déjà la chaîne de démarrage : Chargeur de démarrage, noyau, initramfs. Les images scellées étendent la vérification à l'image même du système d'exploitation immuable, avec une précision au niveau du fichier. À l'aide de composefs et de fs-verity, un condensé cryptographique de l'image de conteneur du système d'exploitation est intégré directement dans l'UKI signé au moment de la création. Au moment de l'exécution, chaque fichier que vous ou votre équipe avez ajouté à cette image est vérifié individuellement par rapport à ce condensé. Le système refuse de charger tout fichier de système d'exploitation qui ne correspond pas. Si un élément a été modifié, corrompu ou remplacé après la création de l'image, le noyau renvoie une erreur d'E/S. Le système ne transmet pas le fichier. Il n'est pas simplement journalisé avant d'être rendu accessible, ni signalé puis transmis. Il est tout simplement illisible. Le contenu altéré a effectivement disparu, de sorte que le noyau ne le transmet à aucun processus.
Ce que cela signifie pour votre infrastructure
La chaîne de signature est sous votre contrôle. Vous générez les clés, vous signez les images et vous décidez des éléments auxquels vos systèmes font confiance. Aucun fournisseur n'est requis dans votre chaîne de contrôle.
Depuis des années, les organismes à haut niveau de sécurité dans les secteurs de l'État, de la finance et de la santé exigent ce niveau d'intégrité du système d'exploitation. Les images scellées le garantissent, et cette fonctionnalité est disponible pour toute entreprise qui le souhaite. Il n'est pas nécessaire de travailler dans un secteur réglementé pour vouloir s'assurer que votre système d'exploitation correspond exactement à ce que vous avez créé.
Il convient de préciser ce que les images scellées couvrent. Le scellement protège les fichiers dans l'image du système d'exploitation immuable : Le système d'exploitation de base et tous les logiciels que vous y superposez. Vos agents de surveillance, vos outils de sécurité, vos binaires d'application et les paquets spécifiques que votre équipe a ajoutés à l'image de base. L'ensemble est scellé. Cela ne couvre pas la configuration accessible en écriture dans /etc ni l'état d'exécution dans /var. Cette distinction est délibérée. Le scellement protège le système d'exploitation que vous avez créé. Vos outils de gestion de la configuration et de sécurité de l'exécution aident à protéger le reste.
Au début de cet article, j'ai mentionné un appareil médical et un distributeur automatique, mais cela va bien au-delà de ces exemples. Imaginez un datacenter, un parc d'appareils edge ou un atelier de fabrication. Un seul Containerfile définit le système d'exploitation. Un pipeline la construit, la signe et la scelle. La même image scellée se déploie sur du bare metal, des machines virtuelles et des instances cloud. Cette même intégrité l'accompagne partout. Il ne s'agit pas d'une fonctionnalité de niche pour un cas d'utilisation restreint. C'est à cela que devrait ressembler l'intégrité d'un système d'exploitation.
Lancez-vous
Les images scellées sont disponibles en aperçu technologique dans RHEL 10.2. Il repose sur des technologies Linux en amont, notamment d'importants composants du projet systemd et des outils existants pour le démarrage sécurisé et composefs. Ce dernier offre un moyen efficace et flexible d'assurer l'intégrité, comme le permet dm-verity, mais avec la flexibilité d'une approche basée sur le système de fichiers. C'est dans cette direction que s'oriente la gestion des systèmes d'exploitation. L'aperçu technologique est accessible, les outils sont déjà opérationnels et nous publierons au cours des prochaines semaines sur le blog Red Hat Developer une série de guides étape par étape pour vous montrer concrètement comment créer et vérifier des systèmes grâce à cette méthode.
Essai de produit
Red Hat Enterprise Linux | Essai de produit
À propos des auteurs
Mark joined Red Hat in 2014 and is part of the RHEL and OpenShift product management teams. Before that, he had experience as: a sysadmin, a support tech for multiple Linux distros, a consulting architect and an engineering partnership manager. He loves discussing image-based operating systems, edge scenarios, and container engines. Outside of work, Mark enjoys going to see punk rock and other weird music shows in tiny clubs.
Plus de résultats similaires
Red Hat Enterprise Linux Long-Life Add-On : votre solution RHEL sans date de fin prédéterminée
Comment votre infrastructure doit-elle se connecter à Red Hat Lightspeed ?
Infrastructure At The Edge | Compiler
Operating System Management | Compiler
Parcourir par canal
Automatisation
Les dernières nouveautés en matière d'automatisation informatique pour les technologies, les équipes et les environnements
Intelligence artificielle
Actualité sur les plateformes qui permettent aux clients d'exécuter des charges de travail d'IA sur tout type d'environnement
Cloud hybride ouvert
Découvrez comment créer un avenir flexible grâce au cloud hybride
Sécurité
Les dernières actualités sur la façon dont nous réduisons les risques dans tous les environnements et technologies
Edge computing
Actualité sur les plateformes qui simplifient les opérations en périphérie
Infrastructure
Les dernières nouveautés sur la plateforme Linux d'entreprise leader au monde
Applications
À l’intérieur de nos solutions aux défis d’application les plus difficiles
Virtualisation
L'avenir de la virtualisation d'entreprise pour vos charges de travail sur site ou sur le cloud