Pelepasan FreeBSD 13.2 kalayan dukungan Netlink sareng WireGuard

Saatos 11 bulan pangwangunan, FreeBSD 13.2 parantos dileupaskeun. Gambar instalasi dihasilkeun pikeun amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 na riscv64 arsitéktur. Salaku tambahan, rakitan parantos disiapkeun pikeun sistem virtualisasi (QCOW2, VHD, VMDK, mentah) sareng lingkungan awan Amazon EC2, Google Compute Engine sareng Vagrant.

Parobahan konci:

  • Kamampuhan pikeun nyiptakeun snapshot tina sistem file UFS sareng FFS kalayan logging diaktipkeun (update lemes) parantos dilaksanakeun. Ogé ditambahkeun rojongan pikeun nyimpen tukang tina dumps (ngajalankeun dump kalawan "-L" bandéra) kalawan eusi sistem file UFS dipasang nalika journaling diaktipkeun. Salah sahiji fitur anu henteu sayogi nalika nganggo logging nyaéta palaksanaan latar tukang cek integritas nganggo utilitas fsck.
  • Komposisi dasar kalebet supir wg anu beroperasi dina tingkat kernel kalayan palaksanaan antarmuka jaringan pikeun VPN WireGuard. Pikeun ngagunakeun algoritma kriptografi anu dibutuhkeun ku supir, API tina subsistem kripto kernel FreeBSD diperpanjang, anu ditambahan abah anu ngamungkinkeun ngagunakeun algoritma tina perpustakaan libsodium anu henteu dirojong di FreeBSD ngalangkungan standar crypto-API. . Salila prosés pangwangunan, optimasi ogé dilumangsungkeun pikeun nyaimbangkeun merata beungkeutan pakét enkripsi sareng tugas dekripsi kana inti CPU, anu ngirangan overhead nalika ngolah pakét WireGuard.

    Usaha terakhir pikeun ngalebetkeun WireGuard di FreeBSD dilakukeun dina taun 2020, tapi réngsé dina skandal, akibatna kodeu anu parantos ditambihan dihapus kusabab kualitasna rendah, padamelan anu teu ati-ati sareng panyangga, panggunaan stub tinimbang cek, palaksanaan henteu lengkep. tina protokol jeung palanggaran lisénsi GPL. Palaksanaan anyar ieu babarengan disusun ku inti FreeBSD na WireGuard tim ngembangkeun, kalawan kontribusi ti Jason A. Donenfeld, panulis VPN WireGuard, sarta John H. Baldwin, pamekar FreeBSD renowned. Tinjauan lengkep ngeunaan parobihan dilaksanakeun kalayan dukungan FreeBSD Foundation sateuacan kodeu énggal ditampi.

  • Rojongan pikeun protokol komunikasi Netlink (RFC 3549), dipaké dina Linux Ubuntu pikeun ngatur interaksi kernel jeung prosés dina spasi pamaké, geus dilaksanakeun. Proyék ieu dugi ka ngadukung kulawarga NETLINK_ROUTE operasi pikeun ngatur kaayaan subsistem jaringan dina kernel, anu ngamungkinkeun FreeBSD ngagunakeun utilitas ip Linux tina pakét iproute2 pikeun ngatur antarmuka jaringan, nyetél alamat IP, ngonpigurasikeun rute sareng ngamanipulasi nexthop. objék nu nyimpen data kaayaan dipaké pikeun ngirimkeun pakét ka tujuan nu dipikahoyong.
  • Sadaya executable sistem dasar dina platform 64-bit gaduh Address Space Layout Randomization (ASLR) diaktipkeun sacara standar. Pikeun nganonaktipkeun ASLR sacara selektif, anjeun tiasa nganggo paréntah "proccontrol -m aslr -s disable" atanapi "elfctl -e +noaslr".
  • Dina ipfw, tabel radix dianggo pikeun milarian alamat MAC, anu ngamungkinkeun anjeun nyiptakeun tabel sareng alamat MAC sareng dianggo pikeun nyaring lalu lintas. Contona: ipfw tabel 1 nyieun tipe mac ipfw tabel 1 nambahkeun 11:22:33:44:55:66/48 ipfw nambahkeun skipto tablearg src-mac 'tabel (1)' ipfw nambahkeun mungkir src-mac 'tabel (1, 100)' ipfw nambahkeun deny lookup dst-mac 1
  • modul kernel dpdk_lpm4 na dpdk_lpm6 geus ditambahkeun jeung sadia pikeun loading via loader.conf kalawan palaksanaan algoritma pilarian jalur DIR-24-8 pikeun IPv4 / IPv6, nu ngidinan Anjeun pikeun ngaoptimalkeun fungsi routing pikeun host kalawan tabel routing kacida gedéna. dina tés, paningkatan laju 25 dititénan%). Pikeun ngonpigurasikeun modul, bisa dipaké utilitas jalur baku (pilihan FIB_ALGO geus ditambahkeun).
  • Palaksanaan sistem file ZFS geus diropéa pikeun ngaleupaskeun OpenZFS 2.1.9. Skrip ngamimitian zfskeys nyayogikeun konci otomatis anu disimpen dina sistem file ZFS. Nambahkeun zpoolreguid Aksara RC anyar pikeun napelkeun GUID ka hiji atawa leuwih zpools (misalna mangpaat pikeun lingkungan virtualization data dibagikeun).
  • Hypervisor Bhyve sareng modul vmm ngadukung ngalampirkeun langkung ti 15 CPU virtual kana sistem tamu (diatur via sysctl hw.vmm.maxcpu). Utilitas bhyve ngalaksanakeun émulasi alat virtio-input, dimana anjeun tiasa ngagentos acara input keyboard sareng beurit kana sistem tamu.
  • Dina KTLS, palaksanaan protokol TLS dijalankeun dina tingkat kernel FreeBSD, rojongan pikeun akselerasi hardware TLS 1.3 geus ditambahkeun ku offloading sababaraha operasi patali ngolah pakét asup énkripsi kana kartu jaringan. Saméméhna, fitur sarupa geus sadia pikeun TLS 1.1 jeung TLS 1.2.
  • Dina skrip ngamimitian growfs, nalika ngalegaan sistem file root, mungkin pikeun nambihan partisi swap upami partisi sapertos kitu mimitina leungit (contona, mangpaat nalika masang gambar sistem anu siap-siap dina kartu SD). Pikeun ngadalikeun ukuran swap, parameter anyar growfs_swap_size geus ditambahkeun kana rc.conf.
  • Aksara ngamimitian hostid ensures yén hiji UUID acak dihasilkeun lamun / jsb / file hostid leungit sarta UUID teu bisa diala tina hardware. Ogé ditambahkeun file /etc/machine-id kalawan ngagambarkeun ci tina ID host (euweuh hyphens).
  • The defaultrouter_fibN na ipv6_defaultrouter_fibN variabel geus ditambahkeun kana rc.conf, ngaliwatan nu bisa nambahkeun ruteu standar kana tabel FIB lian ti nu primér.
  • Rojongan pikeun hashes SHA-512/224 geus ditambahkeun kana perpustakaan libmd.
  • Perpustakaan pthread nyayogikeun dukungan pikeun semantik fungsi anu dianggo dina Linux.
  • Ditambahkeun dukungan pikeun decoding telepon sistem Linux ka kdump. Ditambahkeun dukungan pikeun ngalacak telepon sistem gaya Linux ka kdump sareng sysdecode.
  • Utilitas killall ayeuna gaduh kamampuan pikeun ngirim sinyal ka prosés anu kabeungkeut ka terminal khusus (contona, "killall -t pts / 1").
  • Nambahkeun utilitas nproc pikeun nampilkeun jumlah blok komputasi anu sayogi pikeun prosés ayeuna.
  • Rojongan pikeun decoding parameter ACS (Access Control Services) geus ditambahkeun kana utiliti pciconf.
  • Setelan SPLIT_KERNEL_DEBUG geus ditambahkeun kana kernel, nu ngidinan Anjeun pikeun nyimpen informasi debugging pikeun kernel jeung modul kernel dina file misah.
  • Linux ABI ampir lengkep sareng dukungan pikeun mékanisme vDSO (virtual dynamic shared objects), anu nyayogikeun sakumpulan telepon sistem anu terbatas anu aya dina rohangan pangguna tanpa gentos kontéks. Linux ABI dina sistem ARM64 parantos disaruakeun sareng palaksanaan pikeun arsitektur AMD64.
  • Rojongan hardware ningkat. Katambah ngawaskeun kinerja (hwpmc) rojongan pikeun Intel Alder Lake CPUs. Supir iwlwifi pikeun kartu nirkabel Intel parantos diropéa kalayan dukungan pikeun chip énggal sareng standar 802.11ac. Ditambahkeun supir rtw88 pikeun kartu nirkabel Realtek kalawan panganteur PCI. Kamampuhan lapisan linuxkpi parantos dilegakeun pikeun dianggo sareng supir Linux di FreeBSD.
  • Perpustakaan OpenSSL parantos diropéa kana vérsi 1.1.1t, LLVM/Сlang ka vérsi 14.0.5, sareng server sareng klien SSH parantos diropéa ka OpenSSH 9.2p1 (versi sateuacana nganggo OpenSSH 8.8p1). Ogé diropéa téh versi bc 6.2.4, expat 2.5.0, file 5.43, kirang 608, libarchive 3.6.2, sendmail 8.17.1, sqlite 3.40.1, unbound 1.17.1, zlib 1.2.13.

Salaku tambahan, diumumkeun yén, dimimitian ku cabang FreeBSD 14.0, kecap akses sakali-waktos OPIE, supir ce sareng cp, supir pikeun kartu ISA, mergemaster sareng minigzip utiliti, komponén ATM dina netgraph (NgATM), prosés latar tukang telnetd sareng kelas VINUM di geom.

sumber: opennet.ru

Tambahkeun komentar