O que é o mailcow

O mailcow: dockerized é uma suite completa de servidor de email empacotada em contêineres Docker. Em vez de instalar e configurar Postfix, Dovecot, antispam, antivírus e webmail um por um, você sobe tudo de uma vez com um único arquivo de composição.

O projeto existe há vários anos e é mantido por uma equipe alemã, com código aberto no GitHub. Ele resolve um problema bem conhecido de quem já tentou administrar email: montar um servidor funcional exige juntar meia dúzia de componentes que precisam conversar entre si, cada um com seu próprio formato de configuração e suas próprias armadilhas.

A proposta do mailcow é entregar essa pilha já integrada, com um painel de administração web por cima. Você cria domínios, caixas postais, apelidos e regras de filtro pelo navegador, sem editar arquivo de configuração na mão para as tarefas do dia a dia.

Como funciona

Por baixo do painel, o mailcow orquestra vários contêineres que dividem responsabilidades. O Postfix cuida do envio e recebimento (o protocolo SMTP). O Dovecot guarda as mensagens e entrega via IMAP e POP3. O Rspamd faz a filtragem de spam e o ClamAV a varredura de vírus.

Em cima disso vem o SOGo, que fornece o webmail com agenda e contatos, e o Nginx, que serve o painel e termina o TLS. Um banco de dados MySQL guarda a configuração e o Redis cuida de cache e filas. Tudo isso definido em um arquivo Docker-compose que o projeto já entrega pronto.

A analogia mais direta é a de uma distribuição Linux: cada componente existe separado e você poderia instalar todos manualmente, mas alguém já fez o trabalho de escolher versões compatíveis, ajustar a configuração padrão e garantir que a coisa sobe funcionando. O mailcow é isso aplicado a email.

💡
Dica

Antes de instalar qualquer coisa, confira se o seu provedor de nuvem libera a porta 25 de saída. Muitos bloqueiam por padrão para conter spam, e sem ela o servidor recebe email mas não consegue enviar.

Principais recursos

A lista de funcionalidades é longa porque o projeto tenta cobrir tudo que um servidor de email precisa em produção. Vale destacar o que realmente muda o dia a dia de quem administra.

  • Painel web de administração: criar domínios, caixas, apelidos e listas sem tocar em arquivo de configuração.
  • Webmail com agenda e contatos: o SOGo entrega uma interface completa, incluindo sincronização com celular.
  • Antispam e antivírus integrados: Rspamd e ClamAV já configurados e conectados ao fluxo de entrega.
  • Autenticação de dois fatores: disponível tanto para administradores quanto para usuários das caixas.
  • DKIM automático: o painel gera as chaves e mostra o registro DNS que você precisa publicar.
  • Quarentena e filtros Sieve: regras de triagem por caixa, editáveis pelo próprio usuário.
  • API REST: automatizar criação de contas e integrar com outros sistemas.
  • Sincronização de caixas externas: puxar email de outro provedor para dentro do mailcow durante uma migração.

O diferencial mais forte em relação a montar a pilha manualmente é o tempo até o primeiro email funcionando. O que costuma levar um fim de semana inteiro de configuração passa a levar cerca de uma hora, boa parte dela esperando propagação de DNS.

Outro ponto relevante é a atualização. O projeto fornece um script de update que cuida de baixar as novas imagens e migrar o que for necessário, em vez de você acompanhar a versão de cada componente separadamente.

Como começar: instalação passo a passo

O caminho padrão é um servidor Linux dedicado ao mailcow. O projeto recomenda não dividir a máquina com outras aplicações que usem as portas 25, 80, 443, 143, 465, 587 ou 993.

  • Passo 1: provisione uma VPS com Linux, pelo menos 6 GB de RAM e Docker instalado.
  • Passo 2: aponte um registro A do seu domínio (por exemplo mail.seudominio.com.br) para o IP do servidor.
  • Passo 3: configure o registro MX do domínio apontando para esse mesmo nome.
  • Passo 4: clone o repositório e rode o script de geração de configuração, informando o nome de host.
  • Passo 5: suba os contêineres e aguarde o download das imagens.
  • Passo 6: acesse o painel pelo navegador, troque a senha padrão de administrador e crie o seu domínio.
  • Passo 7: copie a chave DKIM gerada pelo painel e publique no DNS, junto com os registros SPF e DMARC.
git clone https://GitHub.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
./generate_config.sh
Docker compose up -d
⚠️
Atenção

Troque a senha padrão do administrador no primeiro acesso ao painel. Um painel de email exposto na internet com credencial padrão vira relay de spam em questão de horas.

Exemplo prático

Suponha que você queira sair de um email corporativo pago e hospedar o domínio da sua empresa por conta própria. O fluxo completo, depois da instalação, fica assim.

No painel você cria o domínio, define quantas caixas ele pode ter e qual o limite de espaço de cada uma. Em seguida cria a primeira caixa, por exemplo [email protected], com a senha inicial. O painel já mostra os dados de conexão IMAP e SMTP para configurar no cliente de email.

A parte que mais gera problema é o DNS. São três registros que precisam estar corretos para que os seus emails não caiam em spam. Um exemplo de como eles ficam:

# SPF: autoriza o seu servidor a enviar pelo domínio
seudominio.com.br.  TXT  "v=spf1 mx -all"

# DMARC: política para quem falhar na verificação
_dmarc.seudominio.com.br.  TXT  "v=DMARC1; p=quarantine; rua=mailto:[email protected]"

# DKIM: chave pública gerada pelo painel do mailcow
dkim._domainkey.seudominio.com.br.  TXT  "v=DKIM1; k=rsa; p=MIIBIjANBg..."

Depois de publicar os três, vale enviar um email de teste para um serviço de verificação de entregabilidade e conferir se SPF, DKIM e DMARC passam. Só então migre as caixas de verdade.

Comparação com alternativas

Existem outras formas de resolver o mesmo problema, cada uma com um perfil diferente de esforço e controle.

Google Workspace e Microsoft 365: são a escolha óbvia para a maioria das empresas. Você paga por caixa e não administra nada. A entregabilidade é excelente porque os IPs deles têm reputação consolidada. O custo cresce linearmente com o time e os seus dados ficam com o fornecedor.

Mailu e Mail-in-a-Box: concorrentes diretos no espaço self-hosted. O Mailu também é baseado em Docker e tende a ser mais leve. O Mail-in-a-Box é mais opinativo e simples, mas menos flexível. O mailcow fica no meio: mais completo que os dois, ao custo de consumir mais recursos.

Montar a pilha na mão: dá o controle máximo e ensina muito, mas é a opção mais cara em tempo. Faz sentido para quem quer entender email a fundo, não para quem precisa de um servidor funcionando na semana que vem.

O ponto forte único do mailcow é a combinação de painel administrativo maduro, componentes já integrados e uma comunidade grande o suficiente para que quase qualquer erro que você encontre já tenha sido discutido em algum lugar.

Pontos positivos e limitações

Do lado positivo: você fica dono da sua infraestrutura de email, sem custo por caixa e sem limite artificial de contas. Para quem administra vários domínios, isso muda bastante a conta no fim do mês. O painel é maduro e a documentação é razoável.

A integração entre os componentes é o maior ganho prático. Antispam, antivírus, webmail e autenticação já conversam entre si. Você não perde tempo descobrindo por que o Rspamd não está sendo chamado na entrega.

Agora as limitações, e elas são sérias. Email self-hosted é uma responsabilidade contínua, não um projeto de fim de semana. Você passa a ser responsável por backup, atualização de segurança, monitoramento de fila e reputação do IP. Se o servidor cair, ninguém da empresa recebe email.

O consumo de recursos também incomoda. O ClamAV sozinho come um bom pedaço de memória, e o projeto recomenda bem mais RAM do que a maioria das VPS baratas oferece. E existe a questão da reputação: um IP novo de datacenter começa sem histórico, e provedores grandes tratam esse email com desconfiança até você construir reputação.

🔴
Cuidado

Não migre o email de produção da empresa antes de testar entregabilidade por pelo menos duas semanas. Email que cai na caixa de spam de cliente é um problema muito mais caro do que a mensalidade que você queria economizar.

Casos de uso reais

Agência ou consultoria com vários domínios: é o cenário em que a economia aparece mais rápido. Dezenas de caixas espalhadas em domínios de clientes, todas em um servidor só, sem pagar por assento.

Empresa com exigência de soberania de dados: setores regulados ou clientes que exigem que a comunicação fique em território nacional. Rodar o mailcow em uma VPS no Brasil resolve o requisito de forma direta.

Dev que quer aprender como email funciona de verdade: montar, quebrar e consertar um servidor próprio ensina sobre SMTP, SPF, DKIM e reputação mais rápido do que qualquer tutorial. Só não use como email principal enquanto estiver aprendendo.

Projeto que precisa de email transacional com controle: serve como base, mas vale avaliar se um serviço especializado em envio em massa não é mais adequado. Volume alto de transacional exige cuidado extra com reputação.

Dicas e boas práticas

Quem administra email self-hosted há algum tempo costuma seguir alguns hábitos que evitam a maior parte das dores de cabeça.

💡
Dica

Configure o registro reverso (PTR) do IP do servidor apontando para o mesmo nome de host do mailcow. Muitos provedores rejeitam email de IP sem reverso configurado, e esse é um dos motivos mais comuns de entrega falhando.

🚀
Pro tip

Comece o DMARC com política p=none e o endereço de relatório configurado. Você recebe os relatórios e enxerga quem está enviando em nome do seu domínio antes de endurecer para quarantine ou reject.

O erro mais comum de iniciante é subir o servidor e migrar tudo no mesmo dia, sem testar entregabilidade. O segundo erro mais comum é esquecer do backup: o volume de dados do Dovecot precisa entrar na rotina de backup desde o primeiro dia, porque email perdido não se recupera.

Também vale monitorar a fila do Postfix. Uma fila que só cresce costuma ser o primeiro sinal de que alguma coisa está errada, seja bloqueio de porta, seja uma conta comprometida enviando spam a partir do seu servidor.

Vale a pena?

Para quem administra vários domínios, tem requisito de soberania de dados ou simplesmente quer controle total sobre a própria comunicação, vale. O mailcow é a opção self-hosted mais completa disponível hoje e economiza muito tempo em relação a montar a pilha manualmente.

Para uma empresa pequena sem ninguém dedicado a infraestrutura, provavelmente não. O custo de uma suite paga por caixa é menor do que o custo de uma pessoa lidando com reputação de IP, atualização de segurança e backup de email. Essa conta raramente fecha a favor do self-hosted em times pequenos.

O próximo passo sugerido é intermediário: suba uma instância em um domínio secundário, use por algumas semanas como email pessoal de testes e observe a entregabilidade. Se a experiência for tranquila nesse ambiente controlado, aí sim considere migrar algo que importa.