تعذر الوصول إلى Discourse - مشكلة SSL

مرحباً،

المنتدى هنا: https://forum.survivingeconomicabuse.org/

لقد قيل لي إن هذا المنتدى أصبح غير متاح بسبب انتهاء صلاحية شهادة SSL.

لقد قمت بإعداد الموقع في الصيف الماضي وتم تأمين المنتدى، ولكن من الواضح أنه لم يتمكن من تجديد الشهادة (أعتقد). لقد بحثت في مواضيع مختلفة حول كيفية فرض الشهادة وما إلى ذلك، ولكن لا شيء يبدو أنه يعمل. كان هناك أيضًا اقتراح بحذف الشهادات الموجودة وإعادة بناء التطبيق، وهذا لم ينجح أيضًا.

أتساءل عما إذا كان بإمكان أي شخص تقديم بعض الإرشادات حول هذا الأمر، فأنا لست سيئًا في استخدام سطر الأوامر ولكنني لست خبيرًا بأي حال من الأحوال.

شكراً!

تحتاج إلى إعادة البناء.

  cd /var/discourse
 ./launcher rebuild app
3 إعجابات

لقد حاولت إعادة البناء عدة مرات دون أي نجاح، ولكن سأحاول مرة أخرى فقط في حالة

لقد حاولت إعادة البناء والموقع هو نفسه للأسف

قم بتشغيل هذا أولاً

apt-get update
apt-get upgrade

غريب، أنا أحصل على صفحة Apache الافتراضية تحت http:// الآن؟ هذا غريب، أليس كذلك؟

لا، ليس كذلك. انتهت صلاحية شهادة SSL الخاصة بك، لذا يمكنك التصفح عبر http.

هذا يشير إلى أن لديك Apache يعمل على الخادم الخاص بك وأنه يجب عليك إزالته أو تعطيله. وإذا كنت قد أجريت الكثير من عمليات إعادة البناء، فمن المحتمل أن تكون قد وصلت إلى الحد الأقصى لمعدل الطلبات ولا يمكنك الحصول على شهادة جديدة لمدة أسبوع.

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

يرجى تصحيحي إذا كنت مخطئًا: يمكنك أيضًا التحقق من /var/discourse/shared/standalone/letsencrypt/acme.sh.log للبحث عن الأخطاء.

لقد قمت بإزالة Apache ولكن لا يزال بإمكاني الوصول إلى المنتدى

هل هناك أي شيء آخر يمكنني القيام به في هذه المرحلة لفهم المشكلة بالكامل؟

أواجه مشكلة رفض الوصول عند محاولة تنفيذ هذا…

على حد علمي، بشكل افتراضي، لا يعمل Discourse بدون https.

ومع ذلك، ربما يمكنك محاولة التعليق على هذه الأسطر (بإضافة # في /var/discourse/container/app.yml وإعادة بناء التطبيق؟

#  - "templates/web.ssl.template.yml"
#  - "templates/web.letsencrypt.ssl.template.yml"

هل قمت بتسجيل الدخول كمستخدم root على الخادم الخاص بك؟ كيف تتصل به؟

لقد قمت بالتعليق عليها سابقًا، لذا أضفتها مرة أخرى وأعدت البناء ولم يحدث أي تغيير.

أنا مسجل الدخول عبر المستخدم الجذر (root) على DigitalOcean.

إذا لم يكن لديك أي تطبيق آخر على الخادم الخاص بك، يمكنك ببساطة تهيئة/إعادة تعيين الخادم ليكون خادمًا جديدًا وإعادة تثبيت Discourse (قم بتنزيل النسخ الاحتياطية الخاصة بك أولاً!) ثم استعادة النسخة الاحتياطية لـ Discourse.\n\nولكن كما يقول جاي،\n[quote="pfaffman, post:8, topic:217080"]\nإذا قمت بالكثير من عمليات إعادة البناء، فمن المحتمل أن تكون قد وصلت إلى الحد الأقصى لمعدل الطلبات ولا يمكنك الحصول على شهادة جديدة لمدة أسبوع.\n[/quote]\n\n—\n\nومع ذلك، أتساءل. في هذه الحالة، هل سيؤدي التعليق على أسطر SSL في app.yml إلى جعل المنتدى يعمل عبر HTTP، وبعد أسبوع يمكننا إلغاء التعليق على السطر، وإجراء إعادة بناء، والحصول على شهادة عاملة؟

ماذا يحدث عندما تحاول؟

هل حاولت

./launcher start app

ولكنك ربما تحتاج إلى

  ./launcher rebuild app

ولكن، كما ذكرت سابقًا، من المحتمل أنك قمت بإعادة البناء مرات كافية لدرجة أنك وصلت إلى حدود معدل Let’s Encrypt. يمكنك إما الانتظار لمدة أسبوع أو تجربة إعداد Let’s Encrypt مع نطاقات متعددة وإضافة نطاق فرعي آخر (الذي تقوم أولاً بإنشاء إدخال DNS يشير إلى الخادم الخاص بك) ومحاولة إعادة البناء مرة أخرى.
يمكنك النظر إلى

  tail  /var/discourse/shared/standalone/logs/var-log/nginx/error.log

لرؤية أخطاء nginx.

start app = “لا يوجد شيء للقيام به، لقد بدأ حاويتك بالفعل”

لقد قمت بإعادة البناء مؤخرًا دون إجراء أي تغييرات إضافية.

لقد قمت بتنفيذ: ls -l /var/discourse/shared/standalone/ssl

ويبدو أن لدي شهادات جديدة؟

tail /var/discourse/shared/standalone/logs/var-log/nginx/error.log

يعطيني خطأ “لا يوجد مثل هذا الملف أو الدليل”؟

جرب باستخدام sudo:
sudo nano /var/discourse/shared/standalone/letsencrypt/acme.sh.log

@stuartleech أرى أن مشكلتك لم تُحل بعد. هل هناك شيء يمكنني المساعدة به؟

آسف، كان من المفترض أن يكون هذا:

root@forum:~# tail  /var/discourse/shared/standalone/log/var-log/nginx/error.log
2022/02/04 17:04:01 [emerg] 19332#19332: cannot load certificate "/shared/ssl/forum.survivingeconomicabuse.org.cer": PEM_read_bio_X509_AUX() failed (SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE)

أنا أعمل على هذا ولا تزال لدي مشاكل في SSL. لا يمكنني معرفة ما إذا كان عنوان IP قد تم تقييده أو أن هناك مشكلة في الشبكة أو جدار الحماية لا أراها.

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

للعلم، هذا ساعدني في إصلاح مشكلة SSL الخاصة بي. شكراً لك!

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