O domínio foi verificado no SES, então você não precisa do parâmetro de autenticação SMTP.
Além disso, talvez seja necessário retirar sua conta do SES do modo sandbox, caso ainda não tenha feito isso, e solicitar um aumento de limite. A condição de sandbox aplica-se por região.
Ainda não faço ideia do motivo pelo qual nenhum e-mail está sendo enviado via AWS SES.
Quando envio um e-mail de teste pela página de administração do nosso Discourse, ele simplesmente diz ‘enviado’. Tentar uma solicitação de recuperação de senha também segue os procedimentos corretamente, mas nenhum e-mail chega.
Acho que o SES não gera logs, então não consigo verificar se ele está recebendo os e-mails.
A única coisa que pode estar causando o problema é que nosso endereço de resposta está usando uma conta do gmail.com, em vez do domínio do nosso site.
Alguém já se deparou com essa combinação/cenário antes?
Esse é o endereço de e-mail que aparecerá na linha “De”. Ele precisa ser um endereço no domínio do qual o SES enviará. O SES não enviará e-mails que finge estar vindo do Gmail. Você não tem controle sobre o gmail.com, então o SES não enviará e-mails com isso na linha “De”. notification_email deve ser algo@seudominioverificado
Eu também uso o SES e funciona bem para mim. A única diferença que consigo ver em comparação é que a linha DISCOURSE_SMTP_AUTHENTICATION: login não existe na minha configuração. Além disso, DISCOURSE_SMTP_ENABLE_START_TLS: true e DISCOURSE_SMTP_PORT: 587 estão ambos comentados, embora isso não deva fazer diferença.
As únicas 3 linhas que modifico no app.yml são o endereço SMTP, o nome de usuário e a senha. O resto permanece comentado como está em uma instalação nova, usando os valores padrão. Após a reconstrução, preciso apenas garantir que a configuração do site notification email esteja definida para um endereço que use um domínio verificado no SES. Eu não uso aspas na senha mais, mas minhas instalações mais antigas usavam e funcionavam bem de qualquer maneira.
Sim, vale a pena tentar alterar o endereço de resposta para usar um endereço com o domínio verificado do SES, conforme recomendado na resposta acima, apenas para testar se isso fará com que o envio funcione corretamente.
Se não funcionar, eu verificaria se seu host está bloqueando algumas portas e talvez conferisse novamente se as credenciais do SES foram geradas corretamente. Vi que você confirmou acima que seu domínio está verificado no SES.
O endereço de resposta está no mesmo domínio que o domínio de origem, sim, mas em alguns casos não é o mesmo subdomínio (ainda é o mesmo domínio raiz, porém). Ambos os casos funcionam bem para mim.
Tenho certeza de que você percebeu isso → você verificou o endereço de e-mail de saída que o Discourse usa para enviar? Se for notify@seudominioverificado, você precisa ir ao SES, na segunda linha em ‘Gerenciamento de Identidade’, adicionar e depois verificar o e-mail de envio. Nada será enviado até que você faça isso. Sem alarmes, sem sirenes, apenas nada acontece.
Ter uma resposta do Gmail é ótimo. Foi isso que fiz. Então, os e-mails de autorização dos membros estavam sendo bloqueados como spam porque o campo De e o campo Responder não coincidiam.
Eventualmente, escrevi um simples AWS Lambda (levou uma semana para aprender como fazer) que encaminha e-mails recebidos para a API do Discourse. Muito limpo. Sem POSTIX.