Incompatibilidade do certificado do hostname do e-mail causando sobrecarga na fila do sidekiq, instabilidade severa do site

Isso pode ajudar a encontrar o correto:

dig +short smtp.mydomain.info|xargs -n 1 nslookup|grep name=

3 curtidas

Infelizmente não funciona, o erro é o mesmo:
SSL_connect returned=1 errno=0 state=error: certificate verify failed (Hostname mismatch)

Com a versão 2.9.0.beta4 (0acbd63320) estava funcionando, posso fazer downgrade?

Criei uma nova conta de e-mail temporária com suporte a starttls, espero que seja corrigido antes do lançamento da 2.9.0.beta5.

2 curtidas

Segui o conselho acima e defini o nome do host para o nome no certificado.

Vale a pena notar que, neste caso, o problema parece ter ocorrido apenas após uma reconstrução iniciada pelo launcher, em vez de apenas uma atualização. Talvez um problema com os scripts do launcher?

2 curtidas

Você pode me dizer como você fez isso?
Estou ficando louco, não consigo usar o servidor SMTP com a porta 25 ou 587 sem SSL e TLS

Obrigado

1 curtida

Talvez eu não consiga ajudá-lo então, já que minha configuração não requer TLS. Acho que a única coisa a fazer é usar um provedor de e-mail de terceiros que forneça certificados válidos ou esperar por uma correção que permita contornar esse problema.

1 curtida

Você tentou o comando dig de Richard para encontrar um nome de host para seu servidor SMTP para o qual ele tem um certificado?

1 curtida

A minha também é sem TLS e SSL :slight_smile:

1 curtida

Problema semelhante aqui Can't Send Emails - #14 by sukria.
Algo mudou na imagem base ou em uma biblioteca ou gem externa?

6 curtidas

Sim, está certo, é o mesmo problema… começou há cerca de duas semanas.

1 curtida

Você pode tentar ambos

DISCOURSE_SMTP_ENABLE_START_TLS: false
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none

?

2 curtidas

As primeiras coisas que tentei, mas ainda o mesmo erro

SSL_connect returned=1 errno=0 state=error: certificate verify failed (Hostname mismatch)
1 curtida

Ei, eu tentei com as duas opções. Ainda não funciona:

  DISCOURSE_SMTP_ADDRESS: REDACTED
  DISCOURSE_SMTP_PORT: 25
  DISCOURSE_SMTP_USER_NAME: REDACTED
  DISCOURSE_SMTP_PASSWORD: REDACTED
  DISCOURSE_SMTP_ENABLE_START_TLS: false           # (opcional, padrão true)
  DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
  DISCOURSE_SMTP_AUTHENTICATION: "login"

Ainda recebo certificate verify failed (self signed certificate).

2 curtidas

Para mim tem sido um bug bloqueador há muito tempo…
Recomendo que você crie um novo endereço de e-mail temporário que tenha suporte a SMTP TLS.

Isso pode estar relacionado a esta gem

4 curtidas

Tenho exatamente o mesmo problema. Começou ontem, quando atualizei (via reconstrução) para 2.9.0.beta4 (a5779a7d0b). Não fiz NENHUMA alteração em app.yml, nem em nada mais. Apenas uma reconstrução.

Agora tenho mais de 1.300 trabalhos falhados.

Estou vendo erros de SSL nos logs (veja abaixo para capturas de tela), e estou me perguntando se a reconstrução está ignorando de repente o sinalizador DISCOURSE_SMTP_ENABLE_START_TLS?

É isso que eu “sempre” tive no meu arquivo app.yml: (novamente, nenhuma alteração foi feita)

  DISCOURSE_SMTP_ADDRESS: 172.17.0.1
  DISCOURSE_SMTP_PORT: 25
  DISCOURSE_SMTP_AUTHENTICATION: none
  DISCOURSE_SMTP_ENABLE_START_TLS: false           # (opcional, padrão true)

EDIT: Isto é o que vejo nos logs de e-mail para o host (o servidor de e-mail). As mensagens de erro são novas, começando após a reconstrução.
A última mensagem sobre Discourse nos logs de e-mail antes da reconstrução:

23 de maio 17:16:02 localhost postfix/smtpd[5247]: connect from discourse-docker[172.17.0.2]
23 de maio 17:16:02 localhost postfix/smtpd[5247]: 0D803B67FB: client=discourse-docker[172.17.0.2]
23 de maio 17:16:02 localhost postfix/cleanup[5279]: 0D803B67FB: message-id=<topic/421230/2413438.f609f9d756c226a154de43f4@forums.jag-lovers.com>
23 de maio 17:16:02 localhost postfix/smtpd[5247]: disconnect from discourse-docker[172.17.0.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5

A primeira entrada nos logs de e-mail no servidor após a reconstrução:

23 de maio 17:22:48 localhost postfix/smtpd[10929]: connect from discourse-docker[172.17.0.2]
23 de maio 17:22:48 localhost postfix/smtpd[10929]: SSL_accept error from discourse-docker[172.17.0.2]: -1
23 de maio 17:22:48 localhost postfix/smtpd[10929]: warning: TLS library problem: error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate:../ssl/record/rec_layer_s3.c:1528:SSL alert number 42:
23 de maio 17:22:48 localhost postfix/smtpd[10929]: lost connection after STARTTLS from discourse-docker[172.17.0.2]
23 de maio 17:22:48 localhost postfix/smtpd[10929]: disconnect from discourse-docker[172.17.0.2] ehlo=1 starttls=0/1 commands=1/2

Após esse horário, as entradas para Discourse nos logs de e-mail se parecem com isso.
Capturas de tela:

4 curtidas

Tentei enviar uma mensagem de dentro do contêiner Docker do Discourse usando curl. Uma vez que me certifiquei de especificar SMTP em texto simples e a porta 25, consigo enviar e-mails através do host sem problemas:

$ cd /var/discourse/
$ sudo ./launcher enter app
x86_64 arch detected.
root@discourse-app:/var/www/discourse# curl smtp://172.17.0.1 --mail-from discourse@mydomain.com --mail-rcpt myname@gmail.com --upload-file README.md
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  7077    0     0  100  7077      0   575k --:--:-- --:--:-- --:--:--  575k
root@discourse-app:/var/www/discourse#

E este foi o aspecto desse teste nos logs de e-mail do host:

May 24 16:53:49 localhost postfix/smtpd[25494]: connect from discourse-docker[172.17.0.2]
May 24 16:53:49 localhost postfix/smtpd[25494]: EB62CB5FCD: client=discourse-docker[172.17.0.2]
May 24 16:53:49 localhost postfix/cleanup[26008]: EB62CB5FCD: message-id=<>
May 24 16:53:49 localhost opendkim[1365]: EB62CB5FCD: can't determine message sender; accepting
May 24 16:53:49 localhost postfix/smtpd[25494]: disconnect from discourse-docker[172.17.0.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5

Dado que não especifiquei TLS e a porta 25 no meu app.yml, e isto funcionou até à reconstrução de ontem, parece cada vez mais que a versão mais recente do Discourse está a ignorar a minha configuração SMTP no app.yml.

2 curtidas

Bump, @pfaffman e/ou @codinghorror.

Você acha que podemos ter um bug aqui, ou outra coisa?

1 curtida

@gunnar Movi sua postagem para cá, pois este é o problema de e-mail que você está descrevendo. Não tenho certeza se o erro “postagem já foi retirada” também está sendo causado por isso, mas os detalhes que você deu sobre seu e-mail pertencem a este problema.

2 curtidas

Parece-me absurdo que após 30 dias ainda exista este problema…
Tive que mudar meu provedor de e-mail para que meu fórum voltasse a funcionar.

1 curtida

Isso é frustrante, mas parece que algum gem não suporta mais ignorar certificados inválidos b e/ou transporte não criptografado. Pode ser que os dias de poder enviar e-mails dessa forma tenham acabado. Mas eu não estou experimentando o problema, então não olhei com atenção suficiente para saber se estou certo.

2 curtidas