Como alterar o método de autenticação SMTP

Minha instalação do Discourse não consegue enviar e-mails para meu servidor SMTP. Com o discourse-doctor, recebo este erro ao tentar enviar um e-mail (removi informações sensíveis):

Testing sending to … plain auth.
======================================== ERROR ========================================
                                    UNEXPECTED ERROR

503 AUTH command used when not advertised


====================================== SOLUTION =======================================
This is not a common error. No recommended solution exists!

Gostaria de alterar o método de autenticação de plain para login. Porém, parece que não há um parâmetro para o método de autenticação no app.yml. Estou usando a imagem do Discourse oferecida pela DigitalOcean.

Você pode me ajudar a alterar o método de autenticação usado pelo SMTP?

Você só precisa adicioná-lo. Deve conseguir encontrar um exemplo se pesquisar.

OK, eu adicionei:

DISCOURSE_SMTP_AUTHENTICATION: login

agora ele usa o método de autenticação login, mas ainda tenho o mesmo erro.

Fiz algumas pesquisas sobre o assunto. E não sou o único a ter esse tipo de dificuldade. Parece que o Discourse é incompatível com alguns servidores SMTP ou, pelo menos, com algumas configurações.

No StackOverflow, SMTP Error <<: 503 AUTH command used when not advertised, David Spector referencia este post de blog: Tuning cPanel TLS for SMTP incoming email reception.

Pode ser que o Discourse esteja tentando autenticar antes de usar SSL ou STARTTLS. Isso é um problema de segurança? O Discourse precisa de alguma correção ou é um problema relacionado à configuração do SMTP? Não está claro para mim.

Por favor, compartilhe suas opiniões.

Existem algumas configurações relacionadas a esse problema de TLS. E-mail é complicado. O Discourse funciona com os principais provedores. Minha sugestão é que, se você quer que as coisas sejam fáceis, use um deles.