تحديث لم يعد صالحًا لشهادة SSL

مرحبًا بالجميع،

لدي صفحة ويب Discourse وقد تم إصدار شهادة SSL لها.
عنوان البريد الإلكتروني موجود في ملف app.yaml.

ومع ذلك، لم تعد الشهادة صالحة وأحتاج إلى تحديثها.
الأمر ./launcher rebuild app لا يساعد.

كيف يمكنني تحديث الشهادة في هذه الحالة؟

هل لديك Cloudflare أمام خادمك؟

لا يوجد Cloudflare في المقدمة.

هل هذه شهادة من Let’s Encrypt أم نوع آخر؟ إذا كانت شهادة أخرى، فيجب عليك وضع الشهادة الجديدة في نفس المكان الذي كانت فيه الشهادة القديمة.

ما هو عنوان موقعك؟

إنه شهادة Let’s Encrypt. لقد أضفت للتو عنوان البريد الإلكتروني الخاص بـ Let’s Encrypt عند إعداد الموقع بالكامل. لا يمكنني مشاركة رابط الموقع، لكن يمكنني تزويدك بجميع المعلومات المطلوبة. النسخة الحالية من Discourse محدثة.

يجب أن يقوم Let’s Encrypt بتجديد الشهادة تلقائيًا بشرط عدم وجود وسيط يعترض الاتصال.

قام كروم بقفل القفل، مما يشير إلى أن الشهادة صحيحة، لكن الفترة التي صدرت فيها الشهادة كانت في الماضي، وعند فتح الشهادة تظهر رسالة بأنها منتهية الصلاحية.

لا يوجد وكيل.

ألا توجد طريقة يدوية للتحديث؟

تعديل: كروم + معلومات ويندوز القياسية حول الشهادة تشير إلى أن الشهادة منتهية الصلاحية، لكن فايرفوكس يقول إنها صحيحة وأن التواريخ سارية.

لا أعرف أي عميل تستخدم، ولكن إذا استخدمت الأمر certbot certificates فسيُظهر جميع الشهادات - المنتهية الصلاحية والصالحة. إذا كنت لا تزال تستخدم الشهادة المنتهية الصلاحية ولديك شهادة صالحة، فقم بتثبيت الشهادة الصالحة.

لكن في رأيي، يبدو أن هذه مشكلة يجب حلها في مجتمع letsencrypt.org.

هناك نقطة واحدة يجب الانتباه إليها: صُمم LetsEncrypt لأتمتة عمليات التجديد الخاصة بك. إذا شغّلت الأمر باستخدام certbot manual``، فعليك تجديد الشهادة يدويًا كل 60-90 يومًا. أما إذا استخدمت certonly``، فبمجرد إنشاء الشهادة، ستحتاج إلى تثبيتها بنفسك.

لم أكن أختار تطبيق شهادة. هذه هي تثبيت Discourse الافتراضي، لذا لا أعرف حتى ما إذا كانت هذه أداة certbot أم acme.sh.

عزيزي @pbies

وفقًا للكود:

 exec:
       cmd:
         - cd /root && git clone --branch 2.8.2 --depth 1 https://github.com/Neilpang/acme.sh.git && cd /root/acme.sh
         - touch /var/spool/cron/crontabs/root
         - install -d -m 0755 -g root -o root $LETSENCRYPT_DIR
         - cd /root/acme.sh && LE_WORKING_DIR="${LETSENCRYPT_DIR}" ./acme.sh --install --log "${LETSENCRYPT_DIR}/acme.sh.log"
         - cd /root/acme.sh && LE_WORKING_DIR="${LETSENCRYPT_DIR}" ./acme.sh --upgrade --auto-upgrade

أتمنى أن يكون هذا مفيدًا… :slight_smile:

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

مرحبًا @pbies

قد تستمتع أيضًا بالنظر في cron لمعرفة الأمر الذي يتم تشغيله في ملف crontab الخاص بالحاوية:

على سبيل المثال، في حاوية التطبيق الرئيسية:

crontab -l

أطيب التحيات!

@neounix
قبل تحديث الشهادة، أود معرفة سبب اعتبار الشهادة غير صالحة (منتهية الصلاحية) في متصفح كروم (معلومات ويندوز الدقيقة حول الشهادة)، بينما تكون الشهادة صالحة في متصفح فايرفوكس ولها تاريخ انتهاء في المستقبل.

ربما لا توجد حاجة لتحديث الشهادة يدويًا؟

إذا كنت تتحقق فقط من تاريخ الشهادة في متصفحك، فقد يظهر تاريخ قديم بسبب عامل الخدمة الخاص بالمنتدى. لا أعتقد أن هذا يمثل مشكلة (على الرغم من أنني لا أعرف بالضبط كيف تعمل كل هذه الآلية.)

عزيزي @pbies

يمكنك إعداد إعداداتك بالطريقة التي تريدها لتجربتها.

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

لا حاجة لإجراء “تحليل الشهادات” لأنه يمكنك ببساطة طلب شهادة جديدة مجانًا دون أي مشكلة أو عائق.

لقد جربت ولا أستطيع الجزم إذا نجح الأمر. لقد قمت فقط بإعادة تحميل الصفحة بالقوة (Ctrl+F5) في متصفح Chrome، وأصبح الآن الشهادة صالحة. يبدو أن المشكلة كانت في ذاكرة التخزين المؤقت…

شكرًا لكم على مساعدتكم يا رفاق!