Les tâches d'envoi d'e-mails échouent après la dernière mise à jour, échec de la vérification du certificat (impossible d'obtenir le certificat de l'émetteur local)

Désolé pour une autre question redondante, car je vois qu’il y a beaucoup de demandes de support similaires à celle-ci, par exemple : Email Notifications Failing after Update , mais notre message d’erreur est légèrement différent :

« certificate verify failed (unable to get local issuer certificate) »

Ceci est après la mise à jour du 11 mai vers la version 2.9.0
from_version: a76256756fc8442eab960cc1c7d37a737efb5a69,
repository: /var/www/discourse, /var/www/discourse/plugins/styleguide

ce qui, comme je le vois sur GitHub, affecte Sidekiq - est-il soudainement plus pointilleux ? Je traite également ce problème avec notre relais de messagerie, mais si je peux leur donner des informations plus spécifiques sur la façon de résoudre ce problème, ou s’il vient de mon forum (https://forum.solarfarmer.dnv.com/) , cela nous aiderait à résoudre le problème plus rapidement.

Merci pour toute aide.

1 « J'aime »

C’est le même problème que Email Hostname Certificate Mismatch Causing sidekiq Queue Overload, Severe Site Instability

3 « J'aime »

@RGJ J’ai essayé d’exécuter

openssl s_client -connect  smtp.mydomain.info:25 -starttls smtp -showcerts 2>&1|grep "depth=0"

mais il n’affiche aucun autre domaine, il dit juste la même erreur que sidekiq : « unable to get local issuer certificate » et un tas d’autres choses. J’ai essayé de changer les paramètres de messagerie de app.yml pour revenir à notre relais de messagerie, et d’exécuter ./launcher rebuild app à chaque fois, mais jusqu’à présent, rien ne fonctionne.

1 « J'aime »

Il y a trois causes possibles à cela :

  • certificat expiré
  • le nom d’hôte du certificat est différent du nom d’hôte auquel vous vous connectez
  • aucun certificat du tout

Il semble que vous rencontriez le dernier cas. La seule résolution est de vous assurer que vous disposez d’un serveur SMTP correctement configuré, prenant en charge STARTTLS et doté d’un certificat valide.

3 « J'aime »

Merci @RGJ - mais pourquoi ce problème n’a-t-il commencé qu’après la mise à niveau vers la version 2.9.0 ? Est-ce parce que STARTTLS est plus strict dans l’application de cette exigence ? Rien n’a changé pour notre relais de messagerie ni dans la configuration de messagerie de app.yml. L’adresse IP du site est sur liste blanche avec le relais de messagerie, qui est géré par le service informatique. Je n’ai aucun contrôle sur cela. Le CNAME du site est également contrôlé par notre service informatique. Ils ont des domaines différents, le CNAME est « dnv.com » et le relais de messagerie est « dnvgl.com », est-ce que cela fait partie du problème ? Je poursuis cela en parallèle avec notre service informatique, mais j’essaie de leur donner autant d’informations que possible. Je m’excuse de mon ignorance, beaucoup de choses me dépassent, je pourrais donc utiliser des termes incorrects. Désolé :frowning:

1 « J'aime »

Parce qu’il y a eu un changement où Discourse a été mis à niveau vers Rails 7 entre la 2.9.0.beta3 et la beta4, ce qui a déclenché cela.

Voir Email Hostname Certificate Mismatch Causing sidekiq Queue Overload, Severe Site Instability - #47 by RGJ

3 « J'aime »

Notre service informatique dit : « Il n’y a aucun problème avec les certificats [pour le relais de messagerie], tous sont actifs et correctement configurés pour être utilisés avec le service smtp. Deuxièmement, je n’ai entendu parler d’aucun problème de la part d’autres services/clients qui utilisent ce relais de messagerie. » :cry:

1 « J'aime »

La DSI a créé un nouveau compte de messagerie en utilisant office365 sur microsoft, mais j’ai toujours des problèmes. Maintenant, j’obtiens soit ReadTimeout, soit SMTPAuthenticationError: Unrecognized authentication type

ma configuration actuelle :

DISCOURSE_SMTP_ADDRESS: smtp.office365.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: myusername
DISCOURSE_SMTP_PASSWORD: "mypassword"  # les guillemets sont-ils nécessaires ?
DISCOURSE_SMTP_ENABLE_START_TLS: true  # est-ce correct ?
DISCOURSE_SMTP_DOMAIN: outlook.com  
DISCOURSE_NOTIFICATION_EMAIL: myusername@mycompany.onmicrosoft.com

où les éléments my* sont spécifiques au nouveau compte de messagerie.

1 « J'aime »

@RGJ Je tiens à remercier tout le monde pour leur aide. J’ai enfin, enfin résolu ce problème. Le réglage pour office365 est d’utiliser DISCOURSE_SMTP_AUTHENTICATION: login.

Le serveur smtp et la configuration du port office365 sont smtp.office365.com:587 avec STARTTLS activé, ce qui est de toute façon le réglage par défaut.

Et le nom d’utilisateur est l’adresse e-mail complète de l’organisation utilisant office365, généralement moncompte@monentreprise.onmicrosoft.com. Cela peut ou non être la même que votre adresse e-mail de notification.

Voici ma configuration finale :


  DISCOURSE_SMTP_ADDRESS: smtp.office365.com
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: moncompte@monentreprise.onmicrosoft.com
  DISCOURSE_SMTP_PASSWORD: monmotdepasse
  DISCOURSE_SMTP_ENABLE_START_TLS: true
  DISCOURSE_SMTP_DOMAIN: outlook.com
  DISCOURSE_NOTIFICATION_EMAIL: moncompte@monentreprise.com
  DISCOURSE_SMTP_AUTHENTICATION: login

Selon Mail Tester, c’est 10 sur 10 !

2 « J'aime »

Nous rencontrons exactement le même problème ici avec un serveur SMTP CORRECTEMENT configuré, utilisé par des dizaines d’autres services. Le serveur SMTP utilise un certificat wildcard émis par Let’s Encrypt.
L’erreur indique : « (impossible d’obtenir le certificat de l’émetteur local) »

Je pense que c’est un bug tel que décrit sur Disabling starttls or certificate verification does not work any more

Sauf que vous dites avoir un certificat valide. Donc je pourrais avoir tort.

essayez de vérifier le nom de domaine en utilisant les commandes recommandées par @RGJ

openssl s_client -connect  smtp.mydomain.info:25 -starttls smtp -showcerts 2>&1|grep "depth=0"

assurez-vous que votre domaine correspond au certificat retourné par openssl le cas échéant. Consultez également ce fil de discussion « Email Hostname Cert Mismatch Causing sidekiq… » lié ci-dessus.

De plus, le guide de dépannage des e-mails m’a beaucoup aidé. J’ai dû le lire très attentivement plusieurs fois pour obtenir ce dont j’avais besoin. Peut-être y trouverez-vous quelque chose ?

1 « J'aime »

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