نعم، يعمل تحدي HTTP-01 بالاقتران مع Cloudflare في وضع “السحابة البرتقالية”. لكنه لا يعمل عبر HTTPS، يعمل تحدي HTTP-01 فقط عبر المنفذ 80، و:
يقوم العديد من الأشخاص الذين يستخدمون Cloudflare بتعيين Cloudflare لإعادة توجيه HTTP إلى HTTPS تلقائيًا، وهذا يجعل المنفذ 80 على الخادم الأصلي غير متاح، وهذا يمنع تحديات HTTP-01 من العمل.
لذلك، إذا لم تقم بتمكين عمليات إعادة التوجيه هذه، فستعمل.
لذلك، بالمعنى الدقيق للكلمة، هذا غير صحيح.
سيفشل Let’s Encrypt إذا تم تعيين Cloudflare لإعادة توجيه حركة المرور على المنفذ 80 قبل وصولها إلى الخادم الأصلي.
أتفق، ولكن نظرًا لأن أمن تكنولوجيا المعلومات أصبح أكثر أهمية من أي وقت مضى ويبدأ الناس في العمل بمنتجات الثقة المعدومة (Zero Trust) بشكل أكبر، والتي يعد نفق CF (CF Tunnel) جزءًا منها، فسنشهد بالتأكيد زيادة في استخدام هذا النوع من التكنولوجيا، ولهذا السبب أثرت الموضوع.
أعتقد أنك أسأت فهم كيفية عمل تحدي HTTP-01 الخاص بـ LE.
إنه يبحث عن الرمز المميز الذي يضعه عميل LE (مثل certbot أو أي متغير آخر) في معظم الأحيان في المجلد الفرعي .well-known لخادم الويب.
ولكنه ليس مبرمجًا بشكل ثابت لبدء الطلب على المنفذ 80، ويتجاهل أي عمليات إعادة توجيه لرموز HTTP ويفشل تمامًا إذا لم يتمكن من العثور على الرمز المميز.
تحدي HTTP-01 قادر على متابعة عمليات إعادة توجيه HTTP (مثل 301 و 302) وبالتالي قادر على قراءة المجلد .well-known عبر 443 و HTTPS.
والسبب في نجاحه مع شهادة SSL العالمية من Cloudflare مع إعادة التوجيه (و Cloudflare Tunnel) هو أن Cloudflare يستجيب بدلاً من خادم الويب على المنفذ 80، ويعيد توجيه الطلب إلى 443، حيث يمكن لـ LE قراءة الرمز المميز ويمكن لـ CA إصدار الشهادة.
مخطط عالي المستوى للتدفق:
يبدأ Certbot تحدي HTTP-01
→ يرسل طلب الشهادة إلى CA ويضع الرمز المميز في .well-known
→ تبدأ CA في الحصول على الرمز المميز على FQDN المنفذ 80
→ تقوم CF بإعادة التوجيه إلى المنفذ 443 وتؤمن الطلب بشهادة SSL العالمية الخاصة بها
→ يتم إعادة توجيه الطلب إلى خادم الويب نفسه (عبر CF Tunnel أو مباشرة)
→ تكون CA قادرة على الحصول على الرمز المميز في .well-known لأن المنفذ 443 قادر على تقديم الرمز المميز بنفس الطريقة التي سيفعلها HTTP والمنفذ 80
→ ترسل CA بيانات الشهادة الخام، وينشئ Certbot الملفات
أعتقد أنني أفهمها جيدًا. أنت على حق، يمكن إعادة توجيهها إلى HTTPS، لكن الأمر يعتمد على إعدادات Cloudflare وتكوين خادم الويب ما إذا كان ذلك سيعمل أم لا، نظرًا لأنه لن يكون هناك شهادة صالحة في البداية على خادم المصدر.
نعم، يمكن إعادة توجيهها إلى منفذ مختلف، ولكن يجب أن تبدأ تحديات HTTP-01 دائمًا على المنفذ 80.
أتفق معك، لقد أشرت للتو إلى عدم دقتك بأن ذلك “لن يعمل أبدًا” بشكل مباشر.
إن اقتباس جملتي الذي قمت بتنفيذه هنا شرير للغاية لأنه يوحي بظرف مناقشة خاطئ ويشير إلى معنى آخر. كانت جملتي الكاملة
وكان الجزء المهم من جملتي هو الجمع بين “مبرمج بشكل ثابت لبدء الطلب على المنفذ 80” و “تجاهل أي إعادة توجيه HTTP” و “الفشل بشكل مباشر”، حيث قلت
وهذا يشير إلى أن سبب فشل تحدي HTTP-01 هو إعادة التوجيه وحدها، وهو أمر غير صحيح.
أيضًا، بالمعنى الدقيق للكلمة، لا تجعل إعادة التوجيه المنفذ 80 “غير متاح”.
إنه يجعل المنفذ 80 للخادم الأصلي غير متاح لجميع حركة المرور الموجهة إلى اسم المضيف.
لا أحب النبرة الحالية للمحادثة في هذا الموضوع، لذلك سأتوقف عن متابعته.
يمكن تلخيص رأيي في Cloudflare بالاشتراك مع Discourse على أنه “يبدو أن العديد من الأشخاص غير قادرين على تكوينه بشكل صحيح، لذلك بشكل عام أوصي بعدم تمكينه. إذا كنت ترغب في استخدامه للحماية من هجمات DDoS، فأنا أوصي بتمكينه بإعدادات محددة جدًا فقط.”
قد يكون هذا سؤالًا غبيًا آخر، ولكن نظرًا لأنني أخدم جمهورًا فنلنديًا فقط، فلا أرى سببًا لاستخدام Cloudflare، لذلك أعرفه فقط من خلال السمعة.
ولكن إذا كانت فائدته الوحيدة هي إيقاف هجمات DDoS، وهجمات DDoS تعني في الغالب الكثير من المكالمات التي تجريها
زواحف تحسين محركات البحث عديمة الفائدة
روبوتات أخرى صنعها مبتدئون في البرمجة
فلماذا لا نستخدم Nginx أمام Discourse ونوقف وكلاء المستخدم المعروفين هناك؟ عند دمجه مع Fail2ban، سيؤدي ذلك إلى تقليل الحمل بنسبة 90٪ تقريبًا (إحصائية ستيتسون بالتأكيد، ولكنها كثيرة على أي حال).
هذه المناقشة قيمة للغاية. بالنسبة لمسؤول موقع صيني، هل يمكن أن يعني Flare ما إذا كان بإمكان المستخدمين الصينيين تبادل البيانات بشكل طبيعي مع العالم الخارجي. لقد أجريت اختبارًا قبل فترة. إذا لم تستخدم Orange Cloud وتصل إلى خوادم في بلدان أخرى من الصين، فسيكون اهتزاز الشبكة خطيرًا للغاية. الشيء الشرير هو أن تشغيل منتدى في الصين يخضع لرقابة صارمة. حتى لو كنت أقوم بإنشاء منتدى غير سياسي، فقد عانيت. يجب أن نفترض أن خادم الموقع يقع خارج الصين. لذا، إذا قمت بإنشاء منتدى باستخدام Discourse، فسيتعين عليّ النظر فيما إذا كان بإمكانه استخدام Cloud Flare.