OpenBSD 6.1 est disponible depuis le 11 avril 2017. OpenBSD est un système d’exploitation orienté sécurité et réseau, dont les principaux avantages sont la stabilité, grâce aux audits sur le code source, mais également l’ensemble très large de fonctionnalités réseau qu’il fournit.
Certaines nouveautés sont détaillées en seconde partie de cet article, qui reprend en grande partie la page d’annonce.
Sommaire
- Plates‐formes
- Virtualisation
- Réseau
- Installation
- Sécurité
- Administration
- Aperçu des mises à jour de logiciels
- Errata et premiers correctifs binaires
- CD aux enchères !
Plates‐formes
Une nouvelle plate‐forme fait son apparition : arm64. Elle utilise clang comme compilateur par défaut pour le système de base, alors que les autres plates‐formes utilisent un GCC modifié par l’équipe d’OpenBSD.
Pour AMR v7, il y a plusieurs améliorations importantes dont le fait d’utiliser EABI (Embedded ABI est un groupe d’ABI proposé par ARM qui améliore les performances) et la prise en charge de nombreux matériels supplémentaires.
À noter que les plates‐formes suivantes sont abandonnées : armish, SPARC (abandonné aussi par Debian lors de la sortie de Jessie) et zaurus.
Virtualisation
La gestion de la virtualisation via vmm(4)
et vmd(8)
a en fait été introduite lors d’OpenBSD 5.9, mais ces composants étaient désactivés par défaut. Ils sont dorénavant actifs. L’hôte peut maintenant être basé sur amd64 et i386. De plus, les prérequis matériels ont diminué : il n’est plus nécessaire d’avoir des instructions VMX non limitées pour les invités, cela signifie que les processeurs Intel à partir de Nehalem (sorti en 2008) peuvent être utilisés.
Côté invité, on remarquera la possibilité d’utiliser un système GNU/Linux, ou de lui allouer plus de 2 Gio de mémoire vive.
Côté configuration, vm.conf(5)
permet de spécifier l’uid et le gid d’une machine virtuelle, ainsi que la configuration automatique des interfaces réseau bridge et switch.
Réseau
Wi‐Fi
- nouvelle implémentation de MiRa, un algorithme pour l’adaptation du débit lors de l’utilisation de la norme 802.11n ;
- TKIP/WPA 1 est désactivé par défaut, à cause des problèmes de sécurité du protocole.
Pile réseau générique
Quelques nouveautés dans les interfaces réseau :
- une nouvelle interface réseau fait son apparition,
switch(4)
, et permet d’être contrôlée par les messages OpenFlow ; - avec cette interface viennent le démon
switchd(8)
et le programme de contrôleswitchctl(8)
; - la pseudo‐interface gre(4) se dote d’un nouveau mode d’opération,
mobileip(4)
; - vxlan(4) permet désormais le multi‐point à multi‐point.
Les outils ne sont pas en reste :
- les deux commandes
route(8)
etnetstat -r
affichent correctement les drapeaux des routes et ces derniers sont complètement documentés dans la page de manuel denetstat(1)
; - selon les adresses,
ipsecctl(8)
peut grouper automatiquement les paquets SA ; pour clarifier ce qu’il se passe, le noyau fournit cette information etipsecctl -s sa
renvoie les paquets SA IPsec.
Il y a aussi quelques améliorations du côté de la pile TCP :
- lors de l’envoi de flux TCP, ces derniers sont stockés localement dans de grosses grappes mbuf pour améliorer la gestion de la mémoire ;
- le tampon maximum est passé de 256 Kio à 2 Mio, ce qui veut dire que l’empreinte d’OpenBSD, notamment utilisé dans le pare‐feu pf, a changé ;
- le drapeau
TCP_NOPUSH
fonctionne avec les sockets listen ; - beaucoup de code a été retiré ou simplifié pour faciliter la transition vers du code multiprocesseur, le code d’interruption de verrouillage multiprocesseur a notamment été remodelé.
La brique de pare‐feu, pf, voit arriver quelques nouveautés elle aussi :
- lors du transfert de paquets depuis la pile réseau vers l’interface, on s’assure qu’ils ne contiennent pas de pointeurs vers
pf(4)
qui pourraient entraîner une opération de libération de mémoire à un mauvais niveau de protection ; - le calcul de la somme de contrôle dans la conversion des paquets ICMP af-to a été réparé ;
- au passage, le traitement af-to est simplifié et la découverte des chemins MTU dans quelques cas particuliers réparée elle aussi ;
- le traitement de la fragmentation IPv6 a aussi été amélioré :
- abandon rapide des fragments atomiques vides,
- augmentation de la paranoïa lorsque des en‐têtes IPv6 saut à saut apparaissent après des fragments d’en‐tête,
- suivi plus strict de la RFC 5722 « Manipulation des fragments IPv6 qui se superposent » dans
pf(4)
, - la RFC 8021 « fragments atomiques IPv6 considérés comme dangereux » rend caduque la génération des fragments atomiques, donc on ne les envoie plus.
Enfin, un nouveau message de socket de routage, RTM_PROPOSAL, a été ajouté afin de faciliter les futures améliorations du processus de configuration du réseau.
Démons et autres outils réseau
Les outils réseau évoluent dans OpenBSD 6.1 :
-
ping(8)
etping6(8)
fusionnent au sein du même outil ; - les programmes utilisant UDP peuvent maintenant spécifier une adresse source en utilisant
IP_SENDSRCADDR
,iked(8)
(utilisé pour les tunnels chiffrés IPSec) etsnmpd(8)
utilisent maintenant la bonne adresse quand ils envoient une réponse ; -
iked(8)
gère le chiffrement utilisant ECDSA, les signatures suivant la norme de la RFC 7427 et peut répondre aux messages IKE v2 utilisant des cookies.
Il y a eu aussi plusieurs corrections, dans le démon et l’outil de contrôle ikectl(8)
, notamment au niveau du renouvellement de clefs.
Le routage n’est pas en reste :
-
ripd(8)
gère maintenant les liens de pair à pair avec des adresses dans des sous‐réseaux différents ; -
ospfd(8)
etospf6d(8)
suivent les changements de MTU à l’exécution ; -
bgpd(8)
gère les Large communities de la RFC 8092 ; il est aussi possible de spécifier un message lors d’une extinction administrative (la RFC le décrivant est encore à l’état de brouillon).
Installation
L’installateur dispose maintenant d’une séparation des privilèges lors de la récupération et la vérification des jeux d’installations. Ces mêmes jeux sont d’ailleurs maintenant téléchargés par défaut via HTTPS quand un miroir l’implémente.
En présence d’un serveur DHCP, l’installateur prend maintenant en compte toutes les informations, comme filename, bootfile-name, server-name, tftp-server-name, et next-server, dans les cas d’installations ou de mises à niveau automatisées.
Enfin, l’installateur n’ajoute plus de route vers un alias IP via 127.0.0.1, grâce aux améliorations de composants du noyau sur le routage.
Sécurité
Du côté de la sécurité système, de nombreuses améliorations sont présentes. On notera par exemple l’utilisation de RELRO (read‐only after relocation) sur toutes les bibliothèques partagées, ld.so(1)
, ainsi que sur les exécutables dynamiques et statiques. Ce mécanisme a pour but de restreindre les données initiales en lecture seule.
On notera que sur la plate‐forme ARM, les options PIE
et -static -pie
sont utilisées, tandis que MIPS64 voit augmenter la taille de son espace d’adressage utilisateur virtuel, passant ainsi de 2 Gio à 1 Tio.
Côté réseau, le service de routage route6d(8)
s’exécute maintenant avec moins de privilèges.
Mise en œuvre de l’espace utilisateur W^X
sur les plates‐formes OCTEON Plus et suivantes.
syslogd(8)
peut valider les certificats client avec un fichier d’autorité pour les connexions TLS entrantes.
Le processus parent avec haut privilège de syslogd(8)
appelle maintenant exec(2)
pour remélanger sa structure de mémoire aléatoire.
Une nouvelle fonction recallocarray(3)
fait son apparition, pour réduire le risque de nettoyage incorrect de la mémoire avant et après reallocarray(3)
.
La famille des fonctions de condensat SHA512_256 a été ajoutée à la libc.
L’architecture ARM a été ajoutée la liste des architectures où la famille des fonctions setjmp(3)
applique des cookies XOR à la pile et aux valeurs d’adresses retour dans le jmpbuf.
La famille de fonctions printf(3)
effectue désormais un rapport à syslog lorsque le formatage %s
est utilisé avec un pointeur NULL.
Lorsque l’option C malloc(3) est utilisée, la détection des dépassements de tampon sur le tas a été améliorée. L’option S (déjà existante) inclut désormais l’option C.
La prise en charge du montage de systèmes de fichiers par des utilisateurs non privilégiés a été supprimée.
bioctl(8)
utilise désormais bcrypt PBKDF pour dériver les clefs pour les volumes chiffrés par softraid(4)
.
Administration
syspatch(8)
est un nouvel outil pour simplifier les mises à jour (installation des correctifs binaires). L’installation d’un correctif de sécurité n’implique plus une compilation du système ni de passer par le service en ligne m:tier.
Remarquons aussi l’arrivée d’acme-client(1)
, qui permet d’obtenir des certificats provenant de l’autorité de certification Let’s Encrypt en toute sécurité avec séparation de privilèges.
Le fichier /etc/installurl
remplace /etc/pkg.conf
. Son contenu est simplifié. Il suffit de renseigner son miroir préféré pour installer ses paquets. Sa syntaxe doit respecter la forme « https://miroir/o/miroir/pub/OpenBSD ». Il prend en charge la release et -current.
Enfin, le gestionnaire de connexion graphique xdm(1)
est remplacé par xenodm(1)
.
Aperçu des mises à jour de logiciels
Cette liste n’est bien entendu pas exhaustive, elle illustre les logiciels les plus couramment utilisés :
- Chromium 57.0.2987.133 ;
- Emacs 21.4 et 25.1 ;
- GCC 4.9.4 ;
- GIMP 2.8.18 ;
- GNOME 3.22.2 ;
- KDE 3.5.10 et 4.14.3 (plus des mises à jour du cœur de KDE 4) ;
- LibreOffice 5.2.4.2 ;
- Lua 5.1.5, 5.2.4, et 5.3.4 ;
- MariaDB 10.0.30 ;
- Mono 4.6.2.6 ;
- Mozilla Firefox 52.0.2 ESR et 52.0.2 ;
- Mutt 1.8.0 ;
- PHP 5.5.38, 5.6.30, et 7.0.16 ;
- Postfix 3.2.0 et 3.3-20170218 ;
- PostgreSQL 9.6.2 ;
- Python 2.7.13, 3.4.5, 3.5.2 et 3.6.0 ;
- SQLite3 3.17.0 ;
- Tcl/Tk 8.5.18 et 8.6.4 ;
- TeX Live 2015 ;
- Vim 8.0.0388 ;
- Xfce 4.12.
Errata et premiers correctifs binaires
Depuis la publication de la version 6.1, des corrections ont déjà été publiées pour les logiciels dhcpd, vmm, LibreSSL et softraid. À noter que OpenBSD 6.0 est également touché par le problème corrigé sur softraid. Pour plus d’informations, consultez la page https://www.openbsd.org/errata61.html (en anglais).
Des mises à jour binaires sont également disponibles pour les plates‐formes i386 et amd64 grâce à l’utilitaire syspatch
. Voir la section Administration pour une brève description de cet outil.
CD aux enchères !
La publication des CD d’OpenBSD s’est arrêtée après la version 6.0. Cette nouvelle version 6.1 aurait donc dû être la première à sortir sans support CD officiel achetable. Néanmoins, un unique ensemble de trois CD a quand même été édité pour cette version 6.1. Cet ensemble inclut des dessins de Theo De Raadt lui‐même (qui a pris des cours à cet effet d’après Bob Beck) ! Ce lot a été réalisé de manière artisanale et est signé par Theo.
Ce lot a été proposé aux enchères sur EBay. Celles‐ci ont pris fin le 13 mai et ont rapporté 5 100 dollars canadiens (soit environ 3 403 €) au projet !
N’hésitez pas non plus à donner au projet.
À votre bon cœur !
Aller plus loin
- OpenBSD (530 clics)
- Annonce et notes de version d’OpenBSD 6.1 (233 clics)
- Téléchargement, liste des miroirs (217 clics)
- The OpenBSD Store : achat de CD et produits dérivés (135 clics)
- “Winter of 95”, chanson associée à OpenBSD 6.1 (paroles disponibles le 25 avril 2017) (160 clics)
- LinuxFr.org : OpenBSD 5.9 (336 clics)
- LinuxFr.org : étiquette « OpenBSD » (161 clics)
- LinuxFr.org : étiquette « BSD » (113 clics)
- OpenBSD pour tous (forum, wiki, blog) (296 clics)
- Héberger son serveur avec OpenBSD (l’auto‐hébergement facile et sécurisé) (327 clics)
# Enchères
Posté par Mimoza . Évalué à 6.
Par curiosité je suis allé voir les enchères et elles me semblent bizarre.
Il y a eu 18 enchérisseur pour 93 enchères. On pourrait se dire que ça a été bien disputé et bien en fait … pas tant que cela. Il y a un nombre assez faible de participant qui ont fait monter tout seuls les enchères avec des enchères successives. Par exemple :
Je ne suis pas du tout familier avec ebay, mais je trouve ça bizarre. Si quelqu'un peux m'expliquer …
[^] # Re: Enchères
Posté par vermillon . Évalué à 10.
C'est comme cela que fonctionne eBay. Voici un exemple de ce qui a pu se passer:
- l'enchère en cours est à 1€
- X se dit qu'il est prêt à mettre 1000€, il indique donc 1000€. eBay compare avec 1€, voit que c'est plus grand et passe donc l'enchère en cours à 2€ (juste au dessus de la courante), tout en gardant en mémoire que X est prêt à miser jusqu'à 1000€.
- Y se dit qu'il est prêt à mettre 500€. eBay compare aux 1000€ de X, voit que c'est moins et donne donc l'enchère en cours à X pour 501€. => dans l'historique, on ne voit pas Y, on voit juste que X a misé 2€ puis 501€, d'affilé.
- Y essaie alors 600€. Même chose, eBay file donc l'enchère à X pour 601€.
- Y met 2000€. eBay donne donc l'enchère à Y pour 1001€.
Ce qui explique l'historique qui semble bizarre.
[^] # Re: Enchères
Posté par Mimoza . Évalué à 4.
Ok merci bien pour les explications
# CDs
Posté par afby . Évalué à -1.
Ca fait beaucoup d'argent pour 3 CDs !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.