Errore SMTP: è necessario prima inviare un comando STARTTLS

Sto riscontrando un problema simile. Ieri ho eseguito il debug dell’invio di e-mail su una nuova istanza di Discourse per circa tre ore, senza alcun successo. Sto cercando di inviare e-mail tramite Fastmail con STARTTLS sulla porta 587. Altri servizi funzionano con le stesse credenziali.

Non ricevo l’errore “Must issue a STARTTLS command first” con queste impostazioni:

DISCOURSE_SMTP_ADDRESS: 'smtp.fastmail.com'
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: 'myuser@fastmail.fm'
DISCOURSE_SMTP_PASSWORD: 'mypass'
DISCOURSE_SMTP_ENABLE_START_TLS: true

…seguito da un ./launcher rebuild app, quando eseguo ./discourse-doctor e invio un’e-mail, ricevo un errore 500 5.5.1 Invalid command in risposta.

Oggi ho iniziato a tracciare la comunicazione con tcpdump e ho notato che Discourse non sembra utilizzare STARTTLS. Ecco cosa succede quando invio un’e-mail di recupero Grafana:

< 220 smtp.fastmail.com ESMTP ready
> EHLO 9b5ba1569f77
< 250-smtp.fastmail.com
< 250-PIPELINING
< 250-SIZE 71000000
< 250-ENHANCEDSTATUSCODES
< 250-8BITMIME
< 250 STARTTLS
> STARTTLS
< ...[encrypted]

Ma con Discourse, succede questo:

< 220 smtp.fastmail.com ESMTP ready
> EHLO localhost
< 250-smtp.fastmail.com
< 250-PIPELINING
< 250-SIZE 71000000
< 250-ENHANCEDSTATUSCODES
< 250-8BITMIME
< 250 STARTTLS
> AUTH PLAIN [redacted]
< 500 5.5.1 Invalid command

Quindi, sembra che Discourse stia inviando le mie credenziali su Internet in chiaro, anche se STARTTLS è abilitato nelle impostazioni? È un bug?

Ho anche notato che quando eseguo ./discourse-doctor, il riepilogo “YML SETTINGS” in alto elenca i seguenti elementi:

==================== YML SETTINGS ====================
DISCOURSE_HOSTNAME=forum.[redacted]
SMTP_ADDRESS=smtp.fastmail.com
DEVELOPER_EMAILS=sysadmin@[redacted]
SMTP_PASSWORD=[redacted]
SMTP_PORT=587
SMTP_USER_NAME=[redacted]@fastmail.fm
LETSENCRYPT_ACCOUNT_EMAIL=

Tuttavia, non c’è menzione di DISCOURSE_SMTP_ENABLE_START_TLS, anche se è impostato in app.yml. Non sono sicuro se questo problema sia correlato.

2 Mi Piace