GNU/Linux Magazine Hors-série N°
Numéro
74

Les systèmes BSD

Temporalité
Septembre/Octobre 2014
Image v3
Les systèmes BSD
Article mis en avant

Résumé

Huit ans. Huit ans se sont écoulés depuis les deux derniers numéros hors-séries BSD et le mook que vous tenez entre les mains. Il y a huit ans, il est probable qu'une bonne partie d'entre vous n'avait même jamais touché un système UNIX/Linux, et réalisait plutôt son grand œuvre Lego(c)(tm).

Pendant ces huit années, le monde du Libre a proprement explosé, il est partout, omniprésent sur vos mobiles, vos tablettes, votre télé ou votre point d'accès Wi-Fi ; et si des sociétés telles que Google ne se cachent pas d'utiliser le système GNU/Linux comme socle entre l'espace utilisateur et le matériel, d'autres, sans totalement le masquer, ne font pas étalage des technologies libres constituant la pierre angulaire de leurs systèmes. En tête de liste notons particulièrement la société Apple, dont l'espace utilisateur du système d'exploitation Mac OS X est directement issu de FreeBSD.

Dans ce numéro...


« Salut, je voudrais installer *BSD, vous me conseillez quoi ? »Cette phrase, lue et relue des centaines, des milliers de fois, est fondamentalement incorrecte. *BSD n'existe pas. Plus important, lorsque l'on souhaite mettre le pied à l'étrier d'un système BSD, un minimum de contexte est nécessaire, car chacun des héritiers de BSD UNIX suit une philosophie bien définie, et si chacun d'entre eux s'avère éminemment versatile, certains seront plus adaptés et faciles d'accès fonction de l'utilisation souhaitée. Nous allons ici faire connaissance avec les trois systèmes BSD les plus connus, NetBSD, FreeBSD et OpenBSD et évoquer leurs forces et faiblesses afin de guider votre choix de façon la plus objective possible.
Pourquoi jouer sous un *BSD qui n'est pas vraiment conçu pour cela ? Pourquoi ne pas coder simplement ? Parce que nous sommes des êtres humains et que, parfois, jouer un peu ça fait tout simplement du bien !
Derrière ce titre se cache beaucoup de magie. En effet, autour des commandes de base utilisées pour manipuler les paquets sous OpenBSD (telles que pkg_add, pkg_info, pkg_delete...) se trouve un ensemble d'outils pour chercher, vérifier, récupérer, signer, et que sais-je encore faire avec les paquets, ainsi qu'une API Perl. Oui, les pkg_tools sont écrits en Perl. Pas en Python, ni en Ruby, ni en Go, ni en Fortran, ni en Scala, ni en Swift, ni en Dart.... Le bon vieux Perl qui fait chaud aux yeux quand on lit son code.
Pour des raisons X ou Y, il se trouve que des fois on ne veut pas utiliser les paquets fournis par les miroirs officiels OpenBSD. On peut être en environnement fermé/paranoïaque/NSA-compliant, et vouloir re-construire soi-même tous les paquets ou alors (et c'est le cas d'utilisation que je vais exposer ici), on peut vouloir faire des builds de tout le ports-tree avec des diffs non encore validés, mais pouvant impacter une bonne partie de l'arbre (par exemple, une mise à jour majeure de glib/gtk, ou de WebKit, ou de Python...).
Si vous avez déjà joué avec un BSD, vous devez certainement connaître (et apprécier) Packet Filter (PF), le firewall développé sur OpenBSD. Si ce n'est pas le cas, on a déjà sûrement dû vous en vanter la syntaxe claire par rapport à celle incompréhensible d'iptables (certes, au bout de la 15ème fois qu'on utilise une commande, on commence à se rappeler à quoi sert l'obscure option -machin). Mais quid du queueing avec PF ?
Dans la vie, on a tous besoin d'un firewall. Il existe dans le monde du libre grosso modo deux familles : Packet Filter (PF) côté BSD (existe en différents parfums) et Netfilter côté Linux, avec le célèbre iptables comme interface de pilotage. Dans cet article, nous parlerons d'un frontend à PF nommé pfSense.
« The Original UNIX », c'est pour cette punchline que j'avais voté lorsque le groupe chargé du marketing chez NetBSD cherchait une approche différente du classique « of course it runs NetBSD » ; néanmoins, s'il est l'héritier le plus direct des travaux du CSRG [1] et l'un des plus grands défenseurs de la portabilité du code, le projet NetBSD n'est certainement pas un système d'exploitation du passé, loin s'en faut. Bénéficiant des avancées standards d'autres OS, NetBSD dispose en outre d'avantages uniques dont l'administrateur système aguerri saura faire usage. Dans cet article, nous allons monter un serveur web articulé autour de briques modernes, et allons dans notre périple découvrir l'ensemble des éléments nécessaires au déploiement d'un système aussi réactif que respectueux des standards.
Bhyve est l'hyperviseur de FreeBSD disponible à partir de sa version 10.0. C'est un hyperviseur de niveau 2, c'est-à-dire qu'il s'agit d'un logiciel, s'exécutant sur un système d'exploitation hôte, qui simule une machine physique. On peut ainsi exécuter un ou plusieurs système(s) d'exploitation invité(s) sur une même machine.
En ces temps de cloud et virtualisation à tout va, il devient plus rentable financièrement et d'un point de vue de la sécurité d'utiliser des containers situés soit sur une machine dédiée, soit sur un serveur virtuel. On peut noter que Linux dispose de LXC [1] depuis un certain temps, ainsi que d'une surcouche à celui-ci nommée Docker [2] et disposant de moultes fonctionnalités supplémentaires. Nous allons voir ici la solution de FreeBSD répondant à ce problème, les Jails [3].

Magazines précédents

Python : niveau avancé à expert
GNU/Linux-Magazine Hors-série N°73
Python : niveau avancé à expert
Ligne de commandes
GNU/Linux-Magazine Hors-série N°72
Ligne de commandes
Je programme
GNU/Linux-Magazine Hors-série N°71
Je programme
Langage C
GNU/Linux-Magazine Hors-série N°70
Langage C
Exploiter au mieux votre projet open source
GNU/Linux-Magazine Hors-série N°69
Exploiter au mieux votre projet open source

Les derniers articles Premiums

Les derniers articles Premium

Sécurisez vos applications web : comment Symfony vous protège des menaces courantes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les frameworks tels que Symfony ont bouleversé le développement web en apportant une structure solide et des outils performants. Malgré ces qualités, nous pouvons découvrir d’innombrables vulnérabilités. Cet article met le doigt sur les failles de sécurité les plus fréquentes qui affectent même les environnements les plus robustes. De l’injection de requêtes à distance à l’exécution de scripts malveillants, découvrez comment ces failles peuvent mettre en péril vos applications et, surtout, comment vous en prémunir.

Bash des temps modernes

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Les scripts Shell, et Bash spécifiquement, demeurent un standard, de facto, de notre industrie. Ils forment un composant primordial de toute distribution Linux, mais c’est aussi un outil de prédilection pour implémenter de nombreuses tâches d’automatisation, en particulier dans le « Cloud », par eux-mêmes ou conjointement à des solutions telles que Ansible. Pour toutes ces raisons et bien d’autres encore, savoir les concevoir de manière robuste et idempotente est crucial.

Présentation de Kafka Connect

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Un cluster Apache Kafka est déjà, à lui seul, une puissante infrastructure pour faire de l’event streaming… Et si nous pouvions, d’un coup de baguette magique, lui permettre de consommer des informations issues de systèmes de données plus traditionnels, tels que les bases de données ? C’est là qu’intervient Kafka Connect, un autre composant de l’écosystème du projet.

Le combo gagnant de la virtualisation : QEMU et KVM

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

C’est un fait : la virtualisation est partout ! Que ce soit pour la flexibilité des systèmes ou bien leur sécurité, l’adoption de la virtualisation augmente dans toutes les organisations depuis des années. Dans cet article, nous allons nous focaliser sur deux technologies : QEMU et KVM. En combinant les deux, il est possible de créer des environnements de virtualisation très robustes.

Body