Lanzamiento de OpenBSD 7.2

Se presenta el lanzamiento del sistema operativo libre y similar a UNIX OpenBSD 7.2. El proyecto OpenBSD fue fundado por Theo de Raadt en 1995 tras un conflicto con los desarrolladores de NetBSD, que resultó en el cierre de acceso a Theo al repositorio CVS de NetBSD. Posteriormente, Theo de Raadt y un grupo de compañeros crearon un nuevo sistema operativo abierto basado en el árbol de códigos fuente de NetBSD, cuyas principales metas de desarrollo son la portabilidad (soporta 13 plataformas de hardware), estandarización, correcto funcionamiento, seguridad proactiva e instrumentos criptográficos integrados. El tamaño de la imagen ISO de instalación completa del sistema base OpenBSD 7.2 es de 556 MB.

Además del propio sistema operativo, el proyecto OpenBSD es conocido por sus componentes, que se han difundido en otros sistemas y se han consolidado como algunas de las soluciones más seguras y de mayor calidad. Entre ellos se encuentran: LibreSSL (fork de OpenSSL), OpenSSH, el filtro de paquetes PF, demonios de enrutamiento OpenBGPD y OpenOSPFD, servidor NTP OpenNTPD, servidor de correo OpenSMTPD, multiplexor de terminal de texto (análogo a GNU screen) tmux, demonio identd con implementación del protocolo IDENT, alternativa BSDL al paquete GNU groff — mandoc, protocolo para la organización de sistemas tolerantes a fallos CARP (Common Address Redundancy Protocol), servidor http liviano, herramienta de sincronización de archivos OpenRSYNC.

Principales mejoras:

  • Se ha mejorado el soporte para sistemas basados en arquitectura ARM, incluyendo soporte para los chips ARM de Apple M2 y Ampere Altra. También se ha añadido soporte para el portátil Lenovo ThinkPad x13s y otros dispositivos basados en SoC Qualcomm Snapdragon 8cx Gen 3 (SC8280XP).
  • Se ha añadido la capacidad de arrancar en entornos de Oracle Cloud con el núcleo para disco RAM (bsd.rd) y el núcleo para sistemas multiprocesadores (bsd.mp).
  • Se ha incluido el dispositivo kstat, que exporta estadísticas sobre el funcionamiento del núcleo, las cuales se pueden visualizar con la utilidad kstat.
  • Para cada núcleo de CPU que soporta MPERF/APERF se han implementado sensores de frecuencia. Al funcionar con batería, se ha habilitado el escalado de frecuencia de la CPU según la carga.
  • En sistemas ARM64 se ha añadido soporte inicial para el modo de suspensión. El límite en el número de CPUs soportados se ha aumentado a 256. Se ha implementado la posibilidad de cambiar de la consola basada en framebuffer (glass console) a la consola basada en puerto serie (serial console).
  • Se eliminó el código para la detección de CPU 386sx/386dx, NexGen, Rise y los antiguos procesadores Cyrix producidos antes del chip Cyrix M2.
  • Se ha mejorado el soporte para sistemas multiprocesador (SMP). Las funciones de limitación de ancho de banda (rate limit), búsqueda de registros ARP y temporizador de enrutamiento han sido trasladadas a la categoría mp-safe. Se ha implementado la posibilidad de ejecutar en paralelo operaciones como la reensambladura de paquetes IPv4 y el redireccionamiento de paquetes IP. Se han añadido bloqueos de sockets utilizando mutex en las funciones de manejo de paquetes UDP e IP. Las llamadas al sistema kbind y pledge ya no tienen bloqueos. Se han implementado bloqueos de sockets UNIX que actúan a nivel de sockets individuales.
  • La implementación del marco drm (Direct Rendering Manager) ha sido sincronizada con el núcleo de Linux 5.15.69 (en la versión anterior era 5.15.26). Se ha agregado soporte para chips Intel basados en las microarquitecturas Alder Lake y Raptor Lake en el controlador inteldrm. Se ha implementado soporte para marcos de búfer que no están alineados a la frontera de la página de memoria (por ejemplo, utilizados en el MacBook Pro 2021 de 14" y 16").
  • Se han realizado mejoras en el hipervisor VMM. En vmd, se ha agregado soporte para controladores en el espacio de usuario basados en MMIO. En vmm, la emulación de puertos de entrada/salida se ha trasladado al espacio de usuario. Se han unificado las estructuras internas y las interfaces en vmd, vmctl y vmm. Se ha añadido la posibilidad de monitoreo máquinas virtuales a través de SNMP AgentX, utilizando los parámetros VM-MIB (RFC7666).
  • La variable $rcexec en los scripts de inicialización rc.d ha sido reemplazada por la función rc_exec. Se ha añadido una nueva variable daemon_execdir que permite cambiar el directorio antes de ejecutar la función rc_exec. Se ha añadido una nueva acción configtest en rc.d y rcctl para verificar la sintaxis de la configuración.
  • Se ha incluido la herramienta ts, que agrega a las líneas recibidas a través de la entrada estándar la hora que refleja el momento en que cada línea llega.
  • Se ha añadido la opción "-f" a la herramienta ps para una agrupación jerárquica de procesos que refleja la relación entre procesos padre e hijo.
  • En la herramienta openrsync se ha implementado la opción "—contimeout" para definir el tiempo de espera para establecer la conexión.
  • En la herramienta pkg_add, se ha habilitado la caché por defecto, optimizando el manejo de paquetes y asegurando la salida de un indicador de progreso durante la transferencia de datos.
  • En fdisk, se ha mejorado el manejo de tablas GPT y MBR, añadiendo advertencias en caso de ubicación inadecuada de las particiones MBR y GPT.
  • La utilidad disklabel ha añadido soporte para la palabra clave raid en plantillas para la colocación automática de particiones con RAID. Se ha dejado de dar soporte para la edición de información sobre la geometría del disco. Se ha dejado de dar soporte para los atributos ‘bs’ (tamaño del bloque de arranque), ‘sb’ (tamaño del superbloque) y d[0-4] (datos del disco).
  • En el directorio /usr/share/btrace se ha colocado una colección de scripts útiles de btrace para la trazabilidad dinámica e inspección de aplicaciones.
  • La biblioteca de sonido sndio ha agregado la función sio_flush para detener inmediatamente la reproducción.
  • Se incluye la utilidad llvm-profdata para trabajar con datos de perfilado.
  • La utilidad wc ha acelerado el recuento de palabras.
  • Se ha añadido soporte para nuevo hardware, incluyendo nuevos controladores:
    • aplaudio (subsystem de sonido de Apple).
    • aplmca (controlador MCA de Apple).
    • aplsart (Apple SART).
    • alpdc, apldchidev, apldckbd, apldcms, aplrtk (teclado y trackpad de Apple M2).
    • qcgpio, qciic (controladores GPIO y GENI I2C para Qualcomm Snapdragon).
    • sfgpio, stfclock, stfpinctrl, stftemp (controladores para GPIO, temporizadores y sensores de placas SiFive).
    • sxirintc (controlador de interrupciones para chips Allwinner).
    • gpiorestart (controlador para reinicio a través de GPIO).
    • En ipmi se ha ampliado el soporte para sensores de potencia.
    • En ehci se ha añadido soporte para el controlador utilizado en placas Marvell 3720.
  • En el controlador igc para adaptadores Ethernet Gigabit Intel I225 se ha incluido la aceleración de hardware para el cálculo de sumas de verificación para IPv4, TCP y UDP. En el controlador ix para adaptadores Ethernet Intel 82598/82599/X540/X550 se ha implementado el soporte para aceleración de hardware en el procesamiento de segmentos TCP (Large Receive Offloading), que se activa mediante la opción tso en ifconfig.
  • En el controlador iwx se ha implementado el soporte para chips Intel AX210/AX211 y se ha ampliado el rango de dispositivos inalámbricos detectados.
  • Se ha añadido la posibilidad de arrancar desde particiones de RAID 1 por software (softraid) en sistemas amd64, sparc64 y arm64.
  • En snmpd y xlock se ha implementado la separación de privilegios.
  • En las funciones bind y connect para sockets UNIX se ha garantizado la aislamiento basado en la llamada del sistema unveil.
  • Se ha añadido una nueva llamada al sistema ypconnect para crear un socket para conectarse a el servidor YP, utilizando la dirección IP del archivo bloqueado ypbinding. En ypldap se ha añadido el modo ‘local bind’, en el que el socket RPC se vincula a la interfaz loopback, para excluir conexiones externas al servidor.
  • Los programas hcpleased, mountd, nfsd, pflogd, resolvd, slaacd y unwind, ubicados en el catálogo /sbin, se han adaptado para utilizar el enlace dinámico con el fin de implementar medidas de seguridad adicionales aplicables a los archivos ejecutables vinculados dinámicamente.
  • En la pila de red se han implementado las llamadas al sistema sendmmsg y recvmmsg, que permiten la transmisión y lectura de múltiples mensajes en una sola llamada al sistema, que anteriormente requerirían llamadas separadas sendmsg y recvmsg.
  • Se ha modificado el procesamiento de paquetes IGMP y ICMP6 MLD (Multicast Listener Discovery) en el filtro de paquetes pf, lo que ha permitido el correcto funcionamiento con paquetes multicast de control en la configuración predeterminada. Se ha implementado un control más estricto de los mensajes IGMP/MLD.
  • En IPsec se ha mejorado el manejo de certificados. En iked se ha mejorado la compatibilidad con OpenIKED. Se ha añadido una salida de estadísticas sobre conexiones exitosas y fallidas al comando ikectl show stats.
  • En bgpd se ha añadido un filtro max-communities para limitar el número de comunidades permitidas, se ha implementado el RFC 9234 (Prevención y Detección de Filtraciones de Rutas Usando Roles en Mensajes UPDATE y OPEN), se ha proporcionado soporte completo para el RFC 7911 (Publicidad de Múltiples Rutas en BGP), y se han reemplazado los hashes estáticos con árboles RB para mejorar el rendimiento en sistemas grandes. Se ha añadido un proceso bgplgd que implementa un servidor FastCGI, proporcionando una API REST para los comandos bgpctl.
  • En el cliente rpki-client se ha permitido el uso de más de una URI de CRL en los certificados, se ha implementado un parámetro skiplist para ignorar dominios, se ha añadido la posibilidad de verificar ASPA (Autonomous System Provider Authorization) y archivos sig, se ha implementado la decodificación TAL (RFC 8630), se ha reforzado la verificación de certificados EE y se ha mejorado la compatibilidad con las especificaciones HTTP.
  • En snmpd se ha permitido el uso de nombres de objetos en snmpd.conf, además de OID. Se ha implementado la posibilidad de establecer una lista negra para excluir subárboles de la salida. Se ha añadido soporte para un agente master en la implementación del protocolo AgentX.
  • En httpd se han propuesto nuevas definiciones de tipos MIME.
  • La utilidad ftp se ha adaptado para utilizar conexiones procesadas en modo no bloqueante mediante ppoll.
  • En tmux ("multiplexor de terminal") se ha añadido la posibilidad de utilizar ACL para organizar la conexión de varios usuarios a través de un solo socket.
  • Se han actualizado los paquetes LibreSSL y OpenSSH. Se puede ver una descripción detallada de las mejoras en las reseñas de LibreSSL 3.6.0 y OpenSSH 9.1.
  • El número de puertos para la arquitectura AMD64 fue de 11451 (anteriormente 11301), para aarch64 — 11261 (anteriormente 11081), para i386 — 10225 (anteriormente 10136). Entre las versiones de aplicaciones en los puertos:
    • Asterisk 16.28.0, 18.14.0 y 19.6.0
    • Audacity 2.4.2
    • CMake 3.24.2
    • Chromium 105.0.5195.125
    • Emacs 28.2
    • FFmpeg 4.4.2
    • GCC 8.4.0 y 11.2.0
    • GHC 9.2.4
    • GNOME 42.4
    • Go 1.19.1
    • JDK 8u342, 11.0.16 y 17.0.4
    • KDE Gear 22.08.1
    • KDE Frameworks 5.98.0
    • Krita 5.1.1
    • LLVM/Clang 13.0.0
    • LibreOffice 7.4.1.2
    • Lua 5.1.5, 5.2.4 y 5.3.6
    • MariaDB 10.9.3
    • Mono 6.12.0.182
    • Mozilla Firefox 105.0.1 y ESR 102.3.0
    • Mozilla Thunderbird 102.3.0
    • Mutt 2.2.7 y NeoMutt 20220429
    • Node.js 16.17.1
    • OCaml 4.12.1
    • OpenLDAP 2.6.3
    • PHP 7.4.30, 8.0.23 y 8.1.10
    • Postfix 3.7.2
    • PostgreSQL 14.5
    • Python 2.7.18, 3.9.14 y 3.10.7
    • Qt 5.15.6 y 6.3.1
    • R 4.2.1
    • Ruby 2.7.6, 3.0.4 y 3.1.2
    • Rust 1.63.0
    • SQLite 3.39.3
    • Shotcut 22.06.23
    • Sudo 1.9.11.2
    • Suricata 6.0.6
    • Tcl/Tk 8.5.19 y 8.6.12
    • TeX Live 2021
    • Vim 9.0.0192 y Neovim 0.7.2
    • Xfce 4.16
  • Se han actualizado los componentes de terceros incluidos en OpenBSD 7.2:
    • El stack gráfico Xenocara basado en X.Org 7.7 con xserver 1.21.4 + parches, freetype 2.12.1, fontconfig 2.13.94, Mesa 22.1.7, xterm 372, xkeyboard-config 2.20, fonttosfnt 1.2.2.
    • LLVM/Clang 13.0.0 (+ parches)
    • GCC 4.2.1 (+ parches) y 3.3.6 (+ parches)
    • Perl 5.32.1 (+ parches)
    • NSD 4.6.0
    • Unbound 1.16.3
    • Ncurses 5.7
    • Binutils 2.17 (+ parches)
    • Gdb 6.3 (+ parche)
    • Awk 12.9.2022
    • Expat 2.4.9

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster