+++ title = "use dovecot to store mails with lmtp" date = "2013-11-06T06:37:32+00:00" author = "Gibheer" draft = false +++ After more than a year working on my mail setup, I think I have it running in a pretty good way. As some of the stuff is not documented at all in the wide of the internet, I will post parts here to make it accessible to others. Many setups use the MTA (postfix, exim) to store mails on the filesystem. My setup lets [dovecot take care of that][dovecot-lmtp]. That way it is the only process able to change data on the filesystem. to make this work, we first need a [lmtp socket][lmtp socket] opened by dovecot. The configuration part looks like this service lmtp { unix_listener /var/spool/postfix/private/delivery.sock { mode = 0600 user = postfix group = postfix } } LMTP is a lightweight smtp protocol and most mail server components can speak it. Next we need to tell postfix to send mails to this socket instead storing it on the filesystem. This can be done with with the following setting mailbox_transport = lmtp:unix:/var/spool/postfix/private/delivery.sock or for virtal accounts with virtual_transport = lmtp:unix:/var/spool/postfix/private/delivery.sock Now postfix will use the socket to deliver the mails. It is also possible to use other services between these two like dspam. In my case postfix delivers the mails to dspam and that will deliver them to dovecot. For dovecot change the path of the socket to something dspam can reach. I'm using `/var/run/delivery.sock`. Then change the dspam.conf to use that socket as a delivery host DeliveryProto LMTP DeliveryHost "/var/run/delivery.sock" As postfix needs to speak to dspam, we set dspam to create a socket too ServerMode auto ServerDomainSocketPath "/var/run/dspam.sock" `ServerMode` should be set to either `auto` or `standard`. Now the only thing left to do is to tell postfix to use that socket to deliver its mails. For that, set the options from before to the new socket virtual_transport = lmtp:unix:/var/run/dspam.sock And with that, we have a nice setup where only dovecot stores mails. [lmtp socket]: http://wiki2.dovecot.org/LMTP [dovecot-lmtp]: http://wiki2.dovecot.org/HowTo/PostfixDovecotLMTP