TuxTape, הצעה חדשה עבור LivePatch ב-Linux

טוקסטייפ

הקונספט של "Livepatch אינו דבר חדש וזה אפילו לא יושם בלינוקס במשך כמה שנים, שכן Red Hat, Oracle, Canonical ו-SUSE הם חלק מאלה שהטמיעו את הטכנולוגיה הזו עבור ההפצות שלהם.

ולמרות שהם ביססו את עצמם כפתרון מצוין, זה זה תלוי בדרך כלל בתהליכים סגורים ביצירת הטלאים, הגבלת שקיפות ויכולת הסתגלות. פרויקטים קודמים בקוד פתוח, כמו elivepatch של Gentoo ו-Livepatch של Linux של דביאן, סומנו בתקופות ארוכות של חוסר פעילות או סטגנציה בשלבי האב-טיפוס שלהם.

מתמודד עם סדרת הבעיות הזו שעדיין עומדים בפני תהליך של יצירה, קומפילציה, פריסה והתקנה של תיקוני ליבת לינוקס פעילים, TuxTape מציגה את עצמה כפתרון עצמאי, שנועד להתאים לכל גרסה של ליבת לינוקס, מבלי להיות מוגבל לחבילות ספציפיות לכל הפצה.

TuxTape, פתרון לתיקון חי בלינוקס

TuxTape, הוא פתרון חדש כי מאפשר למנהלים של מערכות ליישם תשתית משלך ליצור, להרכיב ולפרוס תיקונים חיים לליבת לינוקס.

המטרה העיקרית מ-TuxTape הוא להציע מערכת מקיפה שהופכת את היצירה והאספקה ​​של תיקונים חיים לאוטומטיים. הארכיטקטורה שלו מאפשרת יצירת תיקונים התואמים לכלים קיימים כגון kpatch של Red Hat, kGraft של SUSE, Ksplice של Oracle ופתרונות אוניברסליים נוספים.

הטלאים הם מיושמים כמודולי ליבה שמחליפים פונקציות קיימות על ידי שימוש בתת המערכת ftrace, המפנה את הביצוע לפונקציות החדשות הכלולות במודול. בנוסף, ל-TuxTape יש את היכולת לעקוב אחר עדכוני פגיעות שפורסמו ברשימת התפוצה של linux-cve-announce ובמאגרי Git.

תיקון חי של TuxTape

באמצעות מידע זה, המערכת מסווגת נקודות תורפה לפי חומרה, מעריכה את הישימות של כל תיקון באמצעות ניתוח מפורט של פרופיל בניית הליבה, ומבטלת את התיקונים שאינם משפיעים על סביבת היעד. גישה סלקטיבית זו מבטיחה שרק שינויים רלוונטיים מיושמים, מזעור סיכונים ואופטימיזציה של הביצועים.

רכיבי פרויקט וארכיטקטורה

ערכת TuxTape הוא מורכב ממספר כלים משולבים החל מזיהוי ועד לתיקון חי:

  • מערכת מעקב אחר פגיעות: זה אחראי על איתור ורישום איומים חדשים בזמן אמת.
  • מחולל מסדי נתונים: היא אחראית לספק מידע על תיקונים ופגיעויות במסד נתונים מובנה.
  • שרת מטא נתונים עם gRPC: מנהל תקשורת ותיאום שירותים הקשורים ליצירת טלאים.
  • מערכת שיגור ובניית גרעין: מקל על הידור ליבה בתצורות ספציפיות על ידי יצירת פרופיל קומפילציה מפורט.
  • קובץ מחולל ותיקון: הופך תיקונים רגילים למודולי ליבה הניתנים לטעינה דינמית.
  • לקוח למארחי קצה: מאפשר קליטה ויישום של תיקונים על מערכות ייצור.
  • ממשק אינטראקטיבי (לוח מחוונים): מספק מסוף ניהול למשתמש שבו הוא יכול לסקור, לנהל וליצור טלאים חיים בהתבסס על המקורות שהתקבלו.

ראוי להזכיר שהפרויקט והפיתוח של TuxTape נמצאים כרגע בשלב אב טיפוס ניסיוני, כך שכרגע הוא מומלץ רק לבדיקה ראשונית עם מרכיביו השונים.

למעוניינים לבדוק את הפרויקט, בדיקה מומלצת כיום רק בכלים ספציפיים כגון:

  • tuxtape-cve-parser: מנתח מידע על פגיעות ובונה מסד נתונים של תיקונים.
  • שרת טוקסטייפ: מיישמת ממשק gRPC ליצירת תיקון והפצה.
  • tuxtape-kernel-builder: הוא אחראי על בניית הליבה עם תצורה נתונה ויצירת פרופיל ההידור המתאים.
  • לוח מחוונים של טוקסטייפ: מספק ממשק מסוף לסקירה ויצירת טלאים חיים בהתבסס על טלאי מקור שהתקבלו.

לבסוף, חשוב להזכיר שהפרויקט מפותח ב- Rust ומופץ תחת רישיון Apache 2.0. אתה יכול לעיין במידע נוסף או בקוד המקור של זה, מ הקישור הבא.