Postfix vs Dovecot: funções diferentes em um servidor de recebimento
Revisado por Revisão técnica Once Email
Guia do artigo
Por que vale a pena ler este artigo
- Análise original
- O guia acompanha uma mensagem por aceitação SMTP, fila, entrega LMTP, armazenamento e acesso IMAP, atribuindo cada evidência de falha ao componente capaz de produzi-la.
- Contexto de tendências
- Postfix e Dovecot continuam sendo combinados, mas painéis e contêineres escondem a fronteira entre transferência, entrega final e acesso à caixa, o que favorece diagnósticos incorretos.
- Valor prático
- A equipe recebe uma tabela de decisão e uma ordem de verificação que separa rejeição SMTP, adiamento, falha de escrita e acesso IMAP sem registrar conteúdo sensível.
Nesta página
Postfix e Dovecot aparecem juntos em muitos servidores, mas não executam a mesma função. Em um sistema receptor comum, Postfix aceita SMTP e administra a fila, enquanto Dovecot realiza entrega final ou oferece acesso à caixa por LMTP e IMAP. Um serviço ativo não prova que o fluxo completo está saudável.
Este é um mapa de diagnóstico, não uma receita de produção. DNS, TLS, validação de destinatário, controles de abuso, permissões, backup, monitoramento e relay exigem projeto próprio. Once Email somente recebe: não oferece envio SMTP, resposta, encaminhamento ou disparo em massa.
Comparação direta
| Pergunta | Postfix | Dovecot |
|---|---|---|
| Papel de rede | Recebe ou envia SMTP | Oferece IMAP/POP3 e pode receber LMTP |
| Possui fila de mensagens | Sim | Não |
| Aceita destinatário no SMTP | Normalmente Postfix e seus mapas/políticas | Pode fornecer dados de usuários conforme o desenho |
| Grava na caixa final | Pode entregar localmente ou delegar | LMTP do Dovecot pode concluir a entrega |
| Permite listar e ler | Não | Sim, geralmente por IMAP |
Assim, “Postfix ou Dovecot” raramente é uma escolha de produto. A pergunta útil é onde termina uma responsabilidade e começa a seguinte.
Acompanhe uma mensagem recebida
A arquitetura oficial do Postfix mostra correio de rede entrando em smtpd, passando por cleanup e chegando à fila. Depois, o gerenciador escolhe um agente. Há quatro pontos claros:
- Conexão SMTP: o remetente remoto alcança Postfix e negocia a transação.
- Aceitação: Postfix aceita ou rejeita o destinatário do envelope segundo mapas e regras.
- Fila e transferência: a mensagem aceita segue para local, virtual, pipe ou LMTP.
- Acesso: após a entrega, Dovecot permite a um cliente autorizado listar e ler via IMAP.
Um 250 SMTP não significa que a mensagem esteja visível. Postfix pode aceitar e depois adiar por LMTP, quota ou armazenamento. No sentido inverso, o arquivo pode existir e ficar invisível devido a autenticação IMAP, índice, namespace ou permissão.
LMTP conecta os serviços
Uma fronteira comum é LMTP. Postfix mantém SMTP e fila, e chama Dovecot para a entrega final. O guia LMTP do Dovecot apresenta um socket Unix protegido dentro do spool do Postfix.
Esse socket não é apenas um caminho copiado. Proprietário, grupo, modo, chroot e disponibilidade formam um contrato. Se Postfix não o alcança, o comportamento correto costuma ser manter o item adiado, não fingir caixa vazia. Depois que LMTP aceita, evidências de quota e armazenamento ganham prioridade.
Não torne o socket gravável por todos para esconder um erro. Identifique a conta de serviço e conceda o mínimo. Não exponha LMTP publicamente sem arquitetura explícita de autenticação e transporte protegido.
Diagnóstico orientado por evidência
| Evidência | Primeira fronteira a verificar |
|---|---|
| Sem conexão à porta 25 | DNS, firewall, TLS ou smtpd do Postfix |
| Destinatário rejeitado antes do corpo | Mapas e política do Postfix; talvez diretório consultado |
| SMTP aceita e mensagem fica deferred | Fila Postfix e transporte selecionado |
| Socket LMTP ausente ou negado | Ligação Postfix–Dovecot e permissões |
| LMTP informa quota ou falha de escrita | Entrega Dovecot e armazenamento |
| Arquivo existe, mas IMAP não lista | Autenticação, namespace, índice e permissões Dovecot |
Use um marcador único e uma janela limitada. Preserve ID da fila, classe SMTP, resultado LMTP e resultado de caixa já mascarado. Nunca envie endereço real, código, token, assunto, corpo, anexo ou URL completa para logs compartilhados ou analytics.
Monte um cartão de quatro campos antes de alterar a configuração
Para uma única mensagem de teste autorizada, guarde apenas quatro fatos redigidos. Juntos, eles mostram se aceitação, fila, entrega final e visibilidade pertencem à mesma transação:
| Ponto | Conservar | O que comprova |
|---|---|---|
| Aceitação SMTP | Horário, classe de status aprimorada e ID de fila abreviado | O Postfix aceitou a transação; não prova a entrega final |
| Resultado da fila | Mesmo ID abreviado, transporte e estado delivered/deferred | O Postfix escolheu o transporte e concluiu ou reteve a passagem |
| Resultado LMTP | Sucesso ou classe de erro, sem destinatário nem conteúdo | O LMTP do Dovecot aceitou a entrega final ou devolveu causa limitada |
| Visibilidade | Contagem antes/depois e resultado de leitura da aplicação | O armazenamento mudou e o caminho real consegue, ou não, ver o resultado |
Comece com inspeção somente leitura. postqueue -p lista a fila; filtre localmente pelo ID abreviado, sem exportar tudo. doveadm mailbox status -u TEST_USER "messages unseen" INBOX consulta contadores, usando apenas identidade de teste autorizada. As referências oficiais de fila do Postfix e status de mailbox do Dovecot definem esses sinais. Sem alinhar horário e marcador redigido, os comandos não provam que seja a mesma mensagem.
Erros de categoria e ordem segura
Instalar Dovecot não cria um listener SMTP; instalar Postfix não cria uma caixa IMAP. SPF, DKIM e DMARC são outra camada: oferecem autenticação e alinhamento, não acesso. Consulte o guia de resultados SPF, DKIM e DMARC.
Fila vazia não prova sucesso: a mensagem pode ter sido devolvida, expirada, descartada por política ou já ter saído. Caixa vazia também não prova ausência: a consulta pode falhar, o cliente pode estar offline ou olhando outro namespace. Separe “sem resultado”, “falha temporária” e “vazio confirmado”.
Verifique o endpoint SMTP, entregue uma mensagem autorizada e única, registre a aceitação no Postfix, acompanhe fila e entrega, confirme a caixa Dovecot e leia pelo mesmo IMAP da aplicação. Exclua a caixa de teste e retenha somente evidência mascarada. Reiniciar os dois serviços antes de observar apaga tempos e filas sem explicar a causa.
Guias relacionados
Ferramentas de e-mail com privacidade em primeiro lugar
Baixe muitos anexos e extraia localmente com o UnpackFlow
Use uma pasta exclusiva, confirme cada download e execute list, plan, run ou start para arquivos multipartes e aninhados sem upload online.
Quanto tempo dura um e-mail temporário? Planeje antes de expirar
Saiba escolher uma duração suficiente, prever atrasos e evitar dependência de uma caixa que vai desaparecer.