מהדורת FreeBSD 13.2 עם תמיכה ב-Netlink ו- WireGuard

לאחר 11 חודשים של פיתוח, FreeBSD 13.2 שוחרר. תמונות התקנה נוצרות עבור הארכיטקטורות amd64, i386, powerpc, powerpc64, powerpc64le, powerpcspe, armv6, armv7, aarch64 וriscv64. בנוסף, הוכנו מבנים עבור מערכות וירטואליזציה (QCOW2, VHD, VMDK, raw) ו-Amazon EC2, Google Compute Engine וסביבות ענן Vagrant.

שינויים מרכזיים:

  • הטמיע את היכולת ליצור צילומי מצב של מערכות קבצים UFS ו-FFS עם רישום מופעל (עדכונים רכים). כמו כן, נוספה תמיכה בשמירת dump ברקע (הפעלת dump עם הדגל "-L") עם התוכן של מערכות קבצים UFS רכובות עם הפעלת יומן. מבין התכונות שאינן זמינות בעת שימוש ביומן, יש בדיקת תקינות רקע באמצעות כלי השירות fsck.
  • הרכב הליבה כולל את מנהל ההתקן wg, הפועל ברמת הליבה ומיישם ממשק רשת עבור VPN WireGuardכדי לנצל את אלגוריתמי הקריפטוגרפיה הנדרשים של מנהל ההתקן, הורחב ממשק ה-API של תת-מערכת ההצפנה של ליבת FreeBSD עם מעטפת המאפשרת שימוש באלגוריתמים שאינם נתמכים מספריית libsodium דרך ממשק ה-API של ההצפנה הסטנדרטי. במהלך הפיתוח, בוצעו גם אופטימיזציות כדי לאזן באופן שווה את הקצאת משימות ההצפנה והפענוח לליבות המעבד, ובכך להפחית את תקורת עיבוד החבילות. WireGuard.

    ניסיון אחרון להדליק WireGuard ניסיון מיזוג עם FreeBSD נעשה בשנת 2020, אך הסתיים במחלוקת, כאשר הקוד שכבר נוסף הוסר עקב איכות ירודה, טיפול לקוי ב-buffer, שימוש ב-stubs במקום בדיקות, יישום פרוטוקול לא שלם והפרות GPL. המימוש החדש, שהוכן במשותף על ידי צוותי הפיתוח המרכזיים של FreeBSD ו- WireGuard בהשתתפות ג'ייסון א. דוננפלד, מחבר הספר VPN WireGuard, וג'ון ה. בולדווין, מפתח FreeBSD ידוע. לפני שהקוד החדש התקבל, נערכה סקירה מלאה של השינויים בתמיכת קרן FreeBSD.

  • תמיכה בפרוטוקול התקשורת Netlink (RFC 3549) המשמש ב- Linux לארגון אינטראקציות בין הליבה לתהליכים במרחב המשתמש. הפרויקט מוגבל לתמיכה במשפחת הפעולות NETLINK_ROUTE לניהול מצב תת-מערכת הרשת בליבה, מה שמאפשר שימוש ב-FreeBSD. Linux-תוכנת ה-ip מחבילת iproute2 לניהול ממשקי רשת, התקנה כתובות IP, הגדרות ניתוב, ומניפולציה של אובייקטי nexthop המאחסנים נתוני מצב המשמשים להעברת חבילה ליעד הרצוי.
  • לכל קובצי ההפעלה של מערכת הבסיס בפלטפורמות של 64 סיביות מופעלת כברירת מחדל. כדי להשבית את ASLR באופן סלקטיבי, אתה יכול להשתמש בפקודות "proccontrol -ma aslr -s disable" או "elfctl -e +noaslr".
  • ipfw משתמש בטבלאות Radix כדי לחפש כתובות MAC, מה שמאפשר ליצור טבלאות עם כתובות MAC ולהשתמש בהן כדי לסנן תעבורה. לדוגמה: ipfw table 1 create type mac ipfw table 1 add 11:22:33:44:55:66/48 ipfw add skipto tablearg src-mac 'table(1)' ipfw add deny src-mac 'table(1, 100 )' ipfw add deny lookup dst-mac 1
  • נוספו וזמינים לטעינה דרך loader.conf הם מודולי ליבת dpdk_lpm4 ו-dpdk_lpm6 עם הטמעת אלגוריתם חיפוש המסלולים DIR-24-8 עבור IPv4/IPv6, המאפשר לך לייעל פונקציות ניתוב עבור מארחים עם טבלאות ניתוב גדולות מאוד (בדיקות להראות עליית מהירות של 25%. ניתן להשתמש בכלי המסלול הסטנדרטי כדי להגדיר מודולים (נוספה אפשרות FIB_ALGO).
  • היישום של מערכת הקבצים ZFS עודכן לגרסה של OpenZFS 2.1.9. סקריפט האתחול של zfskeys מספק טעינה אוטומטית של מפתחות המאוחסנים במערכת הקבצים ZFS. הוסף סקריפט RC חדש zpoolreguid כדי להקצות GUID ל-zpool אחד או יותר (שימושי עבור סביבות וירטואליזציה משותפות של נתונים, למשל).
  • ה-Bhyve hypervisor ומודול vmm תומכים בחיבור של יותר מ-15 מעבדים וירטואליים למערכת האורחת (ניתן להתאמה באמצעות sysctl hw.vmm.maxcpu). כלי השירות bhyve מיישם אמולציה של התקן ה-virtio-input, שבאמצעותו אתה יכול להחליף אירועי קלט של מקלדת ועכבר למערכת האורחת.
  • KTLS, מימוש של פרוטוקול TLS הפועל ברמת ליבת FreeBSD, הוסיפה תמיכה בהאצת חומרה TLS 1.3 על ידי הורדת חלק מהפעולות הקשורות לעיבוד מנות נכנסות מוצפנות על כתפי כרטיס הרשת. בעבר, תכונה זו הייתה זמינה עבור TLS 1.1 ו-TLS 1.2.
  • בסקריפט ההתחלה growfs, כאשר מרחיבים את השורש FS, מובטח שמתווסף מחיצת החלפה אם מחיצה כזו לא הייתה קיימת במקור (לדוגמה, זה שימושי בעת התקנת תמונת מערכת מוכנה על כרטיס SD). אפשרות חדשה, growfs_swap_size, נוספה ל-rc.conf כדי לשלוט בגודל ההחלפה.
  • סקריפט האתחול hostid מבטיח שנוצר UUID אקראי במקרה שקובץ /etc/hostid חסר ולא ניתן להשיג את ה-UUID מהחומרה. נוסף גם הקובץ /etc/machine-id עם ייצוג קומפקטי של מזהה המארח (ללא מקפים).
  • משתנים defaultrouter_fibN ו-ipv6_defaultrouter_fibN נוספו ל-rc.conf, שדרכם ניתן להוסיף נתיבי ברירת מחדל לטבלאות FIB שאינן הראשית.
  • תמיכה בגיבוב SHA-512/224 נוספה לספריית libmd.
  • ספריית pthread מיישמת תמיכה בסמנטיקה של פונקציות המשמשות ב- Linux.
  • תמיכה בפענוח קריאות מערכת נוספה ל-kdump. Linuxנוספה תמיכה בקריאות מערכת מעקב בסגנון kdump ו-sysdecode. Linux.
  • לכלי השירות Killall יש כעת את היכולת לשלוח אות לתהליכים המחוברים למסוף ספציפי (לדוגמה, "killall -t pts/1").
  • נוסף כלי עזר nproc כדי להציג את מספר היחידות החישוביות הזמינות לתהליך הנוכחי.
  • תמיכה בפענוח פרמטרים של ACS (Access Control Services) נוספה לכלי השירות pciconf.
  • הגדרת SPLIT_KERNEL_DEBUG נוספה לליבה, המאפשרת שמירת מידע איתור באגים עבור מודולי הליבה והקרנל בקבצים נפרדים.
  • ה-Linux ABI כמעט שלם עם תמיכה במנגנון vDSO (אובייקטים משותפים וירטואליים דינמיים), המספק סט מוגבל של קריאות מערכת הזמינות במרחב המשתמש ללא החלפת הקשר. ה-Linux ABI במערכות ARM64 הובא להתאמה ליישום של ארכיטקטורת AMD64.
  • תמיכת חומרה משופרת. נוספה תמיכה בניטור ביצועים (hwpmc) עבור מעבדי Intel Alder Lake. עדכון מנהל ההתקן iwlwifi עבור כרטיסי אלחוטיים של Intel עם תמיכה בשבבים חדשים ובתקן 802.11ac. נוסף מנהל ההתקן rtw88 עבור כרטיסי אלחוטיים של Realtek עם ממשק PCI. הרחבת שכבת 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 שיעור בגאום.

מקור: OpenNet.ru

קנה אירוח אמין לאתרים עם הגנת DDoS, שרתי VPS VDS 🔥 קנה אחסון אתרים אמין עם הגנת DDoS, שרתי VPS VDS | ProHoster