خطأ في التحقق من LetsEncrypt

لقد قمت بإعداد بيئة Docker المستضافة ذاتيًا وتمكين HTTPS باستخدام Let’s Encrypt باتباع البرنامج التعليمي.

يفشل دائمًا في الخطوة أدناه. الإعداد بدون HTTPS يعمل بشكل جيد والمنتدى متاح للعامة عبر HTTP.

root@discoursetest3-app:/shared/letsencrypt# cat acme.sh.log

[Mon 11 Apr 2022 02:56:35 PM UTC] discourse-test3.docentric.com:Verify error:Fetching http://discourse-test3.docentric.com/.well-known/acme-challenge/iEFjgyseuVL1IzIrTjmfhwv0HqV7EgUmQUVhy1nmnCE: Timeout after connect (your server may be slow or overloaded)

يبدو أن تحدي ACME غير متاح.

هل قرأت الجملة الأولى في هذا الدليل التي تقول إنه إذا كنت تقوم بتثبيت قياسي، فلن تحتاج إلى اتباع هذا الدليل؟

هل هذا تثبيت قياسي حديث؟ هل قمت بتشغيل discourse-setup؟

يبدو أنه قد تم حظر المنفذ 80 (وربما أيضًا المنفذ 443) للاتصالات الواردة.

إعجاب واحد (1)

من الغريب أن الأول يعمل والثاني لا يعمل:

○ → curl http://discourse-test3.docentric.com/srv/status
ok

○ → timeout -v 5s curl http://discourse-test3.docentric.com/.well-known/acme-challenge/iEFjgyseuVL1IzIrTjmfhwv0HqV7EgUmQUVhy1nmnCE
timeout: sending signal TERM to command ‘curl’

لست متأكدًا مما قد يسبب ذلك إذا كان إعدادًا قياسيًا.

إعجاب واحد (1)

إنها عبارة عن تثبيت تجريبي قديم بدون HTTPS، والآن أود تمكين HTTPS.
لقد حاولت تعديل app.yml يدويًا وكذلك تشغيل discourse-setup. في كلتا الحالتين نفس الخطأ.
لقد حاولت أيضًا حذف Discourse (الحاويات والملفات) والتثبيت من البداية، ولكن النتيجة هي نفسها.
أوافق على أنه يبدو أن المنفذ 80 غير متاح، ولكن إذا قمت بالتعليق على السطرين التاليين في app.yml، فإن المنتدى يعمل على HTTP دون مشكلة.

  • “templates/web.ssl.template.yml”
  • “templates/web.letsencrypt.ssl.template.yml”

أين توجد الملفات الثابتة على القرص مثل http://discourse-test3.docentric.com/.well-known/acme-challenge/iEFjgyseuVL1IzIrTjmfhwv0HqV7EgUmQUVhy1nmnCE؟

لقد اتضح أن بروتوكول ACME فقط هو الذي تم حظره على جدار حماية الشركة. الآن يعمل :slight_smile:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.