قابلية نقل ملف تعريف OpenVPN: مفاتيح محمولة مقابل خيارات المنصة
ملف .ovpn يمزج مواد هوية محمولة بتوجيهات لا يفهمها إلا عميل واحد. قارن الاثنين قبل أن تلوم الشهادة على فشل.
الملف نفسه .ovpn يفتح نفقًا في أحد العملاء ويفشل في البدء في عميل آخر، والشهادة هي المشتبه به الأول عادةً. في أغلب الأحيان يحتوي الملف على توجيه لا تنفذه إلا محرّكة واحدة. ملف التعريف عقد مع عميل محدد، وليس نصًا برمجيًا محمولًا.
افصل ما يسافر مع الهوية عمّا ينتمي إلى المنصة. عندئذٍ يسمّي الفشل نفسه عادةً.
ملف واحد، عقدان
يجمع ملف التعريف ثلاثة أنواع من المحتوى: مواد الهوية مثل شهادات CA والعميل والمفتاح الخاص، ووقائع النقل مثل نقطة النهاية البعيدة والبروتوكول، وتوجيهات السلوك مثل التعامل مع DNS أو خيارات الجهاز. النوعان الأولان محمولان على نطاق واسع بين المحرّكات التي تدعم البروتوكول نفسه. الثالث هو حيث تختلف التنفيذات. التعامل مع الملف كله كوحدة محمولة واحدة هو ما ينتج الأعطال المحيّرة.
الملف الذي يعمل في واجهة رسومية على منصة ما ليس صالحًا تلقائيًا لعميل سطر الأوامر على منصة أخرى. وحتى عندما يكون الاثنان OpenVPN، فإن المحللات ومجموعات الخيارات تختلف. لهذا فإن الاستيراد الناجح ليس دليلًا على ملف تعريف محمول.
المواد المحمولة مقابل توجيهات المنصة
أقسام الهوية والنقل هي الجزء الذي يجب الحفاظ عليه. ca و cert و key و remote تصف من يتصل وأين، وهي تعني الشيء نفسه لأي عميل مطابق للمعيار.
توجيهات السلوك هي الجزء الذي يجب مقارنته. block-outside-dns، على سبيل المثال، موجود لتغيير سلوك DNS في Windows. قد لا يتعرف عليه عميل Unix إطلاقًا.
اقرأ قائمة خيارات العميل المستقبِل لا العميل المرسِل. يوثّق دليل مرجع OpenVPN 2.6 خيارات المحرّك، ونافذة الاستيراد في واجهة رسومية ليست تلك القائمة.
اقرأ خطأ المحلل قبل الشهادة
الخطأ الذي يسمّي خيارًا غير معروف هو فشل في المحلل لا فشل في المصادقة. لم يصل الاتصال إلى TLS أبدًا، لذا لا يمكن لتغيير الشهادات أن يساعد. اقرأ أول خطأ من العميل والإصدار الفعليين، ثم احذف أو استبدل فقط التوجيه الذي لا يستطيع ذلك العميل تنفيذه. حذف أقسام الشهادة أو المسارات لجعل الملف يُحمّل هو كيف يتحول ملف تعريف عامل إلى ملف غير آمن.
إذا ذكر الخطأ المصافحة أو شهادة أو تشفيرًا، فقد تم تحليل ملف التعريف والمشكلة في مكان آخر.
أبقِ الملف الأصلي بجوار الملف المعدّل. عندما يفشل الملف المعدّل لاحقًا، يكون الأصل هو الضابط الذي يخبرك هل تحرّك التغيير أم البيئة.
الصلاحيات حدّ ثانٍ
الصلاحيات هي الحد الآخر: إنشاء جهاز نفق وتثبيت المسارات وقراءة مفتاح خاص كلها تعتمد على أذونات محلية. ملف مفتاح لا يقرأه إلا root هو نشر طبيعي، وليس عيبًا في ملف التعريف. الإصلاح يخص الملكية أو القدرات، لا الملف.
تشغيل العميل بـ sudo يمكن أن يحل رفض أذونات محلي، ولا يمكنه إضافة توجيه لا تنفذه الثنائية. كما يغيّر أي مستخدم تنطبق عليه حلقة مفاتيحه ومسارات إعداده وسياق مدير الشبكة، لذا النتيجة ليست الاختبار نفسه.
كيّف بعناية
عندما ينشر مزوّد ملفات تعريف منفصلة، خذ الملف المقصود للعميل المستقبِل. تكييف ملف منصة أخرى هو الملاذ الأخير. يحتاج إلى سجل بكل خيار تم تغييره ونسخة من الأصل.
اختبر الهوية والتوجيه وDNS كمخرجات منفصلة ثلاثة. ملف تعريف يصادق ويوجّه لكنه يكسر تحليل الأسماء هو ملف مكيّف جزئيًا، وليس ملفًا عاملًا.