Sortie d’OpenBSD 7.9
(openbsd.org)- Ajout de la veille prolongée différée, qui permet de réveiller le système après un délai configuré en mode suspend afin d’éviter la décharge de la batterie, puis de le faire immédiatement passer en hibernation ; le délai, en secondes, se règle via
machdep.hibernatedelay - Côté sécurité, suppression du contournement
BIOCLOCKde bpf(4) pour root, abandon de la promisetmppathde pledge(2), et introduction de __pledge_open(2), qui autorise de façon limitée l’accès aux fichiers internes de libc - OpenSSH 10.3 corrige des problèmes de sécurité liés à la possibilité d’exécuter des commandes avec l’extension de jeton
%du nom d’utilisateur dansssh(1), à la correspondance des principals de certificats danssshd(8), au traitement setuid/setgid de l’ancienscp -O, à l’application des restrictions sur les algorithmes ECDSA, ainsi qu’à l’absence de vérification du mux proxy - LibreSSL 4.3.0 ajoute la keyshare TLS
MLKEM768_X25519,sievestarttls et la prise en charge de l’OID de clé publiqueRSASSA-PSS, et corrige une possible écriture de 4 octets sur le tas due à une erreur off-by-one dans la vérification de profondeur du validateur X.509 - Dans la pile réseau, veb(4) devient un bridge compatible VLAN, avec prise en charge du PVID, du bitmap des VID autorisés, et de configurations de ports access/trunk/hybrid ; pour conserver la compatibilité avec les configurations simples existantes, le PVID par défaut est 1
- L’autoconfiguration IPv6 (SLAAC) est désormais activée par défaut, et pflow(4) ajoute un template NAT IPFIX/Netflow v10 incluant les IP et ports source/destination après NAT
- pf(4) introduit un limiteur source/state et permet de définir l’action à exécuter lorsque la limite est atteinte ; dans pfctl(8), l’action par défaut du limiteur passe de
no-matchàblock - Côté virtualisation, vmd(8) ajoute
vmboot, qui permet d’utiliser sysupgrade(8) dans des VM, et améliore le fonctionnement avec Apple Virtualization, les chemins de confidential computing comme AMD SEV, ainsi que divers problèmes de race, de blocage et de réinitialisation réseau - La prise en charge matérielle s’étend notamment aux SoC RK3588/RK3576 sur arm64, au GL9755 SDHC de certains portables Apple Silicon, au SoC SpacemiT K1 sur riscv64, à nhi(4) pour l’USB4 et à ispi(4) pour le SPI Intel LPSS
- Pour les réseaux sans fil, prise en charge native de 802.11ax, du mode 5 GHz 160 MHz et du 160 MHz pour iwx(4), ajout de PMF à iwm(4), iwx(4) et qwx(4), et activation par défaut de l’économie d’énergie pour
iwx(4) - Côté installation et mise à niveau,
sysupgradeéchoue désormais si le système de fichiers/usrdépasse 90 %, afin de réduire les risques de corruption du système, et amd64 prend en charge le chargement des fichiers du noyau depuis l’EFI system partition, ce qui permet de placer le chargeur de démarrage OpenBSD etbsd.rddans la partition de démarrage EFI - Pour les paquets et composants principaux, 13 044 paquets sont proposés sur amd64, 12 883 sur aarch64 et 10 631 sur i386 ; on y trouve notamment Chromium 147.0.7727.101, Firefox 150.0, Node.js 22.22.2, PostgreSQL 18.3, Rust 1.94.1 et LLVM/Clang 19.1.7·20.1.8·21.1.8
2 commentaires
Avis sur Hacker News
L’illustration de sortie d’OpenBSD 7.9 a été réalisée par Lyra Henderson
https://www.openbsd.org/images/PinkPuffy.png
https://www.openbsd.org/images/puffy79.gif
Le morceau de la release, « Diamond in the Rough », a été composé et produit par Bob Kitella
https://www.openbsd.org/lyrics.html#79
Côté vêtements, cela semble encore surtout se limiter aux t-shirts : https://openbsdstore.com/
Je l’utilise sur un petit serveur à la maison pour le DNS/DHCP, et sa stabilité est impressionnante ; on sent vraiment l’accumulation d’années de travail d’audit
Des problèmes de sécurité continuent d’être découverts dans d’autres systèmes d’exploitation, et l’IA va probablement accélérer cela, donc c’est peut-être le moment pour tout le monde d’envisager OpenBSD
Son approche centrée sur la sécurité depuis des décennies n’a pas d’équivalent, et je suis passé complètement d’Ubuntu/Debian à OpenBSD sans intention de revenir en arrière
Si je devais choisir un BSD, je prendrais quand même plutôt FreeBSD
Le même code tourne bien sur Linux/FreeBSD/Windows, mais sur OpenBSD les performances multithread étaient faibles, et les sockets asynchrones s’arrêtaient après quelques secondes de transfert rapide
Cela ne veut pas dire qu’OpenBSD a tort, simplement qu’il est différent
Je n’ai pas trouvé de données qui le démontrent, seulement des impressions assez vagues
Discussion connexe : https://forum.qubes-os.org/t/qubesos-vs-openbsd-security/790...
https://x.com/ortegaalfredo/status/2055362910415671459
Bien sûr, il est difficile de dire que Linux fait mieux, mais sa part de marché lui donne au moins l’avantage d’avoir plus d’yeux pour corriger les problèmes
Pour certains, la vraie nouvelle est que Exim a été retiré des ports
Il existe un bon article sur la migration d’Exim vers OpenSMTPD : https://nxdomain.no/~peter/time_for_opensmtpd.html
Je l’avais essayé peu après la sortie d’OpenSMTPD, mais il n’était pas encore assez stable ; il est peut-être temps de lui redonner sa chance
Je fais tourner OpenSMTPD depuis plusieurs années sur OpenBSD comme sur Linux, et je n’ai aucun reproche à lui faire
Il n’a jamais fait partie du système de base de toute façon, donc le mainteneur n’avait probablement simplement plus envie de le garder
C’est sans fioritures, et sa configuration paraît assez moderne comparée aux anciennes approches traditionnelles
À mon avis, c’est le meilleur serveur SMTP pour la plupart des usages
Malheureusement, le support des portages est faible, donc ceux qui découvrent ses qualités sont généralement surtout des utilisateurs d’OpenBSD
Je l’avais installé un temps sur un G4 PowerBook et je l’avais un peu utilisé, sans doute au début des années 2000
J’aimais son attitude intransigeante vis-à-vis des binary blobs et son approche centrée sur la sécurité, et l’expérience globale était excellente
Le code que j’avais lu était aussi proprement écrit
C’est un système que je recommande toujours, et je devrais le réinstaller quelque part prochainement
C’est aussi la 60e release, donc félicitations à l’équipe
Il paraît qu’un mécanisme a été ajouté dans l’ordonnanceur pour gérer des cœurs CPU de vitesses différentes
hw.blockcpuprend une séquence de quatre lettres, S pour SMT, P pour cœur performant ordinaire, E pour cœur efficace, L pour cœur plus lent, et sert à choisir les CPU exclus de l’ordonnanceur ; la valeur par défaut estSLCela fonctionne actuellement sur amd64 et arm64
Cela dit, je ne suis pas vraiment convaincu de l’intérêt même de garder des cœurs lents dans un CPU sur des architectures de type big.LITTLE
On n’a pas envie que des tâches y soient affectées, et même pour les tâches en arrière-plan, les finir vite ne consomme-t-il pas moins d’énergie ?
Si les fonctionnalités diffèrent selon les cœurs, je me demande aussi ce qu’il se passe lorsqu’un processus qui exige une fonctionnalité CPU comme l’AVX-512 est affecté à un cœur qui ne la possède pas
OpenBSD a choisi ici une approche rapide et brutale en désactivant les cœurs lents, mais je ne sais pas s’il existe de bonnes heuristiques pour y affecter certains travaux
La seule idée qui me vienne serait un mécanisme complexe d’étiquetage manuel des exécutables ou des threads, du genre « ce processus convient aux cœurs lents »
D’après la mailing list, l’ordonnanceur simple place les processus n’importe où, et sur certains systèmes big.LITTLE récents, les petits cœurs sont si lents qu’ils pénalisent fortement la recompilation du code
Si des tâches de fond tournent en continu, réagissent à des événements imprévisibles ou se réveillent souvent pour travailler un peu, la logique de boost du CPU ne résout pas à elle seule la question de la consommation énergétique
Et sur x86-64 comme sur ARM, les cœurs P et E utilisent le même jeu d’instructions, donc il n’y a pas de risque d’exécuter une mauvaise instruction CPU
De vrais jeux d’instructions hétérogènes pourraient toutefois refaire surface à l’avenir, donc il faut rester attentif
S’il y a ici des gens qui utilisent OpenBSD, je serais curieux de savoir pour quels usages
J’aurais aimé essayer NetBSD pour des applications sur systèmes embarqués ou objets IoT, mais je n’en ai pas encore eu l’occasion
OpenBSD est excellent aussi sur du vieux matériel Apple que Cupertino ne prend plus en charge
J’exploite un cluster d’Intel Mac Mini avec un temps de disponibilité presque parfait
Pour des serveurs web, mail, DNS, NFS ou base de données où la stabilité et la sécurité comptent, il n’y a pas besoin de chercher plus loin
Il y a une courbe d’apprentissage, mais cela en vaut largement la peine
La raison principale est que j’aime sa légèreté et sa simplicité
Le packaging est simple, le développement du noyau et les mises à niveau aussi
Le code du noyau lui-même est écrit dans un style qui me plaît, il va à l’essentiel sans abstractions inutiles ni agitation
Je le préfère aussi aux autres BSD que j’ai utilisés, entre NetBSD et FreeBSD/DragonFlyBSD
J’aime avoir l’impression de pouvoir comprendre l’essentiel du système
Il n’est pas aussi riche en fonctionnalités que Linux, mais cette sensation de comprendre sa propre machine est rafraîchissante
C’est un peu comme partir en vacances dans une petite jolie ville pour y vivre quelque chose de simple et paisible, même si bien sûr chacun le ressentira différemment
C’est assez stable et familier
Si on connaît Unix, c’est vraiment simple
J’espère qu’OpenBSD ne disparaîtra jamais, car je ne vois pas bien par quoi le remplacer
Linux est devenu trop complexe pour que j’aie encore envie de le gérer
Je m’occupe de la partie numérique, je développe une application Ruby on Rails et je la déploie sur OpenBSD
L’ensemble tourne sur un seul serveur Supermicro U1 bon marché dans une baie à la maison
nsdet l’e-mail avecopensmtpdfonctionnent immédiatement avec une configuration minimale, même sur des KVM avec très peu de mémoireLa documentation est excellente et l’installation facile
sysupgrade a été une grande amélioration, mais j’aimerais que le rythme des releases soit un peu ralenti
Ils ont remplacé le spinlock
casdes mutex du noyau par un parking lock, et je me demande ce qu’est exactement ce type de verrou et comment il fonctionneJe n’ai rien trouvé à ce sujet dans les pages de manuel
https://man.openbsd.org/OpenBSD-5.5/lock.9
https://man.openbsd.org/OpenBSD-5.9/mutex.9
https://webkit.org/blog/6161/locking-in-webkit/
Les spinlocks sont performants quand la contention est faible et que les verrous sont détenus peu de temps, mais si l’une de ces conditions n’est pas réunie, un thread bloqué peut facilement monopoliser un cœur CPU entier pendant l’attente
C’est un peu hors sujet, mais j’aimerais que FreeBSD abandonne aussi un peu son logo en boule de verre sans âme au style pseudo-corporate, ainsi que sa police qui évoque une boîte de jouets de vaisseaux spatiaux du début des années 90, pour revenir à Beastie et à une élégante police à empattements
En d’autres termes, je suis jaloux : les illustrations d’OpenBSD sont vraiment superbes
J’aimerais qu’OpenBSD prenne en charge le Bluetooth
Son absence est malheureusement une limitation décisive, car le système m’avait beaucoup plu sur desktop
Il a été retiré en 2014
OpenBSD a l’air excellent, mais pour l’instant il semble limité davantage aux serveurs qu’au desktop, ce qui peut aussi être un avantage puisqu’il reste concentré sur la simplicité
J’aimerais quand même qu’il prenne en charge davantage de matériel
En faisant tourner OpenBSD dans une machine virtuelle, on pourrait peut-être cumuler à la fois le support matériel de Linux/Windows côté hôte et les avantages d’OpenBSD
Par exemple, pour un clavier BLE, j’utilise un Seeed Studio XIAO nRF52840
Justement, je me demandais quand la 7.9 allait sortir
Et en plus il y a un morceau de release, ce qui fait plaisir
Si je me souviens bien, il n’y avait pas eu de nouveau morceau depuis un moment
Comme cela a aussi été mentionné dans un autre fil, le dernier morceau remontait à la 7.3
Avis sur Lobste.rs
J’ai appris aujourd’hui qu’OpenBSD avait une illustration et une chanson pour chaque release : https://www.openbsd.org/lyrics.html#79
Il y avait trois raisons : faire en sorte que la librairie continue de stocker des documents liés à OpenBSD, soutenir le projet, et avoir une copie tangible de l’illustration et de la chanson, et cette sorte de rituel me manque
Les BSD m’intriguent toujours, mais je ne pense pas pouvoir quitter Linux à cause des jeux
Beaucoup de jeux en ligne ont une grande surface d’attaque aux vulnérabilités, reposent sur du code propriétaire que personne n’a audité, et sont parfois abandonnés juste après leur sortie sans mises à jour
J’aime le fait de ne pas avoir à conserver mes informations bancaires ou mes documents liés à une pièce d’identité gouvernementale sur la même machine
Avec un peu d’effort pour configurer
sshd, on peut expérimenter librement les fonctionnalités BSD, avec la possibilité d’étendre ensuite vers de l’auto-hébergement si on le souhaiteEn ce moment, je fais tourner Home Assistant sur
bhyve, géré par FreeBSD, et je me demande quoi installer ensuite pour mieux utiliser le serveurBien sûr, on peut aussi le faire en machine virtuelle, mais au moins pour moi, cela n’a jamais totalement remplacé l’impression de manipuler un vrai système
J’ai essayé OpenBSD 7.9 dans QEMU ; l’installateur est un peu daté et la combinaison par défaut
X11+fvwm2+xterma aussi l’air vieillotte, mais ça a démarré et bien fonctionnédoasa très bien marché et j’ai aussi pu installer des paquets avecpkg_addJ’ai été surpris qu’il n’y ait ni
curlniwgetdans l’installation de base, mais du point de vue de la sécurité, j’aime la philosophie de configuration minimaleIl guide tout le processus tout en permettant d’intervenir manuellement très facilement dès que nécessaire
On peut simplement appuyer sur Entrée tout du long, ou au contraire tout gérer soi-même en grande partie
La combinaison par défaut
X11+fvwm2+xtermsemble pensée pour disposer d’un ensemble de paquets pouvant être installé et fonctionner même sur du matériel si ancien qu’il ressemble à un morceau de pain moisiCela dit, Wayland a bien été porté sur OpenBSD, et c’est agréable de voir qu’une initiative qui, en 2023, relevait encore surtout du projet, s’est concrétisée aussi vite
Pour les téléchargements, on s’attend à utiliser ftp(1), mais malgré son nom, il ne se limite pas au FTP et prend aussi en charge les récupérations HTTP(S)
Je vais enfin pouvoir réinstaller ça sur mon Yeelong Lemote
À cause d’un changement de
pledgedans les derniers errata, je m’étais fait avoir en ne recompilant que le noyau 7.8 tout en gardant l’espace utilisateur tel quel, et bien sûr aucun update binaire n’est fourni pour Loongson