Email di attivazione admin non inviato su nuova installazione self-hosted (ubuntu 20.04)

Ho finalmente risolto questo problema.

Il motivo era l’indirizzo email del mittente utilizzato di default da Discourse. Viene generato a partire dal nome host inserito durante la configurazione (nel mio caso qualcosa di simile a v220200xxxxxxxxxxxx.powersrv.de), risultando nell’indirizzo del mittente noreply@v220200xxxxxxxxxxxx.powersrv.de, che viene rifiutato dal server SMTP.

Allora, perché uso questo nome host poco amichevole? Semplicemente perché il server è destinato a sostituire quello esistente, che sta diventando troppo piccolo per la nostra comunità Discourse ormai cresciuta. Sto preparando e testando il nuovo server prima di cambiare le impostazioni DNS per puntare a questo nuovo server in un secondo momento. Voglio solo risparmiare il tempo necessario per creare impostazioni DNS temporanee amichevoli qui.

Come risolvere il problema?
Cerca queste righe alla fine del tuo file app.yml:

## Se vuoi impostare l'indirizzo email 'From' per la tua prima registrazione, decommenta e modifica:
## Dopo aver ricevuto la prima email di iscrizione, ricommenta la riga. Deve essere eseguita una sola volta.

Decommenta e modifica l’ultima riga con un indirizzo che il tuo server SMTP accetta come mittente valido, ad esempio:
- exec: rails r "SiteSetting.notification_email='UTENTE@DOMINIO.TLD'"

Ora esegui ./launcher rebuild app per applicare le modifiche ed ecco fatto: ora l’email di attivazione viene inviata e puoi attivare l’account amministratore e completare la configurazione.

Come l’ho scoperto?
Ho creato un nuovo account email con il mio provider di spazio web e ho eseguito di nuovo la configurazione di Discourse con queste credenziali SMTP: ho ricevuto l’email di attivazione come previsto. Così ho capito che il problema doveva essere legato alle impostazioni SMTP (e non ad altri aspetti relativi alla configurazione di Ubuntu / Docker / Discourse).
Dopo aver attivato l’account amministratore con questo altro server SMTP, sono andato su Impostazioni > Email > Saltate e ho trovato i tentativi falliti di invio dell’email di attivazione: 553 5.7.1 <noreply@v220200xxxxxxxxxxxx.powersrv.de>: Indirizzo del mittente rifiutato: non di proprietà dell'utente UTENTE@DOMINIO.TLD

Conclusione
Vorrei richiamare l’attenzione del team di sviluppo di Discourse sulla richiesta di funzionalità Suggerimento - consentire un’impostazione opzionale del campo “Da” per l’email di sistema durante la configurazione. Si prega di considerare le installazioni di prova (ad esempio come copia per eseguire alcuni test prima dell’effettivo aggiornamento di un’istanza) che non dispongono di un indirizzo host amichevole. Sarebbe molto più semplice configurarle senza dover modificare il file app.yml. Inoltre, a mio avviso, è bene dare all’amministratore la possibilità di utilizzare indirizzi email non vincolati al nome host di Discourse.

Grazie :slight_smile:

Grazie anche a @codinghorror per avermi indicato come inserire i blocchi di codice.