تثبيت ملف تعريف VPN موقَّع على iPhone: اقرأ الحمولات
الملف الموقَّع يثبت من حزمه، لا ما يثبّته. تفحّص المغلّف وكل حمولة وكل شهادة قبل أن تثق بشبكة VPN أو بجهة إصدار جذرية.
تصل ملفات التعريف إلى الإعدادات باسم وموقِّع وزر تثبيت، وسطر الموقِّع هو الجزء الذي يقرأه معظم الناس. يجيب ذلك السطر عن سؤال واحد: من حزم هذه الإعدادات، وفق قواعد التحقق من التوقيع. ولا يقول إن حمولة VPN تشير إلى بوابة صاحب العمل، أو أن شهادة جذر مضمّنة تنتمي إلى مخزن ثقة TLS لديك. يفتح الدليل أدناه الحزمة بالترتيب الذي سيطبّقه الجهاز.
ابدأ بالمغلّف: من وقّع ملف التعريف هذا
على iOS يظهر ملف التعريف ضمن الإعدادات، عام، VPN وإدارة الجهاز، ويُعرض الموقِّع فوق زر التثبيت. اقرأ ذلك الاسم قبل أن تنقر أي شيء، واسأل إن كانت المنظمة التي توقعت تلقي إعدادات منها. التوقيع الصالح من جهة لا تعرفها يبقى توقيعًا صالحًا، وهو يخوّل إعداداتها لا إعداداتك. وتخبرك الشاشة نفسها أيضًا هل ملف التعريف موقَّع أصلًا.
إذا كان الملف على Mac، فافحصه قبل أن يصل إلى الهاتف. تفكّ أداة الأمان تغليف CMS وتطبع ملف plist الذي سيقرأه الجهاز، وهو المحتوى نفسه دون زر تثبيت في الطريق. وثائق Apple عن فرض الإعدادات تصف التوقيع على أنه تحقق من المنشأ، وهو بالضبط النطاق الموضح هنا.
security cms -D -i corp-vpn.mobileconfig -o corp-vpn.plist
plutil -p corp-vpn.plist
توقف هنا إذا كان الموقِّع ليس من توقعت، أو إذا كان الملف غير موقَّع ووصل عبر قناة لا يمكنها ضمانه. لا شيء لاحق في هذا الدليل يجعل مغلّفًا غير موثوق موثوقًا.
افتح كل حمولة وسمِّ ما تثبّته
ملف التعريف حاوية، والجزء المثير للاهتمام هو PayloadContent مصفوفة بداخله. يحمل كل إدخال PayloadType تحدد ما سيثبّته الجهاز: إعداد VPN مُدار، وهوية PKCS#12، وشهادة جذر، أو تسجيل إدارة. اطبع الأنواع قبل أن تقرأ أي إعداد.
plutil -extract PayloadContent xml1 -o - corp-vpn.plist |
grep -E 'PayloadType|PayloadDisplayName'
تسمّي حمولة VPN اتصالًا: عنوان الخادم، وطريقة المصادقة، وربما قاعدة لكل تطبيق أو عند الطلب. وتوفّر حمولة الهوية بيانات اعتماد العميل التي سيقدمها ذلك الاتصال. وتضيف حمولة شهادة الجذر مرساة ثقة، وتسلّم حمولة الإدارة السيطرة المستمرة إلى خادم. هذه أربعة التزامات مختلفة، والتوقيع يغطي الحزمة بدلًا من أن يضمن كل واحدة على حدة. اقرأها بهذا الترتيب، لأن شبكة VPN بلا هوية عديمة الفائدة، والهوية لا تعني كثيرًا دون معرفة من أصدرها.
حماية الملف بكلمة مرور خاصية منفصلة مرة أخرى. تخفي الحزمة المشفّرة المحتوى عن من لا يملك كلمة المرور؛ لكنها لا تقرر ما إذا كان ينبغي لك أن تأذن بما بداخلها. تعامل مع كلمة المرور كوسيلة تسليم، لا كمراجعة.
تتبّع الشهادات إلى الاتصال الذي يستخدمها
اسرد الشهادات في الحزمة وطابق كل واحدة مع وظيفة. شهادة العميل تعرّف هذا الجهاز إلى البوابة، وجهة الإصدار التي أصدرتها تنتمي إلى سلسلة الثقة لذلك الاتصال، والجذر المثبَّت لوكيل أو لخدمة داخلية ليس تلقائيًا مرساة لكل موقع HTTPS. على iOS يبقى الجذر المثبَّت يدويًا غير موثوق لـ TLS حتى تمكّنه ضمن الإعدادات، حول، إعدادات ثقة الشهادات، بينما يُوثق بالجذر الذي تسلّمه الإدارة دون تلك الخطوة. هذا الفرق هو بالضبط سبب أهمية غرض الحمولة.
openssl pkcs7 -inform DER -in corp-vpn.mobileconfig -print_certs -noout
security find-certificate -a -c "Corp Root" -p | openssl x509 -noout -subject -dates
المزوّد الذي يحمل حركة مرورك ليس، لهذا السبب، نقطة نهاية TLS لكل موقع تزوره. يحتاج الاعتراض إلى مسار الحركة وإلى مرساة ثقة يقبلها التطبيق، وملف تعريف يحمل شهادة واحدة لا يثبت أيًّا منهما. اسأل أي اتصال يستخدم الشهادة وأي تطبيقات ستقبلها، بدلًا من افتراض أن تثبيت ملف التعريف يفك تشفير كل شيء.
بعد التثبيت: تحقّق، واعرف ما تفعله الإزالة
بعد تثبيت ملف التعريف، أكّده من الجهاز لا من الملف الذي حمّلته. تسرد شاشة الإعدادات ملف التعريف المثبّت وموقّعه وحمولاته، وتُظهر شاشة VPN هل الاتصال مهيأ كما هو مقصود. حذف الملف الذي حمّلته لا يزيل شيئًا؛ الإعداد المثبّت كائن منفصل.
profiles show -type configuration
scutil --nc list
إذا كان ملف التعريف يتضمن تسجيل إدارة، فاقرأ عواقب الإزالة قبل تثبيته لا بعده. إزالة ذلك التسجيل تأخذ معها إعداداته المرتبطة وقد تزيل تطبيقات مُدارة، بحسب طريقة تسجيل الجهاز. ليست خطوة إصلاح تُجرَّب عندما تبدو شهادة خاطئة. اسأل المسؤول أي حمولة تملك المشكلة قبل إزالة أي شيء.
ينتهي الدليل بأربعة أجوبة منفصلة: من وقّع الحزمة، وأي حمولات تثبّت، وأي هوية وثقة يستخدمها كل اتصال، وماذا ستأخذ الإزالة معها. أبقِها منفصلة، يصبح ملف التعريف الموقَّع قرارًا مُراجعًا بدلًا من علامة اختيار خضراء.