En quoi OpenBSD peut donc se vanter d'être plus mieux que les autres ? Quelles sont ses caractéristiques ? Abordons les point par point :

  • L'intransigeance sur le caractère open-source et la liberté du logiciel. OpenBSD est très rigoureux là-dessus : tout sera publié en licence BSD (et non en licence GPL). Je vous renvoie sur les liens pour plus de détails spécifiques. La principale différence. OpenBSD garantit donc totalement son code source, que vous pourrez réutiliser de la manière dont vous voulez (contrairement à la licence GPL de Linux), tout en respectant certains points bien entendu. Chaque logiciel inclu dans le système devra donc respecter et être compatible avec la licence BSD, ce qui n'est pas toujours le cas, et peut poser des problèmes (pensons à Apache 2). Mais quoiqu'il en soit, toutes ces autres applications sont disponibles dans le système de ports (comme FreeBSD).
  • Les caractéristiques propres aux systèmes *BSD sont également à l'ordre du jour (utilisations de ports, séparation système/applications,...).
  • La qualité de sa documentation (tout comme les autres systèmes *BSD) n'est plus à prouver, et contrairement aux distributions Linux, toute l'information est ici centralisée et traduite dans plusieurs langue. C'est clair, et vraiment bien fait.
  • L'aspect sécurité passera toujours avant l'aspect de performance. C'est un choix qui a été fait, et qui répond à certains besoins, et à d'autres non. Le noyau vérifiera par exemple chaque accès à la mémoire. Les API ont également été modifiées, comme les vieilles fonctions C (strlcpy, strlcat) pour éviter toute attaque de type buffer overflow. De plus, des fonctionnalités de cryptographie et de génération de nombres aléatoires ont été mises en place, notamment par des améliorations de la couche réseau et l'ajout de l'algorithme Blowfish pour le chiffrage des mots de passe.
  • La qualité de son code n'est également plus à prouver. Chaque ligne est minutieusement vérifiée par plusieurs personnes, le code est complètement audité. Il est de toutes façons disponibles via CVS pour toute personne désirant le vérifier. Le code est sans cesse relu pour vérifier son respect de certaines conventions.
  • La séparation des privilèges a été poussée à son extrême. Certains programmes sont tout simplement chrooté (emprisonnés) dans un répertoire, avec un utilisateur sans pouvoir. Ainsi, le risque d'attaque est clairement réduit, ou du moins, minimisé.

Toutes ces caractéristiques, ajoutées à la compétence des développeurs (souvent des experts dans tout ce qui se rapproche de la sécurité informatique) font qu'OpenBSD est à l'heure actuelle utilisé là où la sécurité est un besoin crucial (firewall, passerelle, serveur de fichiers,...). Son manque de paquets (qui s'explique par le faible nombre de développeurs, comparés à ceux de FreeBSD ou des distributions Linux), sans être ridicule, ajoutés à des performances - très légèrement- inférieures sur certains aspects, font qu'une utilisation "serveur" est souvent plus judicieuse qu'une utilisation "desktop". Mais ça fonctionne très bien quand même, d'ailleurs, je l'utilise également en tant que tel :-)

Les développeurs d'OpenBSD sont d'ailleurs ceux qui ont développé l'outil OpenSSH (qu'énormément de gens utilisent), qui a été porté sur une multitude de système (dont Linux). Il répond au besoin de disposer d'un outil permettant de prendre le contrôle d'une machine à distance tout en étant fiable et sécurisé. L'excellent firewall Packet Filter est également un de leur développement, bien qu'il n'ait été porté que sur les systèmes *BSD (trop dépendant du noyau et de sa couche réseau).

Il est à noter que le projet souffre actuellement de problèmes financier assez importants. Le financement d'OpenBSD se fait grâce à la vente tous les 6 mois de nouveaux jeux de CDs de la nouvelle release (la 4.2 sortira le 1er novembre), ainsi que de tee-shirts et d'affiches. Les développeurs recommandent clairement de les acheter pour assurer l'avenir d'OpenBSD.

On peut par contre élaborer quelques critiques à l'encontre d'OpenBSD (comme pour tout système, notons-le). Le premier étant son support matériel, bien que le problème vienne des constructeurs ayant du mal à livrer des drivers libres, ou alors des documentations. Et le problème est encore plus délicat que pour Linux étant donnés que ceux-ci doivent être publiés en licence BSD et non GPL. Il peut donc se dérouler plusieurs releases avant de voir son matériel supporté. Son deuxième défaut pourrait être son aspect un peu rudimentaire sur certaines parties (installateur par exemple), mais cela rentre clairement dans la logique des développeurs : If it ain't broke, don't fix it!.

A qui s'adresse OpenBSD alors ? A ceux désirant avoir un OS complètement libre, vraiment stable mais aussi sécurisé. D'ailleurs, le slogan nous le rappelle : OpenBSD : free, functional & secure. Nous pouvons résumer la philosophie d'OpenBSD avec la phrase suivante : Celui qui est prêt à offrir un peu de sa liberté pour plus de sécurité, ne mérite ni l'un ni l'autre. Tout est dit.