La version de l'OS libre et multiplateforme basé sur UNIX OpenBSD 7.1 a été présentée. Le projet OpenBSD a été fondé par Theo de Raadt en 1995, aprÚs un conflit avec les développeurs de NetBSD, ce qui a entraßné la fermeture de son accÚs au dépÎt CVS de NetBSD. Par la suite, Theo de Raadt et un groupe d'adeptes ont créé un nouveau systÚme d'exploitation open-source basé sur l'arbre de code source de NetBSD, avec pour principales objectifs la portabilité (support de 13 plateformes matérielles), la normalisation, le bon fonctionnement, la sécurité proactive et des outils cryptographiques intégrés. La taille de l'image ISO complÚte du systÚme de base OpenBSD 7.1 est de 580 Mo.
En plus du systĂšme d'exploitation lui-mĂȘme, le projet OpenBSD est connu pour ses composants qui ont Ă©tĂ© largement adoptĂ©s dans d'autres systĂšmes et reconnus comme parmi les solutions les plus sĂ»res et de la plus haute qualitĂ©. Parmi eux : LibreSSL (un fork d'OpenSSL), OpenSSH, le filtre de paquets PF, les dĂ©mons de routage OpenBGPD et OpenOSPFD, le serveur NTP OpenNTPD, le systĂšme de messagerie OpenSMTPD, le multiplexeur de terminal texte (analogique Ă GNU screen) tmux, le dĂ©mon identd avec mise en Ćuvre du protocole IDENT, l'alternative BSDL au paquet GNU groff â mandoc, le protocole pour l'organisation de systĂšmes rĂ©silients CARP (Common Address Redundancy Protocol), un serveur http lĂ©ger, l'outil de synchronisation de fichiers OpenRSYNC. serveur OpenSMTPD, le multiplexeur de terminal texte (analogique Ă GNU screen) tmux, le dĂ©mon identd avec mise en Ćuvre du protocole IDENT, l'alternative BSDL au paquet GNU groff â mandoc, le protocole pour l'organisation de systĂšmes rĂ©silients CARP (Common Address Redundancy Protocol), un serveur http lĂ©ger, l'outil de synchronisation de fichiers OpenRSYNC.
Améliorations principales :
- Le support des ordinateurs Mac Ă©quipĂ©s de puces ARM Apple M1 (Apple Silicon), tels que les Apple M1 Pro/Max et les Mac T2, est maintenant prĂȘt Ă l'emploi. Des pilotes pour SPI, I2C, le contrĂŽleur DMA, le clavier, le trackpad, la gestion de l'alimentation et des performances ont Ă©tĂ© ajoutĂ©s. Le support pour le Wi-Fi, GPIO, le framebuffer, l'USB, l'Ă©cran et les disques NVMe a Ă©tĂ© assurĂ©.
- Le support de l'architecture ARM64 a été amélioré. Des pilotes gpiocharger, gpioleds et gpiokeys ont été ajoutés pour permettre la prise en charge des chargements, des éclairages et des boutons connectés au GPIO (comme c'est le cas dans le Pinebook Pro). De nouveaux pilotes ont été ajoutés : mpfclock (contrÎleur d'horloge PolarFire SoC MSS), cdsdhc (contrÎleur hÎte Cadence SD/SDIO/eMMC), mpfiic (contrÎleur I2C PolarFire SoC MSS) et mpfgpio (GPIO PolarFire SoC MSS).
- Le support de l'architecture RISC-V 64 a été amélioré, avec l'inclusion de pilotes uhid et fido, et la prise en charge de l'installation sur des disques GPT.
- Dans l'utilitaire mount_msdos, l'utilisation de noms de fichiers longs est activée par défaut.
- Le code du ramasse-miettes pour les sockets unix a été retravaillé.
- sysctl hw.perfpolicy est par défaut réglé sur 'auto', ce qui implique l'activation du mode haute performance lorsqu'il est connecté à l'alimentation secteur et l'utilisation d'un algorithme adaptatif lorsqu'il fonctionne sur batterie.
- Amélioration du support des systÚmes multiprocesseurs (SMP). Les filtres d'événements des canaux anonymes, kqread, audio et sockets ont été convertis en mp-safe, ainsi que le mécanisme BPF. Les appels systÚme poll, select, ppoll et pselect ont été réécrits et sont maintenant implémentés au-dessus de kqueue. Les appels systÚme kevent, getsockname, getpeername, accept et accept4 ont été débarrassés des blocages. Une interface noyau pour des fonctions atomiques load et store a été ajoutée, permettant d'utiliser les types int et long dans les éléments de structures aux quais des pointeurs.
- L'implémentation du framework drm (Direct Rendering Manager) a été synchronisée avec le noyau Linux 5.15.26 (la derniÚre version précédente étant 5.10.65). Le pilote inteldrm a ajouté le support des puces Intel basées sur les microarchitectures Elkhart Lake, Jasper Lake et Rocket Lake. Le pilote amdgpu a implémenté le support pour les APU/GPU Van Gogh, Rembrandt « Yellow Carp » Ryzen 6000, Navi 22 « Navy Flounder », Navi 23 « Dimgrey Cavefish » et Navi 24 « Beige Goby ».
- La bibliothĂšque FreeType inclut le rendu subpixel des polices.
- L'utilitaire realpath a été ajouté pour afficher le chemin absolu vers un fichier.
- Une commande « ls rogue » a été ajoutée à l'utilitaire rcctl pour montrer les processus en arriÚre-plan qui sont lancés mais non inclus dans rc.conf.local.
- BPFtrace a implémenté le support des variables pour les vérifications. Des scripts kprofile.bt pour le profilage de la pile du noyau et runqlat.bt pour identifier les délais dans le fonctionnement du planificateur ont été ajoutés à btrace.
- Le libc a ajoutĂ© le support RFC6840, dĂ©finissant le support du drapeau AD et des paramĂštres âtrust-adâ pour DNSSEC.
- L'apm et apmd incluent l'affichage du temps estimé de recharge de la batterie.
- Il est maintenant possible de stocker la base de données capability dans /etc/login.conf.d pour simplifier l'ajout de classes de comptes personnalisées à partir des paquets.
- Dans malloc, le caching des régions de mémoire allant de 128k à 2M a été assuré.
- L'archiveur pax a implĂ©mentĂ© le support des en-tĂȘtes Ă©tendus avec les donnĂ©es mtime, atime et ctime.
- Les utilitaires gzip et gunzip ont ajouté l'option « -k » pour conserver le fichier source.
- Ă l'utilitaire openrsync, des options ont Ă©tĂ© ajoutĂ©es : « âcompare-dest » pour vĂ©rifier la prĂ©sence de fichiers dans des rĂ©pertoires supplĂ©mentaires ; « âmax-size » et « âmin-size » pour limiter la taille des fichiers.
- La commande seq a été ajoutée pour afficher des séquences de nombres.
- De FreeBSD 13, l'implémentation logicielle universelle des fonctions trigonométriques a été transférée (les implémentations en assembleur pour x86 ont été désactivées).
- L'implémentation des fonctions lrint, lrintf, llrint et llrintf a été transférée de FreeBSD (l'implémentation précédente provenait de NetBSD).
- L'utilitaire fdisk a connu de nombreuses modifications et corrections liées à la gestion des partitions de disque.
- Ajout de la prise en charge de nouveaux matériels, y compris le contrÎleur Intel PCH GPIO (pour les plateformes Cannon Lake H et Tiger Lake H), le RTC NXP PCF85063A/TP, le UART Designware de Synopsys, l'Ethernet 2,5 Gb Intel, le SIMCom SIM7600, le RTL8156B, le wifi USB MediaTek MT7601U et le wifi BCM4387.
- Des firmwares re-licenciés pour les puces sans fil Realtek sont inclus, permettant d'utiliser les pilotes rsu, rtwn et urtwn sans chargement manuel des firmwares.
- Les pilotes ixl (Intel Ethernet 700), ix (Intel 82598/82599/X540/X550) et aq (Aquantia AQC1xx) incluent le support du traitement matériel des balises VLAN et du calcul/vérification des sommes de contrÎle pour IPv4, TCP4/6 et UDP4/6.
- Un pilote audio pour les puces Intel Jasper Lake a été ajouté. La prise en charge du contrÎleur de jeu Xbox One a également été ajoutée.
- Dans la pile sans fil IEEE 802.11, la prise en charge des canaux 40 MHz pour le mode 802.11n et un support initial de la norme 802.11ac (VHT) ont été implémentés. Pour les pilotes, un gestionnaire optionnel de scan en arriÚre-plan a été ajouté. Les points d'accÚs avec des canaux 5 GHz sont maintenant prioritaires lors du choix, suivis des points avec des canaux 2 GHz.
- L'implémentation du pilote vxlan a été réécrite et fonctionne désormais indépendamment de la sous-systÚme bridge.
- L'installateur a révisé la logique d'appel de l'outil pkg_add pour réduire l'intensité des déplacements de fichiers lors de la mise à jour. Le processus de configuration de l'installation et de la mise à jour est documenté dans le fichier install.site. Des firmwares, dont la distribution est autorisée dans des produits tiers, ont été ajoutés pour toutes les architectures. Un utilitaire fw_update a été engagé pour l'installation des firmwares propriétaires disponibles sur le support d'installation.
- Dans xterm, le suivi de la souris est désactivé par défaut pour des raisons de sécurité.
- Dans usbhidctl et usbhidaction, l'accÚs au systÚme de fichiers est isolé à l'aide de l'appel systÚme unveil.
- Dans dhcpd, la liaison avec les interfaces rĂ©seau inactives (âdownâ) est dĂ©sormais garantie par dĂ©faut pour permettre la rĂ©ception de paquets immĂ©diatement aprĂšs l'activation de l'interface rĂ©seau.
- Dans OpenSMTPD (smtpd), la vĂ©rification TLS est activĂ©e par dĂ©faut pour les connexions sortantes âsmtps://â et âsmtp+tls://â.
- Dans httpd, une vĂ©rification de la version du protocole a Ă©tĂ© mise en Ćuvre, la possibilitĂ© de dĂ©finir des fichiers personnalisĂ©s pour les messages d'erreur a Ă©tĂ© ajoutĂ©e et le traitement des donnĂ©es compressĂ©es a Ă©tĂ© amĂ©liorĂ©, notamment avec l'ajout de l'option gzip-static dans httpd.conf pour la livraison de fichiers prĂ©alablement compressĂ©s avec le drapeau gzip dans l'en-tĂȘte content-encoding.
- Dans IPsec, il est désormais possible d'indiquer une liste de protocoles dans le paramÚtre proto d'iked.conf. Une nouvelle commande « show certinfo » a été ajoutée à l'outil ikectl pour afficher les autorités de certification de confiance et les certificats. La gestion des messages fragmentés a été améliorée dans iked.
- Dans rpki-client, le support de la vérification des clés ouvertes BGPsec Router a été ajouté et la vérification des certificats X509 a été améliorée. Un cache pour les fichiers vérifiés a été ajouté. La compatibilité avec la RFC 6488 a été améliorée.
- bgpd a ajoutĂ© le paramĂštre « port », qui peut ĂȘtre utilisĂ© dans les sections « listen on » et « neighbor » pour se lier Ă un numĂ©ro de port rĂ©seau non standard. Une refonte du code pour travailler avec RIB (Routing Information Base) a Ă©tĂ© effectuĂ©e avec une attention particuliĂšre Ă la future prise en charge du multipath.
- Dans le gestionnaire de fenĂȘtres console tmux (« terminal multiplexer »), les capacitĂ©s pour la sortie colorĂ©e ont Ă©tĂ© Ă©tendues. Les commandes pane-border-format, cursor-colour et cursor-style ont Ă©tĂ© ajoutĂ©es.
- Dans LibreSSL, le support de la RFC 3779 (extensions X.509 pour adresses IP et les systÚmes autonomes) et le mécanisme de transparency de certificat (registre public indépendant de tous les certificats émis et révoqués, permettant un audit indépendant de tous les changements et actions des autorités de certification, et permettant de détecter immédiatement toute tentative de création dissimulée de faux enregistrements) a été porté depuis OpenSSL. La compatibilité avec OpenSSL 1.1 a été considérablement améliorée et les noms des algorithmes pour TLSv1.3 sont désormais identiques à ceux d'OpenSSL. De nombreuses fonctionnalités ont été converties pour utiliser calloc(). Une grande partie de nouveaux appels a été ajoutée dans libssl et libcrypto.
- Le package OpenSSH a Ă©tĂ© mis Ă jour. Un aperçu dĂ©taillĂ© des amĂ©liorations peut ĂȘtre consultĂ© dans les revues OpenSSH 8.9 et OpenSSH 9.0. L'outil scp a Ă©tĂ© configurĂ© par dĂ©faut pour utiliser SFTP au lieu de l'ancien protocole SCP/RCP.
- Le nombre de ports pour l'architecture AMD64 est de 11301 (contre 11325), pour aarch64 â 11081 (contre 11034), pour i386 â 10136 (contre 10248). Parmi les versions des applications dans les ports : Asterisk 16.25.1, 18.11.1 et 19.3.1, Audacity 2.4.2, CMake 3.20.3, Chromium 100.0.4896.75, Emacs 27.2, FFmpeg 4.4.1, GCC 8.4.0 et 11.2.0, GNOME 41.5, Go 1.17.7, JDK 8u322, 11.0.14 et 17.0.2, KDE Applications 21.12.2, KDE Frameworks 5.91.0, Krita 5.0.2, LLVM/Clang 13.0.0, LibreOffice 7.3.2.2, Lua 5.1.5, 5.2.4 et 5.3.6, MariaDB 10.6.7, Mono 6.12.0.122, Firefox 99.0 et ESR 91.8.0, Thunderbird 91.8.0, Mutt 2.2.2 et NeoMutt 20211029, Node.js 16.14.2, OpenLDAP 2.4.59, PHP 7.4.28, 8.0.17 et 8.1.4, Postfix 3.5.14, PostgreSQL 14.2, Python 2.7.18, 3.8.13, 3.9.12 et 3.10.4, Qt 5.15.2 et 6.0.4, R 4.1.2, Ruby 2.7.5, 3.0.3 et 3.1.1, Rust 1.59.0, SQLite 2.8.17 et 3.38.2, Shotcut 21.10.31, Sudo 1.9.10, Suricata 6.0.4, Tcl/Tk 8.5.19 et 8.6.8, TeX Live 2021, Vim 8.2.4600 et Neovim 0.6.1, Xfce 4.16.
- Mis Ă jour les composants de tiers inclus dans OpenBSD 7.1 :
- La pile graphique Xenocara basée sur X.Org 7.7 avec xserver 1.21.1 + patches, freetype 2.11.0, fontconfig 2.12.94, Mesa 21.3.7, xterm 369, xkeyboard-config 2.20, fonttosfnt 1.2.2.
- LLVM/Clang 13.0.0 (+ correctifs)
- GCC 4.2.1 (+ patchs) et 3.3.6 (+ patchs)
- Perl 5.32.1 (+ patchs)
- NSD 4.4.0
- Unbound 1.15.0
- Ncurses 5.7
- Binutils 2.17 (+ correctifs)
- Gdb 6.3 (+ patch)
- Awk 12.10.2021
- Expat 2.4.7
Source : opennet.ru
