11 ай иштеп чыгуудан кийин FreeBSD 13.2 чыгарылды. Орнотуу сүрөттөрү amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 жана riscv64 архитектуралары үчүн түзүлгөн. Кошумчалай кетсек, виртуалдаштыруу системалары (QCOW2, VHD, VMDK, чийки) жана Amazon EC2, Google Compute Engine жана Vagrant булут чөйрөлөрү үчүн ассамблеялар даярдалган.
Негизги өзгөрүүлөр:
- UFS жана FFS файлдык тутумдарынын снапшотторун жазуу мүмкүнчүлүгү иштетилген (жумшак жаңыртуулар) ишке ашырылган. Ошондой эле журнализация иштетилгенде орнотулган UFS файлдык тутумдарынын мазмуну менен таштандыларды («-L» желекчеси менен иштеп жаткан таштанды) фондо сактоо үчүн колдоо кошулду. Каттоо учурунда жеткиликсиз болгон функциялардын бири - fsck утилитасын колдонуу менен бүтүндүктү текшерүүнүн фонунда аткарылышы.
- Негизги курамга ядро деңгээлинде иштеген жана тармак интерфейсин ишке ашырган wg драйвери кирет VPN WireGuard. Драйвер талап кылган криптографиялык алгоритмдерди колдоо үчүн, FreeBSD ядросунун крипто тутумунун API кеңейтилип, стандарттуу крипто API аркылуу libsodium китепканасынан колдоого алынбаган алгоритмдерди колдонууга мүмкүндүк берүүчү ороо кошулду. Иштеп чыгуу учурунда, процессордун өзөктөрү боюнча шифрлөө жана чечмелөө тапшырмаларын бөлүштүрүүнү бирдей тең салмактоо үчүн оптималдаштыруулар да жүргүзүлдү, бул WireGuard пакеттерин иштетүүнүн кошумча чыгымдарын азайтты.
WireGuardды FreeBSDге киргизүү аракети акыркы жолу 2020-жылы жасалган, бирок жаңжал менен аяктаган, натыйжада буга чейин кошулган код сапатсыз, буферлер менен этиятсыз иштөөдөн, текшерүүнүн ордуна тактарды колдонуудан, толук эмес ишке ашыруудан улам алынып салынган. протоколдун жана GPL лицензиясынын бузулушу. Жаңы ишке ашыруу VPN WireGuard автору Джейсон А. Доненфельд менен FreeBSDдин белгилүү иштеп чыгуучусу Джон Х. Болдуиндин салымдары менен негизги FreeBSD жана WireGuard иштеп чыгуу топтору тарабынан бирге даярдалган. Жаңы код кабыл алынганга чейин FreeBSD Фондунун колдоосу менен өзгөртүүлөрдү толук карап чыгуу жүргүзүлгөн.
- Linux'та ядро жана колдонуучу мейкиндигинин процесстеринин ортосундагы өз ара аракеттенүүнү уюштуруу үчүн колдонулган Netlink байланыш протоколуна (RFC 3549) колдоо көрсөтүлдү. Долбоор ядродогу тармактык тутумдун абалын башкаруу үчүн NETLINK_ROUTE операциялар үй-бүлөсүн колдоо менен гана чектелет, бул FreeBSD'деги iproute2 пакетинен Linux ip утилитасын тармактык интерфейстерди, орнотууларды жана башка функцияларды башкаруу үчүн колдонууга мүмкүндүк берет. IP даректери, маршруттоо жөндөөлөрү жана пакетти каалаган жерге жөнөтүү үчүн колдонулган абал маалыматтарын сактаган nexthop объектилерин манипуляциялоо.
- 64 биттик платформалардагы бардык базалык тутумдун аткарылуучу файлдары демейки боюнча иштетилген дарек мейкиндигин рандомизациялоо (ASLR) бар. ASLRди тандап өчүрүү үчүн "proccontrol -m aslr -s disable" же "elfctl -e +noaslr" буйруктарын колдонсоңуз болот.
- ipfwде radix таблицалары MAC даректерин издөө үчүн колдонулат, бул MAC даректери бар таблицаларды түзүүгө жана аларды трафикти чыпкалоо үчүн колдонууга мүмкүндүк берет. Мисалы: ipfw 1 таблицасы Mac түрүн түзүү ipfw таблицасы 1 кошуу 11:22:33:44:55:66/48 ipfw кошуу skipto tablearg src-mac 'table(1)' ipfw кошуу четке кагуу src-mac 'table(1,, 100 )' ipfw кошуу dst-mac 1 издөөнү четке кагуу
- dpdk_lpm4 жана dpdk_lpm6 ядро модулдары кошулду жана IPv24/IPv8 үчүн DIR-4-6 маршруттук издөө алгоритмин ишке ашыруу менен loader.conf аркылуу жүктөө үчүн жеткиликтүү, бул өтө чоң маршруттук таблицалары бар хосттор үчүн маршрутташтыруу функцияларын оптималдаштырууга мүмкүндүк берет ( сыноолордо ылдамдыктын 25% жогорулашы байкалат. Модулдарды конфигурациялоо үчүн стандарттык маршруттук утилитаны колдонсо болот (FIB_ALGO опциясы кошулган).
- ZFS файл системасын ишке ашыруу OpenZFS 2.1.9 чыгаруу үчүн жаңыртылган. Zfskeys баштоо скрипти ZFS файл тутумунда сакталган ачкычтарды автоматтык түрдө жүктөөнү камсыз кылат. Бир же бир нече zpoolга GUID дайындоо үчүн жаңы RC скрипт zpoolreguid кошулду (мисалы, жалпы берилиштерди виртуалдаштыруу чөйрөлөрү үчүн пайдалуу).
- Bhyve гипервизору жана vmm модулу конок системасына 15тен ашык виртуалдык CPU туташтырууну колдойт (sysctl hw.vmm.maxcpu аркылуу жөнгө салынат). bhyve утилитасы virtio-киргизүү түзүлүшүнүн эмуляциясын ишке ашырат, анын жардамы менен конок системасына клавиатура жана чычкан киргизүү окуяларын алмаштыра аласыз.
- FreeBSD ядросунун деңгээлинде иштеген TLS протоколунун ишке ашырылышы болгон KTLSте TLS 1.3 аппараттык тездетилишин колдоо түйүн картасына шифрленген келген пакеттерди иштетүүгө байланышкан кээ бир операцияларды түшүрүү аркылуу кошулган. Буга чейин ушундай функция TLS 1.1 жана TLS 1.2 үчүн жеткиликтүү болгон.
- Grownfs стартап скриптинде, тамыр файл тутумун кеңейтүүдө, эгерде мындай бөлүм башында жок болсо, своп бөлүмүн кошууга болот (мисалы, SD картага даяр система сүрөтүн орнотууда пайдалуу). Своп өлчөмүн көзөмөлдөө үчүн, rc.conf файлына growfs_swap_size жаңы параметри кошулду.
- Hostid баштоо скрипти, /etc/hostid файлы жок болсо жана UUIDди аппараттык камсыздоодон алуу мүмкүн эмес болсо, кокус UUID түзүлүшүн камсыздайт. Ошондой эле /etc/machine-id файлы кошулган, хост идентификаторунун компакттуу өкүлчүлүгү (тиресиз).
- defaultrouter_fibN жана ipv6_defaultrouter_fibN өзгөрмөлөрү rc.conf файлына кошулду, алар аркылуу сиз FIB таблицаларына негизгиден башка демейки маршруттарды кошо аласыз.
- SHA-512/224 хэштерин колдоо libmd китепканасына кошулду.
- pthread китепканасы Linux'та колдонулган функциялардын семантикасын колдоону камсыз кылат.
- Linux тутумунун kdump чалууларын чечмелөө үчүн колдоо кошулду. kdump жана sysdecode үчүн Linux стилиндеги тутум чалууларды көзөмөлдөө үчүн колдоо кошулду.
- Killall утилитасы эми белгилүү бир терминалга байланышкан процесстерге сигнал жөнөтүү мүмкүнчүлүгүнө ээ (мисалы, “killall -t pts/1”).
- Учурдагы процесске жеткиликтүү эсептөө блокторунун санын көрсөтүү үчүн nproc утилитасы кошулду.
- ACS (Access Control Services) параметрлерин декоддоо үчүн колдоо pciconf утилитасына кошулду.
- SPLIT_KERNEL_DEBUG жөндөөсү ядрого кошулду, ал өзөк жана ядро модулдары үчүн мүчүлүштүктөрдү оңдоо маалыматын өзүнчө файлдарда сактоого мүмкүндүк берет.
- Linux ABI контекстти алмаштыруусуз колдонуучу мейкиндигинде жеткиликтүү системалык чалуулардын чектелген топтомун камсыз кылган vDSO (виртуалдык динамикалык жалпы объектилер) механизмин колдоо менен дээрлик бүттү. ARM64 системаларындагы Linux ABI AMD64 архитектурасын ишке ашыруу менен теңдештирилди.
- Жакшыртылган аппараттык колдоо. Intel Alder Lake процессорлору үчүн кошумча өндүрүмдүүлүккө мониторинг (hwpmc) колдоосу. Intel зымсыз карталары үчүн iwlwifi драйвери жаңы чиптерди жана 802.11ac стандартын колдоо менен жаңыртылган. PCI интерфейси бар Realtek зымсыз карталары үчүн rtw88 драйвери кошулду. linuxkpi катмарынын мүмкүнчүлүктөрү FreeBSDдеги Linux драйверлери менен колдонуу үчүн кеңейтилген.
- OpenSSL китепканасы 1.1.1t версиясына, LLVM/Сlang 14.0.5 версиясына, ал эми SSH сервери жана кардары OpenSSH 9.2p1ге жаңыртылган (мурунку версия OpenSSH 8.8p1 колдонулган). Ошондой эле bc 6.2.4, expat 2.5.0, файл 5.43, 608ден аз, libarchive 3.6.2, sendmail 8.17.1, sqlite 3.40.1, unbound 1.17.1, zlib 1.2.13 версиялары жаңыртылды.
Кошумчалай кетсек, FreeBSD 14.0 филиалынан баштап, бир жолку сырсөздөр OPIE, ce жана cp драйверлери, ISA карталары үчүн драйверлер, mergemaster жана minigzip утилиталары, netgraph ичиндеги банкоматтын компоненттери (NgATM), telnetd фон процесси жана Геом боюнча VINUM класс.
Source: opennet.ru
