يأتي نظام Systemd 262 مزودًا بأمان TPM2، وOpenSSL 4، وملفات ثنائية ثابتة

النقاط الرئيسية:
  • يسمح بإنشاء ملف ثنائي ثابت واحد لنظام systemd، مع دمج الوحدات الأساسية (مثل basic.target)، وهو مثالي للتشغيل كمعرف العملية 1 في الحاويات الخفيفة.
  • تُدخل المعلمة RestartRandomizedDelaySec تأخيرًا عشوائيًا لمنع حدوث انهيارات في عمليات إعادة التشغيل المتزامنة بعد حدوث أعطال جسيمة.
  • يقوم أمان القرص و TPM بتنفيذ كلمات مرور PIN باستخدام Argon2id (استبدال PBKDF2) وتقييد بيانات الاعتماد بمفتاح SRK الخاص بالشريحة.
  • تحسينات على التحديثات الذرية: يقدم systemd-sysupdate قاعدة بيانات ملفات جديدة وأمر التنظيف لحذف الملفات اليتيمة.
  • تمت إضافة دعم systemd-vmspawn لأجهزة Intel TDX (الأجهزة الافتراضية السرية) وأوامر جديدة بنمط sudo لـ run0

سيستم دي

يتوفر الآن الإصدار 262 من مدير النظام والخدمات systemd، والذي يتضمن تحسينات كبيرة بعد ثلاثة أشهر من التطوير. يتميز هذا الإصدار بتحسين بنيته للبيئات الافتراضية الخفيفة، وتحسين بروتوكولات التشفير المرتبطة بوحدات النظام الأساسي الموثوقة (TPMs)، وإضافة وظائف أساسية للأدوات الأصلية مثل run0 و systemd-sysupdate.

مع مراعاة الحاجة إلى حاويات ذات بصمة نظامية ضئيلة، يوفر systemd الآن إمكانية تجميع ملف تنفيذي واحد بربط ثابت. صُمم هذا التجميع (المُفعّل عبر Meson باستخدام معلمات مثل `-Dsystemd-multicall-binary=true` ) ليعمل كعملية بدء التشغيل (PID 1) في الحاويات الصغيرة جدًا، متجنبًا استخدام استدعاءات `dlopen()` لتحميل المكتبات الديناميكية، ومعتمدًا على بحث مُبسط عن المستخدمين والمجموعات بدلًا من نظام NSS القياسي.

بالإضافة إلى ذلك، يتضمن الملف التنفيذي الآن داخليًا مجموعة من ملفات الوحدة الأساسية ( مثل basic.target وsysinit.target وmulti-user.target وreboot.target، وغيرها). تُستخدم هذه الملفات المضمنة كخيار احتياطي في حال تعذر تحميل الإعدادات من القرص، مما يسمح للحاوية بالتشغيل دون الحاجة إلى تثبيت ملفات الوحدة بشكل صريح.

إدارة الخدمة واستعادة الأعطال

للتخفيف من مخاطر إعادة التشغيل المتزامنة عند تعطل خدمات متعددة في آنٍ واحد، تمّ إدخال مُعامل `RestartRandomizedDelaySec` . تُضيف هذه السياسة تأخيرًا عشوائيًا (موزعًا بانتظام) قبل إعادة تشغيل الخدمة تلقائيًا، ويُضاف هذا التأخير إلى الوقت المُحدد في `RestartSec`. بالإضافة إلى ذلك، تتضمن وحدات الشرائح `ActivatingConcurrencyMax`، وهو حدٌّ يُحدد الحد الأقصى لعدد الوحدات التي يُمكن تفعيلها في وقت واحد ضمن التسلسل الهرمي؛ ويتم وضع أي عمليات تفعيل زائدة في قائمة الانتظار حتى تتوفر خانات السعة.

في البيئات التي تتطلب توافرًا عاليًا ومستمرًا (مثل الخوادم الحيوية)، تم تطبيق مُعامل LUOSession لوحدات الخدمة. يُوجّه هذا المُعامل نظام systemd لإنشاء جلسات مُنسق التحديث المباشر، مما يُتيح تحديثات فورية لنواة النظام دون مقاطعة تشغيل الخدمة، مع الحفاظ على حالة العمليات والأجهزة.

TPM2، وfscrypt، وأمان التخزين

تتضمن الميزات الجديدة الأخرى في هذا الإصدار ربط بيانات الاعتماد المختومة في وحدة TPM مباشرةً بمفتاح الجذر الخاص بها (SRK)، مما يمنع هجمات الوسيط (MitM) التي تقوم بها المكونات الوسيطة التي تحاول اعتراض البيانات التي تم فك تشفيرها. كما يتضمن تسجيل بيانات اعتماد رقم التعريف الشخصي (PIN) لوحدة TPM2 عبر systemd-cryptenroll خوارزمية Argon2id كإعداد افتراضي، مما يُنتج مواد مفاتيح أكثر قوة من التنفيذ القديم (direct/PBKDF2).

على مستوى تخزين المستخدم، عدّل systemd-homed سلوكه تجاه الدلائل المشفرة باستخدام نظام الملفات fscrypt: ستعتمد الدلائل الجديدة افتراضيًا على سياسات الإصدار 2 (fscrypt v2)، مما يسمح للمفتاح الرئيسي بالتواجد في سلسلة مفاتيح نظام الملفات وأن يكون مرئيًا عبر مساحات أسماء التحميل المختلفة. ستظل الدلائل المشفرة باستخدام fscrypt v1 تعمل، على الرغم من أنها لن تحتوي على مسار ترقية مباشر إلى الإصدار 2.

بالإضافة إلى ذلك، تم تضمين دعم التمهيد الأصلي لوحدة نواة dm-clone، مما يسمح بإنشاء نسخ قابلة للتعديل من أجهزة الكتلة للقراءة فقط، والتي تتم معالجتها بواسطة systemd-clonesetup-generator عن طريق القراءة من /etc/clonetab.

التحديثات الذرية والتغيرات البيئية

تُوفّر حزمة systemd -sysupdate، المُصممة لتحديثات النظام عبر استبدال الأقسام والمجلدات بشكلٍ ذري، قاعدة بيانات دائمة للملفات المُثبّتة. أُضيف أمر التنظيف لحذف الملفات الزائدة ، كما تمّ اعتماد مفهوم "المكونات المُقترحة". يُمكن تقييم هذه المكونات ديناميكيًا بناءً على بنية الجهاز أو علامات الجهاز (MachineTags) لأتمتة تثبيت برامج التشغيل.

تشمل التغييرات الهامة الأخرى في الإصدار 262 ما يلي:

  • systemd-vmspawn: يضيف دعمًا لتشغيل الأجهزة الافتراضية السرية ضمن بنية Intel TDX (–coco=tdx)، لينضم إلى AMD SEV-SNP.
  • OpenSSL والتسجيل: يجري نقل نظام التشفير الآمن الأمامي (FSS) لضمان عدم قابلية تغيير السجلات من مكتبة libgcrypt إلى وظائف التشفير الأصلية في OpenSSL. كما تتم إضافة دعم التجميع الأولي لـ OpenSSL 4.
  • الطرفية وسهولة الاستخدام: تُضيف أداة رفع الصلاحيات run0 خيارات متوافقة مع sudo مثل -k و-K و-v لإعادة ضبط أو التحقق من مهلة تفويض Polkit. كما تُتيح vconsole ضبط حجم الخط إلى 100% أو 200% باستخدام FONT_SCALE، وستعرض الآن مطالبات كلمة المرور لرموز FIDO2 عدد محاولات إدخال رمز PIN المتبقية.
  • systemd-sysctl: يتضمن الآن علامة التحقق (-verify) للتحقق من خلال إعادة القراءة من أن القيمة المكتوبة إلى النظام قد تم تطبيقها بالفعل.

وأخيرًا، إذا كنت مهتمًا بمعرفة المزيد، يمكنك العثور على التفاصيل في الرابط التالي.


أضف كمصدر مفضل في جوجل