هل يمكن لمشغّل VPN أن يرى المواقع التي تزورها؟
خادم OpenVPN الافتراضي يسجّل الجلسات لا عناوين URL. قارن سجلات الاتصال والتقاط النفق وفحص تسرّب DNS قبل أن تجزم بما يراه المشغّل.
اسأل عمّا يمكن أن يراه الـ VPN، فتأتي الإجابة معتمدة على موضعك في المسار. في طبقة الجلسة يملك المشغّل أحداث المصادقة وعدد البايتات. وفي طبقة الحزم يملك عناوين الوجهة والتوقيت. وفي طبقة DNS قد يملك الأسماء نفسها. كل طبقة تجيب عن سؤال مختلف، ولا يوجد مفتاح واحد ينقلك بينها.
حدّد الطبقة قبل أن تصدر حكماً
الاتصال نفسه ينتج سجلات مختلفة في كل نقطة، ولا يكون الحديث عن الخصوصية ذا معنى إلا حين يسمّي النقطة. اقرأ الجدول عموداً عموداً: ما الموجود في تلك الطبقة، وما الذي يستطيع المشغّل رؤيته هناك، وما الذي تعجز تلك السجلات نفسها عن إخباره به.
| Layer | Visible there | Not visible there |
|---|---|---|
| Session and authentication | Account, client address, start and stop times, assigned address, byte counts | URLs, page content, search terms |
| Forwarded packets | Destination address and port, sizes, timing, often the TLS server name | HTTP path, headers, response body |
| DNS resolver | Queried names and the client that asked | Page content and later requests |
| TLS-terminating proxy | Full request line, headers and body | Nothing, by design |
قراءة طبقة واحدة كأنها الصورة الكاملة هي بداية المبالغات والطمأنة الكاذبة معاً. فمزوّد يقول إنه لا يسجّل التصفح قد يكون دقيقاً بشأن تسجيل URL بينما يحتفظ بسجلات الجلسة، والتقاط الحزم الذي لا يُظهر إلا العناوين لا يتحول إلى سجل تصفح دون بحث عكسي وتخمين.
عند تقييم سياسة ما، ابحث عن الجملة التي تصف كل طبقة. وإذا لم تفصل السياسة بينها، فاسأل عن السجلات الموجودة فعلاً بدلاً من قبول عبارة عامة عن التشفير.
جرد الجلسات: ماذا يحتفظ به خادم OpenVPN القياسي
من دون أي إعداد إضافي لا يلتقط خادم OpenVPN حركة المرور. الناتج المعتاد هو جرد للجلسات: الحساب الذي صادق، وعنوان المصدر الذي جاء منه، وطوابع زمنية للبداية والنهاية، وعنوان النفق الممنوح، وإجماليات البايتات في كل اتجاه. هذا جرد بالجلسات لا قائمة بالوجهات.
قد تضيف خيارات التسجيل تفاصيل. فمستوى إسهاب أعلى يكتب المزيد عن المصافحة، وملف الحالة قد يسرد العملاء المتصلين، لكن أياً منهما لا يحوّل الخادم إلى وكيل شفاف. إنتاج عناوين URL يتطلب إنهاء TLS أو تشغيل وكيل صريح، وكلاهما يغيّر ترتيب الثقة بدل أن يتيح ميزة خفية.
لهذا يكون النسخة الدقيقة من ادعاء لا سجلات تصفح أضيق مما يبدو. فالخادم لا يعرف الصفحة، لكنه يعرف أن جلسة وُجدت وكمية البيانات التي عبرتها تقريباً. أما هل يُحتفظ بسجل تلك الجلسة، ولأي مدة، فذاك سؤال سياسة منفصل.
الحزم الداخلية والخارجية دليل مختلف
التقاط الحزم هو الطريقة لرؤية ما يعبر النفق فعلاً. على الخادم سمِّ واجهة النفق واكتب إلى ملف يمكن تحليله دون اتصال:
sudo tcpdump -ni tun0 -w /tmp/tun.pcap
sudo tcpdump -r /tmp/tun.pcap -nn | headيحتوي ذلك الملف على حركة داخلية مفكوكة التشفير: عنوان النفق للعميل كمصدر، وعنوان الوجهة والمنفذ، وأحجام الحزم والتوقيت. ولا يحتوي مسار HTTP أو نص الاستجابة إلا إذا أُنهيت TLS في مكان ما، وهو بيانات حساسة يكون الاحتفاظ بها قرار سياسة لا راحة تنقيح.
التقاط على الواجهة الفيزيائية يُظهر شيئاً آخر. هناك ترى حزماً خارجية موجّهة إلى نقطة نهاية VPN، بداخلها الحمولة المشفّرة. وظهور عناوين غير ذات صلة في ذلك الملف أمر طبيعي بمجرد وجود محوّل افتراضي، لأن جهاز النفق يحمل التدفقات الداخلية بينما يحمل النقل المشفّر التدفقات الخارجية.
اسأل عمّا يُفترض أن يجيب عنه الالتقاط. استخدام تطبيق للنفق مرئي على المحوّل الافتراضي؛ ووصول النفق إلى نقطة النهاية مرئي على الواجهة الفيزيائية. واستخدام أي من الملفين كأنه الصورة الكاملة يُنتج استنتاجات لا تدعمها البيانات.
DNS هو المكان الذي تصبح فيه الأسماء مرئية
يبقى DNS الاستثناء العملي. فالمحلّل يرى الأسماء المطلوب حلّها، لذا يعرف من يشغّله أي المواقع يبحث عنها العميل حتى لو كانت الاتصالات اللاحقة مشفّرة. التقاط النفق يُظهر العناوين؛ والمحلّل يُظهر الأسماء.
تحقق من العنوان الذي استخدمه المحلّل للوصول إلى خدمة خارجية. الجواب هو عنوان خروج المحلّل، ومقارنته بمخرج VPN تخبرك هل سافر الاستعلام عبر النفق:
dig +short myip.opendns.com @resolver1.opendns.com
dig example.com
sudo tcpdump -ni any udp port 53إذا طابق ذلك العنوان الاتصال المحلي لا مخرج النفق، فقد تجاوز البحث الـ VPN وكان الاسم مرئياً على المسار المحلي. أعد الفحص بعد تحديث العميل، لأن نسخة جديدة قد تغيّر المحلّل الذي يثبّته الملف الشخصي.
نقل DNS المشفّر يغيّر موضع الرؤية لا يزيلها. فالشبكة لم تعد ترى الاستعلام، لكن المحلّل ما زال يراه، ومسألة الثقة تنتقل من طرف إلى آخر. واسم خادم TLS في مصافحة الاتصال إشارة جزئية أخرى: فهو غالباً يبقى حتى حين تكون الحمولة مبهمة، لذا ليست عناوين الوجهة البيانات الوصفية الوحيدة التي يلاحظها خادم تمرير.
ثلاثة أنواع من السجلات ومن يستطيع قراءتها
محاسبة الجلسات، والسجلات لكل اسم، وأدلة التسرّب ثلاثة منتجات مختلفة بثلاثة التزامات مختلفة. سجلات الجلسة رخيصة وقليلة الحساسية، وهي تجيب من اتصل ومتى. أما السجلات لكل اسم فتتطلب محلّلاً يسجّل أو وكيلاً صريحاً، وهي تنشئ التزاماً بالإفصاح تجاه الأشخاص المعنيين. وأدلة التسرّب اختبار من جهة العميل يقارن ما يكشفه المحلّل بمخرج النفق.
سجّل أيّ هذه الثلاثة تشغّله، ومن يستطيع قراءته، وكم يبقى. العبارات التي تقول إن خدمة ما لا تحتفظ بسجلات تصف طبقة واحدة، وتبقى صحيحة في نطاقها فقط. وقد يكون المزوّد نفسه دقيقاً بشأن الجلسات ومخطئاً بشأن DNS.
اجعل الاختبار قابلاً للتكرار: الاستعلام نفسه على المحلّل، وواجهة الالتقاط نفسها، والمقارنة نفسها. ادعاء الخصوصية الذي لا يمكن اختباره في طبقة مسمّاة شعار لا حقيقة تشغيلية.