Come posso configurare un Mail Transfer Agent?


17

Intendo utilizzare muttper inviare e-mail automatizzate tramite crono atcon allegati al mio indirizzo Gmail quando si verificano eventi particolari sul mio server Ubuntu. Attualmente, muttnon posso inviare e-mail a indirizzi e-mail esterni, credo che ciò sia dovuto al fatto che devo configurare un agente di trasferimento posta. Come posso selezionare un MTA adatto e come impostarlo per eseguire ciò di cui ho bisogno?


1
Non hai bisogno di mutt per avere cron o per inviare e-mail al tuo account Gmail. Qualsiasi MTA correttamente configurato dovrebbe essere sufficiente per questo.
— JanC

Devo essere in grado di includere allegati con la posta in uscita, quindi ho pensato che avrei bisogno di mutt per quello.
— conorgriffin,

1
Questa è una domanda importante. Molti di noi hanno installato server Linux e hanno bisogno di un modo per inviare eventi e report. In molti (la maggior parte!) Casi, un server di posta completo è eccessivo. Ho appreso che recentemente installare Postfix per tale compito. Avrei dovuto impostare uno strumento di sola trasmissione come uno di questi, e lo farò in futuro.
— Don Faulkner,

Risposte:


20

Ci sono alcune scelte da fare quando si seleziona un MTA da installare; il primo è se si desidera un MTA di sola invio o se è necessario un server di posta completo.

Questo post Unix.SE fornisce un elenco completo di MTA di sola trasmissione disponibili; tutti sono già impacchettati per Ubuntu 10.10. Ci sono alcune cose che potresti voler considerare quando scegli un MTA di sola invio:

  1. se nullmailerpuò mettere in coda le e-mail per la consegna successiva in caso di guasto: IIRC, può farlo solo .

  2. se sostituirà l'agente di consegna della posta di sistema (cercare una riga Provides: mail-transport-agentnell'output di apt-cache show package). In tal caso, tutta la posta proveniente dal sistema (inclusi i rapporti da cronologia, statistiche sulla popolarità, ecc.) Verrà gestita dall'MTA che installi: se non imposti gli alias di posta corretti per root e altri utenti, l'e-mail potrebbe essere consegnato all'indirizzo errato (in genere, qualche amministratore di sistema nel proprio ISP). Attualmente, i pacchetti nullmailer, esmtp-run(ma non esmtp) e ssmtprientrano in questa categoria.

  3. Tutti gli MTA di sola invio inoltreranno la tua e-mail a un altro server (chiamato "host di inoltro" o "smarthost"; in genere si tratta del server SMTP del tuo ISP) e quindi ti consentiranno di gestire tutti i dettagli della consegna reale della posta Internet. È necessario capire se esistono requisiti speciali per la connessione al server ISP (ad es. Un qualche tipo di autenticazione o TLS) e scegliere un MTA che supporti le funzionalità richieste (ad esempio, ssmtpnon supporta alcun tipo di autenticazione o SSL / TLS).

I server di posta completi comprendono exim , postfix e sendmail . Lo script di installazione post-installazione per Debian / Ubuntu farà un ottimo lavoro nel produrre una configurazione funzionante per alcune impostazioni comuni (consegna della posta solo al sistema locale; invio di e-mail attraverso uno "smarthost" - cioè un server di posta che incanalate tutte le tue e-mail, in genere l'host SMTP del tuo ISP; sito Internet con piena connettività in entrata e in uscita). IMHO, postfix è il più facile da eseguire e configurare, ma poiché è così capace, il suo manuale di configurazione è molto più lungo di qualsiasi MTA di sola invio.

Inoltre, il vero rischio con la configurazione di un server di posta è che, se si commette un errore nella configurazione locale, si finisce con la posta recapitata nel posto sbagliato (leggi: perso) o - peggio - con un sistema open-relay che può essere utilizzato dagli spammer (e, fidati di me, possono trovare un relay aperto prima che tu realizzi che il tuo server è uno).

Il mio consiglio sarebbe quindi di iniziare con un MTA di solo invio e quindi passare a un server di posta completo solo se ne vedi la necessità (che non è il caso se vuoi solo inviare e-mail al tuo indirizzo GMail).


OK, quindi diciamo che ho impostato un indirizzo e-mail come myserver@gmail.com e abilito smtp sull'account Gmail. Potrei configurare un programma client sul server per inviare posta utilizzando questo account Gmail tramite SMTP e quindi evitare la complessità di una configurazione completa del server di posta?
— Conorgriffin,

@Griffo: Sì, questo è esattamente ciò che fa un MTA "solo invio"; basta usare msmtp(come suggerito nella risposta di ixtmixilix) o sceglierne uno dall'elenco all'URL che ho pubblicato sopra.
— Riccardo Murri,

+1 per nullmailer ... Lo uso sui miei server ed è molto conveniente. Molto leggero, relativamente facile da installare. E una volta che funziona, non devi più preoccupartene :)
— Little Jawa,

Inoltre mda (The DragonFly Mail Agent) è in grado di mettere in coda le e-mail per la consegna successiva.
— Tomasz Zieliński,

È dma, non mda (The DragonFly Mail Agent).
— Andreas J.,

6

Lo consiglierei msmtp. La configurazione di altri sistemi di posta, come ad esempio sendmail, è decisamente una seccatura. Una volta che hai msmtpimpostato, puoi usarlo con mutt, e puoi anche mascherarlo in sendmailmodo che i programmi non conoscano la differenza tra i due MTA. Tutti i dettagli disponibili sul sito Web.


3

I collegamenti seguenti forniscono tutte le opzioni MTA che puoi scegliere, in base alla tua versione di Ubuntu:

http://packages.ubuntu.com/precise/mail-transport-agent (per 12.04)
http://packages.ubuntu.com/trusty/mail-transport-agent (per 14.04)

Personalmente, ho scoperto che ssmtpè molto facile da configurare ed eseguire, solo 2 comandi faranno:

$ sudo aptitude install mailutils ssmtp
$ sudo dpkg-reconfigure ssmtp

1
Secondo il wiki di ArchLinux, ssmtp non è più gestito e raccomandano msmtp .
— sebastian-c,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.