حماية مشاركة شاشة Mac خلف SSH

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

بمجرد التمكين، سيقبل macOS فقط اتصالات Screen Sharing المباشرة (VNC) القادمة من جهاز Mac نفسه (localhost). لذلك ستتوقف اتصالات VNC المباشرة من الأجهزة الأخرى عن العمل، سواء جاءت من الإنترنت أو من VPN أو من شبكتك المحلية.

قبل المتابعة، تأكد من أن Remote Login مفعّل على جهاز Mac لديك وأن Screens مضبوط على استخدام Secure Connections، بما في ذلك Enable on Local Connections، كما هو موضح أدناه. وإلا فلن يتمكن Screens من الاتصال.

بدءًا من macOS 10.12 Sierra، يمكن تهيئة macOS بحيث لا تقبل خدمة Screen Sharing المدمجة فيه إلا الاتصالات القادمة من جهاز Mac نفسه (localhost). يمنع هذا الأجهزة الأخرى من الاتصال مباشرة بخدمة Screen Sharing (VNC)، بما في ذلك الأجهزة الموجودة على نفس الشبكة المحلية.

لا يزال بإمكان Screens الاتصال عبر إنشاء اتصال SSH مع جهاز Mac أولًا ثم تمرير اتصال Screen Sharing عبر SSH. ونتيجةً لذلك، يصبح SSH مطلوبًا لجميع اتصالات Screens بهذا الجهاز Mac، بما في ذلك الاتصالات المحلية.

قبل البدء

نظرًا لأن اتصالات Screen Sharing المباشرة لن تُقبل بعد إجراء هذا التغيير، يجب تفعيل Remote Login (SSH) على جهاز Mac لديك.

  1. افتح System Settings.
  2. انتقل إلى General > Sharing.
  3. فعّل Remote Login.
  4. تأكد من أن حساب مستخدم Mac الخاص بك مسموح له بالوصول.

ستحتاج أيضًا إلى تهيئة Screens وScreens Connect، إذا كانا مثبتين، لاستخدام الاتصالات الآمنة كما هو موضح أدناه.

تهيئة Screens

قبل تقييد Screen Sharing على الاتصالات المحلية، عدّل الاتصال المحفوظ في Screens وافتح قسم Security.

فعّل Secure Connections وتأكد من أن Enable on Local Connections مفعّل أيضًا.

هذا مهم: بمجرد تقييد Screen Sharing على الاتصالات المحلية، يجب أن يستخدم Screens SSH حتى عندما يكون جهازك على نفس الشبكة المحلية مع جهاز Mac.

تهيئة Screens Connect

إذا كنت تستخدم Screens Connect، افتح إعداداته، واختر General، ثم فعّل Use Remote Login.

يضمن ذلك أن Screens Connect يهيّئ الاتصالات البعيدة لاستخدام SSH بدلًا من الاتصال مباشرةً بخدمة Screen Sharing.

تقييد Screen Sharing على الاتصالات المحلية

بعد تهيئة Remote Login وخيارات SSH أعلاه، افتح Terminal على جهاز Mac وأدخل:

sudo defaults write /Library/Preferences/com.apple.RemoteManagement.plist VNCOnlyLocalConnections -bool yes

أدخل كلمة مرور حساب مستخدم Mac عندما يُطلب منك ذلك.

يُوجّه الإعداد VNCOnlyLocalConnections خدمة Screen Sharing في macOS إلى قبول اتصالات VNC المباشرة فقط من localhost.

وهذا يعني:

التراجع عن التغيير

إذا أردت أن يقبل Screen Sharing في macOS الاتصالات الشبكية مباشرةً مرة أخرى، افتح Terminal وأدخل:

sudo defaults write /Library/Preferences/com.apple.RemoteManagement.plist VNCOnlyLocalConnections -bool no

اسمح لبضع ثوانٍ حتى يطبّق macOS التغيير قبل محاولة الاتصال مرة أخرى.

بمجرد سريان التغيير، سيتمكن Screens من الاتصال مباشرةً بخدمة Screen Sharing (VNC) مرة أخرى، بما في ذلك عبر شبكتك المحلية أو عبر VPN، دون الحاجة إلى نفق SSH.

يمكنك بعدها تعطيل إعدادات SSH الخاصة في Screens وScreens Connect إذا لم تعد ترغب في استخدام الاتصالات الآمنة.

مهم: بمجرد تقييد Screen Sharing على localhost، يجب أن يستخدم Screens SSH لكل اتصال بهذا الجهاز Mac، حتى عندما يكون جهازك على نفس الشبكة المحلية أو يظهر جهاز Mac ضمن Nearby.

بدون Enable on Local Connections، ستحاول الاتصالات المحلية الاتصال مباشرةً بخدمة VNC وستفشل.

هل لا تزال بحاجة إلى المساعدة؟

أرسل لنا بريدًا إلكترونيًا