المحتويات

مسألة

يختبر المستخدم حالات فشل اتصال VPN عند محاولة إنشاء اتصال باستخدام Cisco Secure Client.

البيئة

- التقنية: Cisco Secure Access - الوصول الآمن إلى العميل عن بعد (VPN، Posture، المورد الخاص)

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

- نظام التشغيل: MacOS (بناء على مسارات ملف السجل التي تظهر /Users/admin/workspace/secure-client-mac_raccoon_MR15/)

- برامج الطرف الثالث: تم تثبيت Zscaler على نظام العميل

- بروتوكول VPN: CSTP (بروتوكول نفق Cisco SSL)

- إصدار TLS: TLS 1.3 مع تشفير TLS_AES_256_GCM_SHA384

قرار

يتضمن الحل تحديد التعارض ومعالجته بين وظيفة فك تشفير SSL/TLS الخاصة ب Cisco Secure Client و Zscaler.

الخطوة 1: تحليل السجلات وتشخيصها

التقاط سجلات DART الخاصة بالعميل الآمن من Cisco وتحليلها لتحديد نمط فشل الاتصال. ستظهر السجلات إنشاء جلسة TLS بنجاح يتبعها إعادة تعيين اتصال فوري.

المؤشرات التشخيصية الرئيسية في السجلات:

- إنشاء اتصال TLS 1.3 بشفرة TLS_AES_256_GCM_SHA384

- عملية حساب وحدة الحد الأقصى للنقل (MTU) وإجراء تفاوض HTTP بشكل طبيعي

- إعادة تعيين الاتصال عن طريق خطأ النظير (رمز الإرجاع: 54) أثناء عملية قراءة مأخذ التوصيل

يتم إنشاء جلسة TLS 1.3 بنجاح إستخدام تشفير TLS_AES_256_GCM_SHA384، ولكن بعد إنشاء الجلسة مباشرة، يتم إرسال حزمة إعادة ضبط التي تنهي الاتصال، مما يؤدي إلى هدم نفق VPN. يظهر الخطأ المحدد الملاحظ في السجلات "إعادة ضبط الاتصال بواسطة النظير" مع رمز الإرجاع 54 (0x0000036) أثناء عملية قراءة مأخذ التوصيل.

يحدث تسلسل الخطأ التالي أثناء محاولات الاتصال:

2026-03-11 10 vpnagentd: (libvpncommon.dylib) [com.cisco.secureclient.vpn:csc_vpnagent] A TLS 1.3 connection has been established using cipher TLS_AES_256_GCM_SHA384

2026-03-11 vpnagentd: (libvpncommon.dylib) [com.cisco.secureclient.vpn:csc_vpnagent] Function: calculateTunnelMTU File: /Users/admin/workspace/secure-client-macos_Raccoon_MR15/vpn/Agent/CstpProtocol.cpp Line: 2923 The candidate MTU (1299) is derived from the physical interface MTU.

2026-03-11 17:01:48. vpnagentd: (libvpncommon.dylib) [com.cisco.secureclient.vpn:csc_vpnagent] Function: startHTTPNegotiation File: /Users/admin/workspace/secure-client-macos_Raccoon_MR15/vpn/Agent/CstpProtocol.cpp Line: 1027 Proposed base MTU is 1400.

2026-03-11 17:01:48.356 vpnagentd: (libvpncommon.dylib) [com.cisco.secureclient.vpn:csc_vpnagent] Function: internalReadSocket File: /Users/admin/workspace/secure-client-macos_Raccoon_MR15/vpn/Common/IPC/UdpTcpTransports_unix.cpp Line: 570 Invoked Function: ::read Return Code: 54  Description: Connection reset by peer

الخطوة 2: تعريف برنامج الطرف الثالث

تحقق من وجود برنامج أمان من قبل جهة خارجية قد تقوم بإجراء فحص أو فك تشفير SSL/TLS على نظام العميل. وفي هذه الحالة، تم تعريف Zscaler على أنه التطبيق المتداخل.

الخطوة 3: حل تعارض فك تشفير SSL/TLS

قم بمعالجة التعارض بين حركة مرور بيانات VPN الخاصة بالعميل الآمن من Cisco ووظيفة فك تشفير SSL/TLS الخاصة ب Zscaler. يبدو أن حركة مرور VPN تمر بفك تشفير SSL/TLS بواسطة Zscaler، والذي يتداخل مع إنشاء نفق VPN ويسبب إعادة ضبط الاتصال.

تتضمن نهج الحلول المحتملة ما يلي:

- تكوين Zscaler لاستبعاد حركة مرور VPN الخاصة بالعميل الآمن من فحص SSL/TLS من Cisco

- إنشاء قواعد تجاوز في Zscaler لنقاط نهاية خادم VPN

- تعطيل Zscaler مؤقتا أثناء إختبار اتصال VPN لتأكيد التعارض

- التنسيق مع فريق أمان الشبكة لإنشاء استبعادات مناسبة

السبب

السبب الجذري لهذه المشكلة هو تعارض بين حركة مرور VPN الخاصة بالعميل الآمن من Cisco ووظيفة فك تشفير SSL/TLS الخاصة ب Zscaler. عندما يحاول Zscaler فك تشفير حركة مرور TLS الخاصة بشبكة VPN أو فحصها، يتداخل مع عملية إنشاء نفق آمن. يظهر هذا التداخل كإعادة تعيين اتصال مباشرة بعد إنشاء جلسة عمل TLS، مما يمنع نفق VPN من إكمال مرحلة التفاوض الخاصة به. يعد توقيت إعادة ضبط الحزمة (الذي يحدث مباشرة بعد إنشاء TLS الناجح ولكن قبل اكتمال النفق) سمة لتداخل فحص SSL/TLS من أجهزة أو برامج الأمان.

المحتوى ذي الصلة

- الدعم الفني والتنزيلات من Cisco