Como Configurar a Estrutura de Entrega Correta de E-mails Multidomínio com Postfix + Dovecot + LMTP

A falha: tudo entra em um unico arquivo

Visão Geral

Neste guia, você vai aprender a configurar um servidor de e-mail completo para múltiplos domínios com:

  • Postfix para envio e recebimento
  • Dovecot para autenticação e armazenamento via Maildir
  • MariaDB para armazenar usuários, domínios e aliases
  • Entrega via LMTP para garantir que cada e-mail vá para a caixa correta, evitando entrega em arquivo único

Problema comum

Sem configurar corretamente o LMTP no Dovecot e no Postfix, o servidor pode entregar todos os e-mails para um único arquivo mbox, gerando uma bagunça e impedindo o funcionamento correto para múltiplos usuários e domínios.


Passos essenciais para configurar LMTP e Maildir corretamente

1. Configuração no Postfix (main.cf)

Defina as consultas MySQL para domínios, usuários e aliases e configure o transporte virtual para LMTP:

virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual-domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual-users.cf
virtual_alias_maps = mysql:/etc/postfix/mysql-virtual-aliases.cf

virtual_mailbox_base = /var/mail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000

virtual_transport = lmtp:unix:private/dovecot-lmtp

2. Configuração do Dovecot (10-master.conf)

Configure o Dovecot para expor o socket LMTP que o Postfix irá usar:

service lmtp {
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
    mode = 0600
    user = postfix
    group = postfix
  }
}

Importante: esse socket deve estar exatamente em /var/spool/postfix/private/dovecot-lmtp para comunicação com o Postfix.


3. Configuração de armazenamento de e-mails (10-mail.conf)

Configure o Dovecot para usar Maildir e estruturar os diretórios conforme domínio e usuário:

mail_location = maildir:/var/mail/%d/%n

Isso vai armazenar os e-mails em:

/var/mail/seudominio.com.br/usuario/

Com as subpastas cur/, new/, tmp/ típicas do Maildir.


4. Estrutura de diretórios e permissões

Crie a estrutura inicial para cada usuário e defina o dono correto:

mkdir -p /var/mail/seudominio.com.br/usuario/{cur,new,tmp}
chown -R vmail:vmail /var/mail

5. Instalação do Dovecot POP3 (importante)

Para evitar erros no serviço Dovecot, instale o pacote POP3:

apt-get install dovecot-pop3d

6. Validação e reinício

Após as configurações, sempre valide a configuração do Dovecot:

dovecot -n

Se tudo estiver certo, reinicie os serviços:

systemctl restart dovecot postfix

Por que usar LMTP?

  • LMTP é um protocolo de entrega local que permite ao Dovecot receber e-mails do Postfix de forma eficiente e controlada.
  • Garante que os e-mails sejam entregues no formato correto (Maildir) e no local certo, por usuário e domínio.
  • Evita que o Postfix entregue e-mails em arquivos únicos (mbox), que não funcionam bem em ambientes multidomínio.

Conclusão

Configurar corretamente o LMTP entre Postfix e Dovecot é fundamental para garantir que seu servidor de e-mail multidomínio funcione perfeitamente, com entrega organizada, autenticação segura e escalabilidade.

Se você estava enfrentando o problema de todos os e-mails caindo em um único arquivo, revisar o socket LMTP no Dovecot (10-master.conf) e o transporte virtual no Postfix (main.cf) provavelmente resolverá.

Rolar para cima