Configura Exim per inviare email con Gmail

Vedremo come configurare Exim4 per inviare email di sistema con Gmail. Questo garantirà che le tue email inviate con il CRON siano instradate correttamente e non finiscano nello spam.

Installiamo Exim4

apt-get install exim4

Configurazione

dpkg-reconfigure exim4-config

Scegli: posta inviata tramite smarthost; nessuna posta locale

Selection_310

Poi rispondi alle domande come segue:

System mail name: YOUR_HOSTNAME

IP-addresses to listen on for incoming SMTP connections: 127.0.0.1 ; ::1

Other destinations for which mail is accepted: <BLANK>

Visible domain name for local users: <BLANK>

IP address or host name of the outgoing smarthost: smtp.gmail.com::587

Keep number of DNS-queries minimal (Dial-on-Demand)? No

Split configuration into small files? No

Root and postmaster mail recipient: <BLANK>

Apri e modifica il file: /etc/exim4/exim4.conf.template

Cerca:

.ifdef DCconfig_smarthost DCconfig_satellite

E aggiungi queste righe subito dopo:

send_via_gmail:
    driver = manualroute
    domains = ! +local_domains
    transport = gmail_smtp
    route_list = * smtp.gmail.com

Elimina tutti gli altri blocchi smarthost che contengono:

domains = ! +local_domains

Commentali mettendo un # all'inizio della riga

Selection_311

Cerca gli autenticatori con l'occorrenza:

begin authenticators

E aggiungi queste righe:

gmail_login:
    driver = plaintext
    public_name = LOGIN
    client_send = : VOTRE_EMAIL@gmail.com : VOTRE_PASS_GMAIL

Elimina tutti gli altri blocchi che contengono:

public_name = LOGIN

Puoi anche semplicemente rinominarli così:

login:
  driver = plaintext
  public_name = LOGIN_BACK

Questo evita conflitti di nomi.

Poi cerca:

transport/30_exim4-config_remote_smtp_smarthost

E aggiungi queste righe:

gmail_smtp:
    driver = smtp
    port = 587
    hosts_require_auth = $host_address
    hosts_require_tls = $host_address

Chiudi e salva il file di configurazione: /etc/exim4/exim4.conf.template

Ricarichiamo il file di configurazione:

update-exim4.conf

E riavviamo il servizio:

/etc/init.d/exim4 restart

Possiamo testare l'invio delle nostre email:

echo 'Test' | mail -s 'Message test' VOTRE_EMAIL@ADDRESSE