كيفية فرض تجديد شهادة letsencrypt

لقد تلقيت للتو بريدًا إلكترونيًا من LetsEncrypt يفيد بضرورة إلزام تجديد شهاداتنا خلال الـ 12 ساعة القادمة بسبب خلل من جانبهم. كيف يمكننا القيام بذلك باستخدام Discourse؟

هذا يجب أن يعمل:

ssh root@your.discourse.server
cd /var/discourse/shared/standalone
cp -r ssl ssl_backup
rm ssl/*
cd /var/discourse
./launcher rebuild app

نجح ذلك، شكرًا لك!

لم ينجح الأمر بالنسبة لي. الشهادات هي نفسها الموجودة في مجلد ssl_backup بعد إعادة البناء.

حاولت مرتين؛ وفي المرة الثانية حذفت الملفات يدويًا عبر WinSCP.

كيف يمكننا إجبار التجديد؟ ربما نحتاج إلى --force في مكان ما.

[Wed 04 Mar 2020 06:33:11 PM UTC] تم التخطي، وقت التجديد التالي هو: e[1;32mMon 06 Apr 2020 06:24:28 PM UTCe[0m
[Wed 04 Mar 2020 06:33:11 PM UTC] أضف 'e[1;31m--forcee[0m' لإجبار التجديد.

وفقًا لصفحة letsencrypt، جرب اختبار نطاقك هنا:

https://checkhost.unboundtest.com/

قد تكون الآن في أمان.

وإلا، فستحتاج إلى إجباره. لقد أجبرته فعليًا من واجهة سطر الأوامر (CLI) في مكان آخر بنفسي، حيث أستخدم نفس النطاق على موقع غير من نوع Discourse أيضًا.

أنت محق، لم أتحقق من جميع نطاقاتي. افترضت أن جميعها معنية، لكن النطاق الذي يحتوي على Discourse يمكن تجاهله.

ومع ذلك، لقد اكتشفت أيضًا كيفية تجديد الشهادة قسرًا:

  • cd /var/discourse
  • ./launcher enter app
  • "/shared/letsencrypt"/acme.sh --cron --home "/shared/letsencrypt" --force
  • exit

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

تحتاج أيضًا إلى تعطيل Cloudflare إذا كنت تستخدمه. أعرف أن مطوري Discourse ينصحون بعدم استخدامه، لكنه يعمل معي.