مزامنة ملفات SMB: الأذونات والأمان والأداء

  • تتيح بروتوكولات SMB و Samba مشاركة الملفات ومزامنتها عبر الشبكات المختلطة مع الحفاظ على التحكم في الوصول والتوافق مع نظام التشغيل Windows.
  • تتضمن الإصدارات الحديثة من بروتوكول SMB التشفير والتوقيعات المتقدمة وسلامة ما قبل المصادقة لحماية البيانات أثناء النقل.
  • يُعد التكوين الصحيح لأذونات NTFS و ACLs أمرًا أساسيًا في الخوادم المحلية، وملفات Azure، وملفات NetApp، والسيناريوهات التي تستخدم FSLogix.
  • تعمل الحلول السحابية والهجينة على توسيع نطاق SMB إلى S3 أو غيرها من الأنظمة الخلفية، مع الحفاظ على الأمان استنادًا إلى قوائم التحكم بالوصول وأدوار الهوية.

مزامنة الملفات عبر بروتوكول SMB

La مزامنة الملفات عبر بروتوكول SMB أصبح هذا الأمر عنصرًا أساسيًا لأي مؤسسة تشارك البيانات عبر أنظمة ويندوز، لينكس، أجهزة التخزين الشبكية (NAS)، أزور، AWS، أو الخوادم الهجينة. فعندما تبدأ بإدارة عدة تيرابايتات، وعشرات المستخدمين المتزامنين، ومتطلبات الامتثال، لم يعد مجرد "مشاركة مجلد" كافيًا: إذ تدخل في الاعتبار عوامل مثل الأداء، ونظام الملفات NTFS، وأذونات المشاركة، وأمان البروتوكول، وحتى كيفية نقل هذه البيانات دون تعطيل نصف العمل.

ستجد في هذه المقالة دليل كامل حول كيفية عمل بروتوكول SMB، ودور Samba في البيئات المختلطة، وكيفية تعزيز الأمان (التشفير، والتوقيعات، وإصدارات البروتوكول)، وأفضل الممارسات المتبعة فيما يتعلق بالأذونات وقوائم التحكم بالوصول في Windows وAzure Files وAzure NetApp Files أو FSLogix، وكيفية ذلك الحفاظ على أداء لائق حتى عند نقل أو مزامنة كميات هائلة من البيانات بين الخوادم أو إلى السحابة.

ما هو بروتوكول SMB ولماذا لا يزال أساسيًا لمشاركة الملفات؟

بروتوكول Server Message Block (SMB) هي "لغة" مشاركة الملفات والطابعات وبعض خدمات الشبكة التي تستخدمها أنظمة ويندوز بشكل افتراضي. من خلال بروتوكول SMB، يستطيع المستخدم الوصول إلى المجلدات المشتركة، وفتح الملفات وتعديلها، وعرض الطابعات، أو الاستعلام عن موارد معينة كما لو كانت موجودة على جهازه، على الرغم من أنها موجودة فعليًا على خادم بعيد.

لقد تطورت تقنية SMB على مر السنين. وقد جلبت كل قفزة تحسينات في الأداء، وأمانًا معززًا (تشفير متكامل، وتوقيعات حديثة، وسلامة ما قبل المصادقة)، وميزات أخرى مصممة للبيئات عالية التوافر أو البيئات الافتراضية مثل Hyper-V أو SQL Server على خوادم الملفات.

تكمن روعة استخدام SMB في أنه يسمح دمج الشبكات المختلطة (ويندوز، ماك أو إس، لينكس، أجهزة التخزين، الحوسبة السحابية العامة) دون إجبار المستخدمين على تغيير طريقة عملهم: فهم يواصلون استخدام مستكشف الملفات، وتعيين محركات الأقراص الشبكية، و يحتفظون بوثائقهم كالمعتاد..

SMB

طبقة أمان SMB: التشفير والتوقيعات وإصدارات البروتوكول

لم يعد أمان بروتوكول SMB خيارًا إضافيًا. إذا كنت تشارك ملفات تحتوي على بيانات حساسة، وكانت الشبكة غير موثوقة تمامًا، فأنت بحاجة إليه. التشفير والحماية من هجمات الاعتراض (الرجل في المنتصف). لقد أدرجت أنظمة التشغيل Windows Server وWindows 10/11 تحسينات أمنية كبيرة في أحدث إصدارات بروتوكول SMB.

El تشفير SMB يوفر هذا النظام حماية شاملة للبيانات المنقولة بين العميل والخادم. على عكس حلول مثل IPsec أو أجهزة WAN المخصصة، يتم تكوين تشفير SMB مباشرةً فوق البروتوكول. ويمكن تطبيقه على:

  • على مستوى الموارد المشتركة (بعض المجلدات فقط).
  • على مستوى الخادم (خادم الملفات بأكمله).
  • في عملية رسم الخرائط نفسها الوحدة من العميل.

تتضمن السيناريوهات النموذجية التي يكون فيها تفعيلها منطقيًا ما يلي بيانات المستخدم أو التطبيق الحساسة التي تعبر الشبكات غير الخاضعة للتحكم (شبكات WAN الخاصة بالبائعين، وشبكات الطرف الثالث، والبيئات المختلطة) أو عندما تستخدم SMB لتوفير تخزين عالي التوفر لخدمات مثل SQL Server أو Hyper-V.

ابتداءً من نظامي التشغيل Windows Server 2022 وWindows 11، يقوم بروتوكول SMB 3.1.1 بالتفاوض تلقائيًا على مجموعات التشفير الحديثة مثل AES-256-GCM و AES-256-CCMعلى الرغم من استمرار التوافق مع AES-128-GCM و AES-128-CCM، إلا أن AES-128-GCM يستخدم عادةً بشكل افتراضي لأنه يوفر توازنًا جيدًا جدًا بين الأداء والأمان.

علاوة على ذلك، يمكن الآن استخدام بروتوكول SMB Direct (SMB عبر RDMA)، الموجود في بيئات عالية الأداء. تشفير حركة البيانات دون التضحية بالوصول المباشر إلى الذاكرةيقلل هذا من تأثير الأداء مقارنةً ببروتوكول TCP الكلاسيكي عند تمكين التشفير.

متطلبات وطرق تفعيل تشفير SMB

قبل أن تسارع إلى تفعيل التشفير على جميع الموارد المشتركة، من الجيد التحقق من بعض الأمور. المتطلبات الأساسية. لتجنب المفاجآت مع العملاء القدامى أو التطبيقات غير المألوفة، إليكم هذه النصائح:

أولاً: خذ إصدار متوافق من نظام التشغيل Windows أو Windows Server باستخدام بروتوكول SMB 3.0 أو أحدث. ويجب تفعيل هذا البروتوكول على كلٍ من جانب العميل والخادم. بالإضافة إلى ذلك، ستحتاج إلى صلاحيات المسؤول (أو ما يعادلها) على كلا الطرفين لتعديل الإعدادات.

يمكن تفعيل التشفير عبر واجهة رسومية باستخدام مركز إدارة ويندوز، من خلال بوويرشيل أو عن طريق فرض متطلبات على العميل من خلال ما يسمى "حماية UNC"، والتي تسمح بطلب التشفير حتى لو لم يكن الخادم قد قام بتكوينه افتراضيًا.

عند تمكين التشفير على خادم أو مورد مشترك، يكون التشفير افتراضيًا هو التشفير فقط عملاء الشركات الصغيرة والمتوسطة 3.0 و3.02 و3.1.1 يمكنهم الاتصال. هذا إجراء متعمد لضمان وصول جميع العملاء إلى هذا المورد باستخدام التشفير. سيتم رفض العملاء القدامى أو الذين لا يدعمون بروتوكول SMB 3.x ما لم تقم بتعديل الإعدادات.

إذا كانت بيئتك تتضمن أنظمة قديمة لا تدعم بروتوكول SMB 3.x، فيمكنك تعطيل رفض الوصول غير المشفر باستخدام PowerShell مع الخاصية رفض الوصول غير المشفر من خادم SMB. هذا يقلل من مستوى الأمان، لذا يُنصح بتقييده.

SMB

كيفية تفعيل تشفير SMB: مركز الإدارة، وPowerShell، وحماية UNC

في كثير من الحالات، تكون الطريقة الأنسب لإدارة خادم ملفات حديث هي مركز إدارة Windowsيمكنك من خلال واجهة الويب الخاصة بها تفعيل التشفير على مستوى الخادم وللموارد المشتركة المحددة دون تعقيد الأمور بالأوامر.

للحصول على مورد مشترك محدد، ما عليك سوى تحديد اسم السهم في تبويب مشاركة الملفات، حدد خيار تفعيل تشفير SMB. إذا كنت ترغب في فرض استخدام التشفير على الخادم بأكمله، يمكنك الانتقال إلى إعدادات خادم الملفات وتعيين تشفير SMB 3 ليكون إلزاميًا لجميع العملاء، ورفض أي اتصالات لا تدعمه.

إذا كنت تفضل استخدام سطر الأوامر، فإن PowerShell يوفر أوامر cmdlets واضحة مثل: Set-SmbShare, مجموعة SmbServerConfiguration o مشاركة SmbShare جديدة لإنشاء وتكوين الموارد مع تمكين التشفير منذ البداية، بالإضافة إلى أوامر لربط محركات الأقراص التي تتطلب الخصوصية (-RequirePrivacy) سواء من PowerShell أو من CMD مع NET USE ... /REQUIREPRIVACY.

La حماية جامعة نورث كارولينا يُضيف هذا طبقة حماية إضافية. فهو يسمح بتهيئة العميل لقبول الاتصالات المشفرة فقط بمسارات UNC محددة، حتى لو لم يكن الخادم يشترط التشفير افتراضيًا. يُعدّ هذا مفيدًا بشكل خاص للحماية من هجمات التجسس على الشبكات غير الموثوقة، مما يُعزز خصوصية عملاء الشركات.

عند تطبيق التشفير، يجب مراعاة وجود مسرعات الشبكة الواسعة (WAN) أو الأجهزة الوسيطة على الشبكة التي تعتمد على عرض المحتوى كنص عادي. قد يتداخل تشفير SMB مع عملها ويتسبب في مشاكل في الوصول أو الأداء.

سلامة ما قبل المصادقة والتوقيع الحديث في SMB 3.x

لتعزيز الأمن بشكل أكبر ضد هجمات تدهور البروتوكول أو التلاعب بالتفاوض، يتضمن بروتوكول SMB 3.1.1 ما يسمى سلامة المصادقة المسبقةتقوم هذه الدالة بحساب التجزئات المشفرة لرسائل التفاوض على الجلسة وتكوينها. ثم تستخدم تلك النتيجة لاستخلاص مفاتيح الجلسة والتوقيع.

بفضل هذه الآلية، يمكن للعميل والخادم الكشف عما إذا كان شخص ما يقوم بالتلاعب يُستخدم هذا الاتصال لفرض، على سبيل المثال، الرجوع إلى إصدار SMB 2.x غير المشفر. إذا تم اكتشاف عدم اتساق في هذه التجزئات، فسيتم إغلاق الجلسة على الفور.

إلى جانب التشفير، يتطور بروتوكول SMB أيضًا في مجال توقيع الرسائلاستخدم بروتوكول SMB 2.0 خوارزمية HMAC-SHA256، بينما قدم الإصداران 3.0 و3.02 خوارزمية AES-CMAC، المُحسّنة بشكل أفضل لوحدات المعالجة المركزية الحديثة التي تدعم تعليمات AES. مع نظامي التشغيل Windows Server 2022 وWindows 11، أضاف الإصدار 3.1.1 من بروتوكول SMB خوارزمية AES-128-GMAC كخوارزمية توقيع، مما يوفر أداءً مُحسّنًا في العديد من الحالات.

الميزة العملية هي أنه يمكنك الآن التوقيع والتشفير المنفصلان. إذا كنت تحتاج فقط إلى توقيع (للتأكد من سلامة البيانات) دون تشفير، فإن بروتوكول SMB يتيح ذلك باستخدام خوارزميات حديثة. وهذا يمنحك المرونة اللازمة لتلبية متطلبات التدقيق والأداء على حد سواء.

لتحقيق أقصى استفادة من هذه الميزات ومنع المهاجم من فرض استخدام بروتوكول SMB 1.0، يُنصح بما يلي: تعطيل SMBv1 بشكل كامل على الخوادم والعملاء الحديثة، وهو أمر تقوم به مايكروسوفت بالفعل بشكل افتراضي في الإصدارات الحديثة من ويندوز وويندوز سيرفر.

لماذا يجب عليك تعطيل بروتوكول SMB 1.0 في أسرع وقت ممكن

SMB 1.0 هو بروتوكول قديم وغير فعال وبه ثغرات أمنية خطيرة هذه ثغرات أمنية معروفة استُغلت من قِبل برامج الفدية وأنواع أخرى من البرامج الضارة في السنوات الأخيرة. لذلك، بدءًا من إصدارات معينة من نظامي التشغيل ويندوز 10 وويندوز سيرفر، لم يعد هذا البرنامج مُثبّتًا افتراضيًا.

إذا كان لا يزال لديك أي خوادم أو أجهزة كمبيوتر مزودة ببروتوكول SMB 1.0 في بيئتك، فإن الخطوة المنطقية الأولى هي خطط للتخلص منه. التوصية الحالية هي تعطيله على كل من الخوادم والعملاء. يُنصح بالاحتفاظ فقط بإصداري SMB 2.x و 3.x. هذا يقلل بشكل كبير من سطح الهجوم ويمنع ذلك تحويل الاتصال المشروع إلى نسخة غير مشفرة أو ضعيفة الأمان.

في بيئات ويندوز، يمكنك إدارة بروتوكول SMB 1.0 باستخدام ميزات النظام الاختيارية، أو PowerShell، أو أدوات الإدارة عن بُعد. يُنصح بتوثيق الخدمات التي قد تعتمد عليه بدقة لتجنب أي مفاجآت لاحقًا.

في بعض الحالات الخاصة جدًا (مثل مراكز التفعيل القديمة)، قد لا يكون أمامك خيار سوى الحفاظ على بروتوكول SMB 1.0 في جزء معزول من الشبكة يخضع لرقابة مشددة. هذه استثناءات محددة للغاية تنطوي على تنازلات أمنية كبيرة.

مزامنة ونقل كميات كبيرة من بيانات الشركات الصغيرة والمتوسطة دون انقطاع الخدمة

تُعدّ الهجرة أو مزامنة أدلة SMB الكبيرة (نتحدث عن 10 تيرابايت أو أكثر) من خادم إلى آخر أو إلى منصة أخرى، دون ترك الشركة غير قادرة على الكتابة إلى الموارد المشتركة لعدة أيام.

النهج الكلاسيكي عادة ما يكون كالتالي:

  1. قم بتعطيل الكتابة إلى المشاركة القديمة.
  2. استخدم أداة مثل كيكر لنسخ جميع المحتويات مع الحفاظ على أذونات نظام الملفات NTFS.
  3. قم بتهيئة المشاركات الجديدة على الخادم الوجهة.
  4. تحديث مهام الوحدات.
  5. اطلب من المستخدمين إعادة تشغيل أجهزة الكمبيوتر الخاصة بهم.

هذا يعمل، لكن المشكلة تكمن في أنه أثناء عملية النسخ الطويلة لا يمكن لأحد حفظ التغييرات في المصدر.

في حالة الأحجام الكبيرة جدًا والأقراص البطيئة، قد تستغرق النسخة الأولية وقتًا طويلاً. أكثر من عطلة نهاية أسبوع واحدةيؤثر هذا بشكل مباشر على العمل. إذا تركت المجلد قيد الاستخدام أثناء النسخ، فإنك تخاطر بفقدان التغييرات أو عمليات الحذف أو نقل الملفات التي تمت خلال فترة النقل.

في هذه الحالات، تتضمن الاستراتيجية الجمع بين عمليات تمرير متعددة باستخدام روبوكوبي (أولاً، يتم نسخ الملفات دفعة واحدة، ثم نسخ التغييرات فقط) مع تحديد فترة زمنية قصيرة جدًا للنسخ النهائي يتم خلالها تعطيل الكتابة. بعد ذلك، يتم إجراء مزامنة تدريجية باستخدام /MIR أو ما شابه، ويتم إعادة توجيه الوصول إلى الخادم الجديد. بالنسبة لملفات VHDX وغيرها من الملفات الكبيرة جدًا، قد يكون من الضروري تحديد فترات زمنية محددة. أو حتى نسخ الملفات على مستوى وحدة التخزين إذا كانت مصفوفة التخزين تسمح بذلك.

بديل آخر هو الهجرة على أجزاءيتضمن ذلك نقل المجلدات الكبيرة على مراحل وإبلاغ المستخدمين بوضوح بتغييرات المسار. أما الجانب السلبي فهو أن هذا غالباً ما يعقد تجربة المستخدم.

التحكم في الوصول في الشركات الصغيرة والمتوسطة

الأذونات وقوائم التحكم بالوصول في بروتوكول SMB لـ FSLogix وAzure Files وAzure NetApp Files

في بيئات المحاكاة الافتراضية الحديثة لأجهزة سطح المكتب أو التطبيقات، مثل تلك المستخدمة FSLogixيتم تخزين ملفات تعريف المستخدمين في حاويات VHD(X) على موارد SMB. يمكن أن توجد هذه الموارد على خوادم الملفات التقليدية، في ملفات أزور، في ملفات Azure NetApp أو حتى عبر بوابات مثل AWS Storage Gateway.

يستخدم برنامج FSLogix مسارات UNC (مواقع VHD أو مواقع CCD) لتحديد موقع ملفات تعريف المستخدمين وحاويات Office. وتعتمد حماية هذه البيانات على طبقتين:

  • الكثير أذونات نظام الملفات NTFS (قائمة التحكم بالوصول في ويندوز) في الموارد المشتركة.
  • الكثير أذونات مستوى المشاركة تم تعيينها لهويات Entra ID في ملفات Azure.

في Azure Files، يُنصح بشدة بتكوين إذن الموارد المشتركة الافتراضي يُطبَّق نوع "مشاركة بيانات ملف التخزين SMB للمتعاونين" على جميع الهويات المُصادق عليها. وهذا ضروري لتمكينهم من القراءة والكتابة. ولإدارة قوائم التحكم بالوصول (ACLs) الدقيقة، يُمنح بعض المستخدمين أو المجموعات دور المتعاون بصلاحيات مُوسَّعة على المشاركة.

الممارسة الموصى بها في هذه السيناريوهات هي استخدام ما يسمى الوصول القائم على المستخدميجب أن يمتلك كل مستخدم مجلد ملف تعريف خاص به أو ملف VHD(X). أما مسؤولو النطاق وفرق الدعم، فلهم السيطرة الكاملة على مهام الصيانة.

لتكوين ذلك، يتم إنشاء قوائم التحكم بالوصول (ACLs) النموذجية حيث مجموعة مسؤولي النطاق يتمتع مالك المنشئ بالتحكم الكامل في الهيكل بأكمله، ولديه أذونات تعديل على المجلدات الفرعية والملفات، ومجموعة مستخدمي المجال لديها أذونات تعديل فقط على المجلد الجذر حتى يمكن إنشاء الدلائل الخاصة به.

تطبيق قوائم التحكم بالوصول (ACLs) لنظام التشغيل Windows: icacls و Explorer و SIDDirSDDL في FSLogix

في نظام التشغيل ويندوز، يمكنك استخدام أداة سطر الأوامر com.icacls لتطبيق أذونات NTFS الموصى بها بشكل جماعي على مورد مشترك، بما في ذلك المجلد الجذر وجميع المجلدات الفرعية والملفات الخاصة به، وهو أمر مفيد للغاية عند إعداد المشاركات لـ FSLogix أو ملفات تعريف التجوال أو مستودعات المستخدمين المتعددين.

باستخدام icacls يمكنك، على سبيل المثال، تعطيل الميراث في جذر المورد المشترك، امنح أذونات خاصة لمنشئ المورد، ومسؤولي المجال، ومستخدمي المجال، وتأكد من أن كل مجلد جديد يتم إنشاؤه يرث بنية الأذونات هذه بشكل صحيح.

إذا كنت تفضل بيئة رسومية، فهي نفسها مستكشف ملفات Windows يتيح لك ذلك تعديل الأذونات المتقدمة: تعطيل التوريث، وإضافة كيانات الأمان (مثل CREATOR OWNER، ومجموعات المجال، وما إلى ذلك)، وتحديد ما تنطبق عليه (هذا المجلد فقط، والمجلدات الفرعية والملفات، وما إلى ذلك) وتحديد مستويات الأذونات مثل التعديل أو التحكم الكامل.

كما يقدم FSLogix خيارًا مثيرًا للاهتمام يسمى SIDDirSDDLيقبل هذا الإعداد سلسلة SDDL التي تحدد قوائم التحكم بالوصول (ACLs) التي سيتم تطبيقها تلقائيًا على دليل المستخدم عند إنشائه. لإنشاء هذه السلسلة، يتم عادةً إنشاء مجلد تجريبي. داخل هذا المجلد، يتم تعديل الأذونات وفقًا للبنية المطلوبة، ثم يتم استخراج SDDL باستخدام PowerShell (Get-Acl | Select SDDL)، وبعد ذلك يتم تعديل قسمي المالك والمنشئ لاستخدام معرف الأمان (SID) الخاص بالمستخدم بشكل ديناميكي.

بمجرد تكوين SIDDirSDDL في سياسات FSLogix، سيتم إنشاء دليل المستخدم في كل مرة يسجل فيها الدخول لأول مرة. الأذونات الدقيقة مُعرّف في ملف تعريف البرمجيات (SDDL). هذا يوفر علينا عناء تصحيح قوائم التحكم بالوصول (ACLs) لاحقًا أو تشغيل برامج نصية إضافية.

الشركات الصغيرة والمتوسطة السحابية وبوابات الملفات: Azure وAWS والتخزين الهجين

بالإضافة إلى خادم الملفات التقليدي الموجود في الموقع، تستخدم العديد من المؤسسات اليوم خدمات تخزين سحابية للشركات الصغيرة والمتوسطة مثل Azure Files أو Azure NetApp Files أو الحلول الهجينة التي تعرض SMB على الحافة وتخزن البيانات في S3 أو غيرها من الخوادم الخلفية، مثل AWS Storage Gateway في وضع بوابة الملفات.

في Azure Files، يكون سير العمل النموذجي كما يلي:

  1. إنشاء مورد لمشاركة الملفات عبر بروتوكول SMB.
  2. قم بربطه بمصدر هوية (دليل Active Directory التقليدي، خدمات مجال Azure AD، إلخ).
  3. قم بتعيين أذونات المشاركة لمستخدمين أو مجموعات معرف Entra.
  4. قم بتكوين قوائم التحكم بالوصول (ACLs) لنظام الملفات NTFS من جهاز كمبيوتر منضم إلى نطاق.

في Azure NetApp Files، تكون الخطوات كما يلي:

  1. أنشئ حساب NetApp.
  2. حدد المواقع وصممها لخدمة Active Directory Domain Services (AD DS).
  3. أنشئ مجموعات محددة من حيث السعة والحجم للشركات الصغيرة والمتوسطة.
  4. العمل حصرياً مع أذونات ويندوز كما لو كان خادم ملفات كلاسيكي، ولكنه مدعوم بتخزين سحابي عالي الأداء.

مع AWS، وحدة تحكم بوابة التخزين يتيح لك إنشاء مشاركات ملفات SMB المدعومة على حاويات S3، وتحديد البوابة، والحاوية أو نقطة الوصول، وفئة التخزين، ودور IAM، وخيارات مثل استخدام PrivateLink أو عدم استخدامه، وأنواع التشفير أو اكتشاف نوع MIME.

في هذه البيئات الهجينة، قوائم التحكم بالوصول (ACLs) لبروتوكول SMB ونظام الملفات NTFS تظل بروتوكولات SMB الآلية الأساسية للتحكم في صلاحيات الوصول إلى الملفات، حتى عند استخدام حاويات تخزين الكائنات أو وحدات التخزين السحابية. ومن الأهمية بمكان تنسيق أمان بروتوكولات SMB مع أدوار إدارة الهوية والوصول (IAM) أو ما يعادلها لتجنب أي تناقضات.

من خلال الجمع بين كل هذه الأجزاء، يصبح من الممكن بناء بنية تحتية لمزامنة الملفات قويآمن وذو أداء معقول. حتى عند التعامل مع أحجام بيانات ضخمة وبيئات هجينة معقدة.

نقل الملفات بين أجهزة الكمبيوتر: دليل باستخدام كابل الشبكة وشبكة Wi-Fi
المادة ذات الصلة:
نقل الملفات بين أجهزة الكمبيوتر: دليل باستخدام كابل الشبكة وشبكة Wi-Fi