Cron mails with wrong recipient

By default some system daemons, like cron send email from the hostname like this: root@mydroplet-ubuntu-s-1cpu-1gb-nyc3. To avoid blocked or spammed messages, configure sSMTP “revaliases” in trellis/roles/ssmtp/defaults/main.yml:

ssmtp_package: ssmtp
ssmtp_auth_method: LOGIN
ssmtp_from_override: 'Yes'
ssmtp_start_tls: 'Yes'
ssmtp_tls: 'Yes'
ssmtp_revaliases:
  - user: root
    from: root@example.com
    smtp_server: "{{ mail_smtp_server }}"
  - user: "{{ admin_user }}"
    from: admin@example.com
    smtp_server: "{{ mail_smtp_server }}"
  - user: "{{ web_user }}"
    from: web@example.com
    smtp_server: "{{ mail_smtp_server }}"

and deploy the mail tasks:

ansible-playbook server.yml -e env=production -K --tags mail

I’m not sure if the -K flag, which prompts for sudo password, is necessary. (UPDATE, it’s not).

This will populate a /etc/ssmtp/revaliases a file on the server.