Esitletakse avatud platvormide UNIX-sarnase operatsioonisüsteemi OpenBSD 6.9 versiooni. Tähtis on märkida, et see on projekti 50. väljaanne, mis tähistab 26. sünnipäeva sel aastal. OpenBSD projekt asutati Theo de Raadi poolt 1995. aastal pärast konflikti NetBSD arendajatega, mille tõttu tal peatati ligi pääs CVS-repositooriumile NetBSD-s. Pärast seda lõi Theo de Raadt koos mõttekaaslastega uue avatud operatsioonisüsteemi, kasutades NetBSD allika puu kodeeringut. Projekti peamised arenduseesmärgid on olnud ülekantavus (toetatakse 13 riistvaraplatvormi), standardiseerimine, korrektne töö, aktiivne turvalisus ja integreeritud krüptograafilised vahendid. OpenBSD 6.9 põhissüsteemi täisinstalli ISO-pildi suurus on 544 MB.
Lisaks operatsioonisüsteemile on OpenBSD projekt tuntud oma komponentide poolest, mis on levinud teistes süsteemides ja tuntud kui ühed kõige turvalisemad ja kvaliteetsemad lahendused. Nende hulka kuuluvad: LibreSSL (OpenSSL i haak), OpenSSH, paketifilter PF, marsruuterite demonid OpenBGPD ja OpenOSPFD, NTP-server OpenNTPD, meiliserver OpenSMTPD, tekstiterminali multiplexer (analoog GNU ekraanile) tmux, identd demon, mis rakendab IDENT protokolli, BSDL alternatiiv GNU groff paketile — mandoc, protokoll talitlushäirete korraldamiseks CARP (Common Address Redundancy Protocol), kergekaaluline http-server, failide sünkroniseerimise utiliit OpenRSYNC.
Peamised parandused:
- Softraidi draiverisse on lisatud RAID1C režiim, mis rakendab tarkvaralist RAID1 andmete krüpteerimisega.
- Komplekti on lisatud kaks uut taustaprotsessi — dhcpleased ja resolvd, mis töötavad koos slaacd ja unwind'iga, et automaatselt konfigureerida võrguliideseid ja määratleda nimesid DNS-is. dhcpleased'is on rakendatud DHCP protokoll IP-aadresside saamiseks, samas kui resolvd haldab resolv.conf sisu, lähtudes nimiserverite andmetest, mis on saadud dhcpleased, slaacd ja sarnaste draiverite kaudu, nagu umb.
- Lisatud algtugi Apple'i M1 protsessoriga seadmetele. Sealhulgas on rakendatud arm64-tuumade Apple Icestorm/Firestorm tuvastamine ning lisatud tugi BCM4378 juhtmeteta kiipidele, mida kasutatakse Apple M1 SoC-s.
- Parandatud powerpc64 platvormi tuge, mis on arendamisel 64-bitistele POWER8 ja POWER9 protsessoripõhistes süsteemides. Eelmise versiooniga võrreldes on powerpc64-le lisatud RETGUARD kaitsemehhanismi tugi, lisatud astfb draiver Aspeed BMC raami bufferi jaoks, lahendatud AMD GPU-d toetavate radeondrm ja amdgpu draiverite probleemid AMD GPU-ga süsteemides, kernelikogusse on lisatud võimalus võrgu käivitamiseks RAM-diskile, lisatud CPU POWER9 energiasäästumoodide tugi, lisatud toimetused, mis genereeritakse ujuvpunktsioonide operatsioonide ajal, ja IPMI tugi PowerNV süsteemide jaoks.
- ARM64 platvormile on lisatud CPU Cortex-A78AE, Cortex-X1 ja Neoverse V1 tugi, rakendatud natiivsed ARM64 versioonid copyin, copyout ja kcopy, lisatud cryptox draiver ARMv8 krüpto lisade toetamiseks ning smmu draiver RM System MMU jaoks Guard Page toega. Parandatud Raspberry Pi, Rock Pi N10, NanoPi ja Pinebook Pro seadmete tuge.
- Videodriverisse lisati sysctl-parameeter kern.video.record, mis sarnaneb kern.audio.record'iga ning juhib tähelepanu tühja pildi väljundi aktiveerimisele video salvestamise katsete korral (salvestamise lubamiseks tuleb väärtust muuta 1-ks). Protsessidele on lubatud mitmekordne videoseadme avamine (see lahendab probleeme veebikaamerate kasutamisel Firefoxis ja BigBlueButtonis).
- Lisatud jälgimispunktid malloc ja free kutsungite jaoks, mis võimaldavad dt ja btrace'iga jälgida mälujaotusega seotud aktiivsust. Btrace'i on lisatud valik '-n', et analüüsida programmi ilma mingite toiminguteta.
- Parandatud tugiteenust mitme protsessori süsteemides (SMP). UNIX-sokkide teostamine on välja toodud üldisest tuumablokeeringust, lisatud on üldine mutex msgbuf operatsioonide järjestamiseks, uvm_pagealloc'i kutsung on muudetud mp-safe'iks ning getppid ja sendsyslog kutsungid on blokeeringutest vabastatud.
- Parandatud probleemid DRM (Direct Rendering Manager) komponentides, sealhulgas on eemaldatud krahhid radeondrm draiveris Powerbook5/6 ja RV350 süsteemides, DRI3 toetus on korrigeeritud amdgpu ja ati draiverites ning Linuxiga ühilduv seadmete loomine on teostatud kataloogis /dev/dri/.
- Parendatud on VMM-i hüperviisori täiustused. Virtuaalmasinate haldamiseks mõeldud vmd-s on lisatud kokkusurutud RAM-diskide laadimise tugi.
- Helisüsteemi on tehtud täiustusi. Üksikute heliseadmete sndio kinnitamine ainult esitamiseks ja ainult salvestamiseks on nüüd võimalik. sndiodis on kasutusele võetud madalsagedusfilter, millel on kaheksanda järgu lõppimpulsi iseloom, mis kõrvaldab müra spektraalsete ülekattetulemuste tõttu resampling'i ajal. Vaikimisi on automaatne helitugevuse vähendamine, kui uus programm alustab esitust (autovolume), välja lülitatud ja helitugevuse algväärtus on 127. Lubatud on heli segamine alternatiivsete seadmete kaudu, mis erinevad sndiodi toetatavate funktsionaalsuste tasemest.
- LLDB-debuggeri kokkupanek ja installimine on vaikimisi lubatud.
- rcctl, rc.subr ja rc.d-sse on lisatud loggeri töötluse tugi, mis võimaldab suunata logide väljundit taustprotsessidest stdouti/stderri.
- Puuteplaatide jaoks on tagatud nuppude paigutuse seadistamine läbi wsconsctl. Wscons'is on parendatud samaaegsete puudutuste töötlemist.
- ARM64 seadmete jaoks on rakendatud APM-i kasutamise võimalus, et saada teavet energia tarbimise ja aku laadimise kohta. Protsessi apmd juurdepääsu piiramiseks failisüsteemile on kasutatud unveil'i kõnet.
- Riistvara tugi on laienenud. Lisatud on uued draiverid acpige (ACPI sündmuste, nagu toitenupu vajutamine, töötlemiseks), pchgpio (ajalugu GPIO kontrollerid, millega on varustatud kaasaegsed Intel PCH-d), ujoy (mängupultide jaoks), uhidpp (Logitech HID++ seadmed). Lisatud on AMD Vi ja Intel VTD IOMMU laienduste tugi PCI seadmete isoleerimiseks ja vale juurdepääsu mälule blokeerimiseks. Lisatud on tugi Lynloong LM9002/9003 ja LM9013 arvutitele. Draiveritesse pcamux ja imxiic on lisatud ACPI tugi.
- Parandatud võrguadapterite tugi: mvpp (SFP+ ja 10G Marvel Armada Ethernetile), mvneta (1000base-x ja 2500base-x), mvsw (Marvel SOHO lülitid), rge (Wake on LAN tugi), Netgear ProSecure UTM25. Traadita draiverite iwm, iwn ja athn toele on lisatud RA (802.11n Tx Rate Adaptation) tugi. Traadita kontekstis on automatiseeritud 11a/b/g/n/ac režiimide valik, kui võrguinterface on seadistatud juurdepääsupunktina.
- Võrgu stackis on rakendatud veb (Virtual Ethernet Bridge) draiver. Rakendatud on monitooringurežiimi tugi, kus võrguinterface’ile saabuvad paketid ei edastata võrgu stacki töötlemiseks, kuid nendele saab rakendada liikluse analüüsi mehhanisme nagu BPF. Uus võrgu liideste tüüp — etherbridge — on lisatud. Pakutakse võimalust (käsk route sourceaddr) algse aadressi ümber määramiseks. IP-aadressid programmid, lähtudes tavapärasest aadressivaliku algoritmist. Tagatud on automaatne võrgu liideste aktiveerimine, kui automaatse seadistamise režiim (AUTOCONF4 ja AUTOCONF6) on sisse lülitatud.
- Installaatoris on teostatud pigistatud ram-ketta (bsd.rd) kujundi tarnimine kõikide platvormide jaoks, mis toetavad sellist käivitamist.
- Syslog'i kaudu teavituste väljund on rakendatud printf'i stringi vormingusüsteemi '%n' kasutamise kohta.
- OpenBGPD marsruuterite demonis on lisatud RTR (Resource Public Key Infrastructure (RPKI) to Router Protocol) protokolli tugi. RTR-seansside põhiteabe kuvamiseks on lisatud käsk 'bgpctl show rtr'.
- ospfd ja ospf6d kood on restruktureeritud, et ühtlustada neid teiste marsruuterite demonitega ja lihtsustada hooldust. Punkt-punkt režiimis on loodud tugi võrgu liidestele.
- Sisseehitatud HTTP-serveris httpd on rakendatud uued valikud 'location (found|notfound)', et kontrollida ressursside olemasolu.
- RPKI klientutiliidi on lisatud RRDP (The RPKI Repository Delta Protocol, RFC 8182) protokolli tugi. TAL-failis on rakendatud võimalus märkida rohkem kui üks URI.
- Dig utiliidis on rakendatud RFC 8914 (Extended DNS Error) ja RFC 8976 (ZONEMD) tugi.
- dhclientis on lisatud võimalus märkida valikuid hostname.if failides, kasutades 'dhcp' stringe.
- snmpd demonis on rakendatud täielik tugi Trapv1 muundamiseks Trapv2-ks (RFC 3584). snmpd.conf faili on lisatud uued märksõnad read, write ja notify. snmp utiliidis on rakendatud SMIde loendite tugi.
- DNS resolver unwind on lisatud tugi DNS64 ja ühenduste vastuvõtt TCP-porti kaudu.
- FTP utiliidis on lisatud pidevate ümbersuunamiste tugi (RFC 7538) ja võimalus saata If-Modified-Since päis HTTP/HTTPS päringute saatmisel.
- OpenSMTPD-sse on lisatud valik „-a”, et autentida enne sõnumi saatmist. Krüptimise vahendid on üleminekut teinud libtls teegi kasutamisele. TLS-i kuulamis soketites on rakendatud mitme sertifikaadi seadistamise võimalus, valitakse vastavalt nime domeeni (SNI).
- LibreSSL on lisatud DTLSv1.2 protokolli tugi. On rakendatud võimalus ehitada ainult libtls (`--enable-libtls-only`) ilma libcrypto ja libssl.
- OpenSSH pakett on uuendatud. Ülevaate parandustest saab vaadata siit: OpenSSH 8.5, OpenSSH 8.6.
- AMD64 arhitektuuri portide arv on 11310, aarch64 puhul 10943, i386 puhul 10468. Portides leiduvad rakenduste versioonid: Xfce 4.16, Asterisk 18.3.0, Chromium 90.0.4430.72, FFmpeg 4.3.2, GCC 8.4.0, GNOME 3.38, Go 1.16.2, KDE rakendused 20.12.3, Krita 4.4.3, LLVM/Clang 10.0.1, LibreOffice 7.0.5.2, Lua 5.3.6, MariaDB 10.5.9, Firefox 88.0 ja ESR 78.10.0, Thunderbird 78.10.0, Node.js 12.16.1, PHP 8.0.3, Postfix 3.5.10, PostgreSQL 13.2, Python 3.9.2, Ruby 3.0.1, Rust 1.51.0.
On uuendatud OpenBSD 6.9 koostisosade kolmandate osapoolte arendajatelt:
- Xenocara graafikastek, mis põhineb X.Org 7.7, koos xserver 1.20.10 + plaastritega, freetype 2.10.4, fontconfig 2.12.4, Mesa 20.0.8, xterm 367, xkeyboard-config 2.20, fonttosfnt 1.2.1.
- LLVM/Clang 10.0.1 (+ plaastritega)
- GCC 4.2.1 (+ patšid) ja 3.3.6 (+ patšid)
- Perl 5.32.1 (+ patšid)
- NSD 4.3.6
- Unbound 1.13.1
- Ncurses 5.7
- Binutils 2.17 (+ plaastritega)
- Gdb 6.3 (+ патч )
- Awk 18.12.2020
- Expat 2.2.10
OpenBSD 6.9 väljalaskmise puhul on avaldatud uus laul „Vetera Novis.”
Allikas: opennet.ru
