تحدث ثلاثة أشياء مصادقة داخل اتصال L2TP/IPsec واحد، وواحد فقط منها يخصّ الشخص الذي يتصل. يثبت IPsec هوية طرفي النفق، وقد تثبت وصلة L2TP التحكمية هوية القرينين مرة أخرى بسرّها الخاص، ثم يثبت PPP حساب المستخدم داخل الجلسة. الفشل في أي مرحلة يبدو كخطأ دخول عام في نافذة العميل، ويبدو مختلفًا تمامًا في سجل الخادم. امشِ على المراحل بالترتيب وتوقف عند أول مرحلة تفشل، لأن كل مرحلة تحت مرحلة غير مختبرة هي أيضًا غير مختبرة.

ثلاث مراحل مصادقة وثلاث هويات مختلفة

يثبت IPsec من يملك طرفي النفق، بمفتاح مشترك مسبقًا أو شهادة. تلك الهوية تخصّ الآلات أو البوابات، لا الإنسان الذي أمام لوحة المفاتيح. وعندما يتعذّر على القرينين الاتفاق في هذه المرحلة، لا تُتبادل أي حزمة L2TP إطلاقًا.

يمكن لوصلة L2TP التحكمية أن تضيف تبادلًا ثانيًا منفصلًا للتحدي والاستجابة يقوده سرّ مشترك يجب أن يحتفظ به الطرفان.

يجعل RFC 2661 مصادقة وصلة التحكم تلك اختيارية، وهذا يفسّر لماذا ينتج الخطأ نفسه أعراضًا مختلفة على خادمين. النشر الذي لم يضبط سرّ نفق قط يتخطى المرحلة كليًا؛ والنشر الذي ضبطه على جانب واحد فقط يفشل قبل أن يُعرض PPP أصلًا. ثم يصادق PPP على المستخدم بواسطة PAP أو CHAP أو MSCHAPv2 ويسلّم الاسم إلى مخزن حسابات قد يكون محليًا أو في chap-secrets أو على RADIUS. وكلمة مرور خاطئة في تلك النقطة تتركك مع نفق يعمل وجلسة فاشلة.

اقرأ نقطة التوقف قبل أن تعدّل أي إعداد

ابدأ بـ ipsec --version لتعرف ما إذا كانت مخرجات الحالة تخصّ strongSwan أم Libreswan. ثم اقرأ سجل الخادم لا نافذة العميل، لأن الخادم يسجّل أي مرحلة رفضت.

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

أبقِ المادة المفتاحية وكلمات المرور خارج ذلك النسخ؛ فاسم المرحلة يوجّه العمل، والمفتاح المشترك المسرَّب يعيد فتح التذكرة بنتائج أسوأ.

الخطوة الأولى: هل لدى IPsec ارتباط؟

شغّل ipsec statusall على strongSwan أو ipsec whack --status على Libreswan وابحث عن ارتباط فرعي قائم بعدّادات غير صفرية. ويعرض ip xfrm state رؤية النواة على كليهما. زوج SA مثبّت وعدّاداته تتصاعد يعني أن المرحلة الأولى تمّت ويمكنك المضي.

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

توقف ما دام الارتباط غائبًا. تعديل خيارات PPP في تلك النقطة لا يغيّر شيئًا ويخفي العطل الحقيقي عن الشخص التالي.

الخطوة الثانية: هل صادقت وصلة L2TP التحكمية؟

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

إن لم يكن لدى أي من الطرفين سرّ نفق مضبوط، فتخطَّ هذه المرحلة واعتبر فشل وصلة التحكم مشكلة وصول بدلًا من ذلك. تأكد من أن UDP 1701 يصل إلى الخادم وأن الطرفين متفقان على التغليف نفسه. قاعدة جدار حماية كُتبت لأحد هذين الشرطين سبب شائع لاتصال يُفتح نصف فتح.

الجلسة التي تبدأ تفاوض PPP فقط هي التي تجاوزت مرحلة النفق فعلًا.

الخطوة الثالثة: هل يرفض PPP الحساب؟

فشل PPP يبدو مختلفًا من الخارج: النفق قائم، والجلسة تبدأ، ويسجّل الخادم فشل طريقة مصادقة أو رفض حساب. اقرأ الطريقة المذكورة في تلك الرسالة. يفشل PAP وCHAP لأسباب مختلفة، والخادم الذي يرفض واحدة سيرفض عميلًا يعرض تلك الواحدة فقط.

على خادم Linux، افحص ملف الخيارات الذي يمرّره الخادم إلى PPP، وعادةً /etc/ppp/options.xl2tpd، وتأكد من الطرق المقبولة ومن أين تُحلّ الحسابات. الاسم الموجود في RADIUS وغير الموجود في ملف الأسرار المحلي يفشل بهدوء ويبدو ككلمة مرور سيئة. ثم تحقق من أن العميل يعرض طريقة يقبلها الخادم، لا طريقة أقوى يرفض الخادم التفاوض عليها. تغيير المفتاح المشترك لإصلاح هذه المرحلة يهدر بعد ظهر كامل ولا يغيّر شيئًا.

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

مقالات ذات صلة