Namespaces et seccomp BPF : un zoom sur la conteneurisation Linux

Magazine
Marque
MISC
Numéro
102
Mois de parution
mars 2019
Domaines


Résumé

À l’heure où de nombreuses applications sont délivrées sous la forme de conteneurs (notamment Docker), peu savent réellement comment ces derniers sont cloisonnés du reste du système. Peut-être encore plus rares sont ceux qui mettent en œuvre ces technologies de leur propre chef, pour réduire l’impact d’une compromission.Cet article s’attache à présenter les namespaces Linux, ainsi que seccomp BPF, puis à les employer à l’aide de systemd pour démontrer, par l’exemple, comment durcir un serveur web applicatif.


 

1. Introduction aux namespaces

Les namespaces sont une fonctionnalité de sécurité introduite dans le noyau Linux au début des années 2000. À l’origine une simple méthode permettant de présenter différentes vues du système de fichiers à des processus distincts, elle s’est enrichie au cours des années suivantes. À ce jour, il existe ainsi sept namespaces dans le noyau Linux, s’efforçant de présenter des ressources système sous des aspects différents en fonction du processus qui les emploie.

Certains namespaces ont des usages parfaitement anecdotiques, comme le namespace UTS qui permet de renvoyer un nom d’hôte (hostname) distinct à des processus. Cela peut être employé notamment par les conteneurs pour simuler l’exécution sur un hôte distinct.

D’autres namespaces sont plus utiles pour l’isolation :

  • NS, qui permet d’avoir des points de montage de systèmes de fichiers différents ; cela peut être astucieusement mis en...
Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite


Articles qui pourraient vous intéresser...

Le DevOps en pratique

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Aujourd’hui, le terme DevOps est au cœur de la transformation digitale. En effet, lorsqu’on évoque l’agilité dans le cycle de vie de développement logiciel, on est amené à pratiquer des méthodologies permettant d’accélérer d’une part le processus de développement et de fiabiliser la production logicielle d’un autre côté. Parmi ces méthodologies (Scrum, Kanban…), le DevOps est certainement celle qui a été adopté par la plupart des entreprises ayant comme activité principale ou annexe, la digitalisation de leur système d’information pour faire face au défi que représente l’essor des technologies numériques. Dans cet article, nous ferons un premier tour d’horizon de la partie outillage du DevOps. Il existe une panoplie d’outils et il est impossible de les évoquer tous dans un seul article, car chaque outil nécessiterait un ouvrage à part entière.

Découverte de la puce Titan M a.k.a Citadel

Magazine
Marque
MISC
Numéro
114
Mois de parution
mars 2021
Domaines
Résumé

La puce Titan M ou Citadel est une puce sécurisée sur laquelle repose en grande partie la sécurité des terminaux Android de Google, la gamme Pixel. Dans cet article, nous détaillerons le fonctionnement interne et les usages de ce composant pour lequel peu d’information publique est disponible à ce jour. Nous donnerons également plusieurs pistes pour aider le rétro-ingénieur à travailler sur ce projet.

Créez vos clusters avec Elasticsearch

Magazine
Marque
Linux Pratique
Numéro
124
Mois de parution
mars 2021
Domaines
Résumé

Vous êtes-vous déjà demandé comment Facebook et Google gèrent leurs immenses masses de données tout en fournissant des services rapides ? Quelle serait votre solution pour gérer une base de données avec un trafic de données abondant ? Voici quelques éléments de réponse à ces questions.

Recréer un ancien environnement à l’aide de Docker

Magazine
Marque
GNU/Linux Magazine
HS n°
Numéro
113
Mois de parution
mars 2021
Domaines
Résumé

Docker est un mot à la mode qu’on associe volontiers à microservices et autre Cloud. Cependant, nous allons voir ici qu’il peut aussi rendre des « macroservices » :-) dans un cadre tout à fait différent, voire contraire : celui de la maintenance logicielle !