تعطيل starttls أو التحقق من الشهادة لم يعد يعمل

هناك الكثير من المشاركات حول هذا في #support، لذا يبدو أننا وجدنا السبب، واعتقدت أنه قد يكون من الجيد إنشاء موضوع Bug حول هذا يحتوي فقط على المشكلة الفعلية الموصوفة هنا Email Hostname Certificate Mismatch Causing sidekiq Queue Overload, Severe Site Instability - #47 by RGJ

باختصار:
منذ الإصدار 2.9.0 beta 4، الإعدادات
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE و DISCOURSE_SMTP_ENABLE_START_TLS لم تعد تعمل بشكل صحيح.

يبدو أن هذا يتعلق بالانتقال إلى Rails 7، والذي قام بتحديث net-smtp من 0.1.0 إلى 0.3.1، مما غيّر القيم الافتراضية لهذين المعاملين للاتصال.

الطريقة التي يستدعي بها gem smtp gem net-smtp لا تقوم بتعطيل enable_starttls_auto و openssl_verify_mode، بل تقوم بتمكينهما فقط عند تمكينهما.

تقرير ذو صلة بـ gem smtp: SMTP: allow disabling starttls_auto since it's now true by default in Ruby 3 by jeremy · Pull Request #1435 · mikel/mail · GitHub

من الناحية الفنية، هذا الخطأ خارج كود Discourse نظرًا لأن هذا يحدث في gem smtp، ولكن نظرًا لأنه تم نسخه حاليًا لـ Discourse، أعتقد أن هذا يستحق موضوع Bug. إذا لم يكن من الممكن إصلاحه بسهولة، فيمكن إزالة هذه المعاملات من المستندات وربما عرض تحذير إهمال لإزالة كل هذا الارتباك.

10 إعجابات

ربط تقارير الأخطاء:

إعجابَين (2)

يجب أن تعيد هذه المراجعة السلوكية الصحيحة (لم يتم دمجها بعد):

5 إعجابات

تم دمج طلب السحب في وقت سابق اليوم، لذا باستخدام الفرع tests-passed يجب أن تكون قادرًا على تعطيل TLS كما كان من قبل :slight_smile:

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

تم تقسيم 11 مشاركة إلى موضوع جديد: البريد الإلكتروني لا يعمل (المنفذ 465)

تم إغلاق هذا الموضوع تلقائيًا بعد 7 ساعات. لم يعد يُسمح بالردود الجديدة.