# Criar servidor de e-mail próprio: Tutorial passo a passo

Não é tão complicado criar um servidor de e-mail próprio. Com ele, você tem máximo controle sobre a sua correspondência eletrônica. Crie um servidor de e-mail próprio configurando-o **com o Docker** e a stack *docker-mailserver* pronta para uso. Conheça os **requisitos** necessários e aprenda como criar e configurar um servidor de e-mail próprio com o nosso passo a passo.

## O que é servidor de e-mail próprio?

Um servidor de e-mail Docker é uma **solução de e-mail auto-hospedada, executada em contêineres Docker**. Ele gerencia o envio, o recebimento e o armazenamento de e-mails, oferecendo controle total sobre privacidade dos dados, políticas de segurança e configurações do sistema. Em comparação com provedores como Gmail ou Outlook, um servidor de e-mail próprio no Docker coloca você no controle da infraestrutura, sendo ideal para desenvolvedores, usuários preocupados com privacidade e pequenas empresas.

## Por que usar o Docker para um servidor de e-mail próprio?

Usar o Docker para hospedar o seu servidor de e-mail oferece diversas vantagens importantes:

- **Isolamento e segurança**: Contêineres Docker isolam o servidor de e-mail, reduzindo o risco de comprometimento do sistema como um todo e aumentando a segurança.
- **Portabilidade**: Contêineres Docker podem ser facilmente movidos entre ambientes, garantindo uma configuração consistente entre servidores locais e em nuvem.
- **Implantação simplificada**: O Docker oferece stacks pré-configurados, o que agiliza o processo de instalação e elimina a necessidade de configurações manuais.
- **Escalabilidade**: É possível escalar os contêineres Docker com facilidade para lidar com o aumento no tráfego de e-mails ou mudanças na demanda de recursos.
- **Controle de versões**: É possível definir versões específicas das imagens Docker, evitando problemas de compatibilidade e facilitando o rollback (reversão), se necessário.
- **Consistência entre ambientes**: O Docker garante configurações padronizadas em ambientes de desenvolvimento, teste e produção.

## Requisitos de hardware para criar um servidor de e-mail Docker

Nota Este tutorial é voltado para usuários com conhecimento técnico, familiarizados com Linux e Docker, que desejam uma infraestrutura de e-mail privada e flexível. Ele é especialmente relevante para desenvolvedores, administradores de TI e pequenas empresas.

Para criar seu servidor de e-mail próprio, primeiro você precisa do hardware adequado. A potência necessária depende de diversos fatores, como o volume de e-mails esperado. Um endereço IPv4 estático é essencial para garantir uma comunicação eficiente com outros servidores de e-mail. Além disso, é importante realizar uma configuração correta de DNS, incluindo registros MX, SPF, DKIM e DMARC. O suporte a IPv6 se torna cada vez mais relevante, pois garante a compatibilidade e melhora a reputação dos e-mails enviados.

### Tecnologias recomendadas atualmente

- **Imagem Docker**: docker-mailserver/docker-mailserver:v13.2+
- **Protocolos de e-mail**: SMTP (Portas 25, 587, 465), IMAPS (993), POP3S (995)
- **Padrões de segurança**: TLS 1.3, [DKIM](https://www.ionos.com/pt-br/digitalguide/e-mail/seguranca-de-e-mail/dkim-domainkeys-identified-mail/), [SPF](https://www.ionos.com/pt-br/digitalguide/e-mail/seguranca-de-e-mail/o-que-e-spf-record-e-como-usa-lo/), DMARC, DNSSEC (se suportado)
- **Sistema operacional base**: Ubuntu 22.04 LTS, Debian 12 ou distribuições Linux estáveis equivalentes

Dica Você pode simplificar todo o processo usando o [Docker mail server](https://github.com/docker-mailserver/docker-mailserver "Docker mail server - github"), uma stack open source bastante popular mantido pela comunidade. Ele inclui Postfix, Dovecot, rspamd, ClamAV e integração opcional com LDAP em um único contêiner.

## O que considerar ao criar um servidor de e-mail Docker?

### Recomendações de segurança

Para proteger seu servidor de e-mail, é fundamental aplicar configurações de segurança de forma consistente, incluindo:

- Utilizar certificados TLS atualizados (mínimo TLS 1.2, idealmente TLS 1.3)
- Configurar e aplicar políticas SPF, DKIM e DMARC
- Implementar limitação de taxa de envio e autenticação via SASL
- Habilitar conexões criptografadas para IMAP/POP3 e SMTP
- Configurar logs com ferramentas como rsyslog e rotação e arquivamento estruturado de logs

Nota Mesmo com a utilização de contêineres Docker, uma configuração de segurança independente é essencial. O Docker facilita a instalação, mas não substitui o reforço de segurança do sistema, que inclui firewalls, permissões restritas, logs (ex.: via rsyslog) e atualizações regulares.

### Recomendações gerais de configuração

A configuração de um servidor de e-mail Docker exige **conhecimento técnico e atenção especial à segurança**. A seguir, alguns pontos essenciais:

- Escolher uma imagem Docker apropriada e um stack de servidor de e-mail (ex.: docker-mailserver/docker-mailserver)
- Configurar os registros DNS (MX, SPF, DKIM, DMARC)
- Proteger o host Docker (firewall, Fail2Ban, criptografia)
- Escolher ferramentas adequadas para administração e monitoramento
- Realizar atualizações e backups regularmente (incluindo a imagem Docker)
- Configurar entradas de registro de DNS reverso e suporte a IPv6
- Atender aos requisitos legais (ex.: [LGPD](https://www.ionos.com/pt-br/digitalguide/sites-de-internet/direito-online/lei-geral-de-protecao-de-dados-lgpd-no-comercio-eletronico/)

### Hardware necessário

Para criar seu servidor de e-mail próprio no Docker, é necessário contar com hardware adequado. O desempenho necessário depende de fatores como o volume de e-mails enviados diariamente e o número de usuários. Embora os contêineres Docker sejam leves, ainda é necessário considerar RAM, CPU e armazenamento. Serviços adicionais, como sistemas de backup ou filtros de conteúdo (ex.: antispam ou antiphishing), também exigem mais recursos. Além disso, você precisará de um endereço IPv4 estático para garantir boa comunicação com outros servidores de e-mail — IPs dinâmicos podem gerar problemas na entrega de mensagens.

Dica Quer dar um toque profissional ao seu servidor de e-mail Docker? Um domínio personalizado é essencial para isso. Registre o seu [domínio próprio](https://www.ionos.com/domains/domain-names "Domain Name Registration - IONOS") com IONOS e obtenha um certificado SSL/TLS para o seu servidor de e-mail!

Ao escolher um ambiente adequado para o seu servidor de e-mail Docker, considere a capacidade necessária. Uma configuração simples consegue lidar com poucos e-mails por dia, enquanto um servidor corporativo exige bastante RAM, CPU e espaço de armazenamento.

Nota Seja Windows ou Linux: não se esqueça de considerar os recursos exigidos pelo sistema operacional base.

<table>
  <thead>
    <tr>
      <th>Cenário de servidor de e-mail</th>
      <th>Hardware</th>
      <th>Plano da IONOS ideal</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Servidor doméstico simples, com pouco tráfego</td>
      <td>2 vCores; 8 GB de RAM; 240 GB SSD</td>
      <td>[VPS L](https://www.ionos.com/servers/vps "Planos VPS - IONOS")</td>
    </tr>
    <tr>
      <td>Servidor de e-mail para pequena empresa com até 1.000 e-mails diários</td>
      <td>8 vCores; 16 GB de RAM; 480 GB SSD</td>
      <td>[VPS XL](https://www.ionos.com/servers/vps "Planos VPS - IONOS")</td>
    </tr>
    <tr>
      <td>Servidor de e-mail empresarial com mais de 50.000 e-mails diários</td>
      <td>6 vCores; 32 GB de RAM; 2 x 480 GB SSD RAID</td>
      <td>[Dedicated AMD Server](https://www.ionos.com/servers/amd-servers "AMD Servers - IONOS")</td>
    </tr>
  </tbody>
</table>

Dica Um [Dedicated Server](https://www.ionos.com/servers/dedicated-servers "Dedicated Server - IONOS") da IONOS lhe dá acesso a um hardware empresarial para uso exclusivo. Planos de [vServer](https://www.ionos.com/servers/vps "vServers - IONOS") e [Cloud Server](https://www.ionos.com/cloud/cloud-servers "Cloud Server - IONOS"), por sua vez, são baseados em recursos virtualizados compartilhados com outros clientes, mas sem prejuízo de desempenho!

## Tutorial passo a passo: Criar servidor de e-mail Docker

Neste tutorial, usaremos o popular contêiner Docker [*docker-mailserver*](https://github.com/docker-mailserver/docker-mailserver "docker-mailserver - github").

Esse contêiner Docker leve e open source (licença MIT) oferece uma stack pronta para uso, para criar um servidor de e-mail próprio. Ou seja, ele já inclui todos os componentes importantes, como um servidor SMTP, um servidor IMAP ou POP3, um software antispam e antivírus e um serviço LDAP.

### Passo 1: Obter imagem Docker

Você pode obter a imagem mais atual do *docker-mailserver* no [diretório oficial do Docker Hub](https://hub.docker.com/r/mailserver/docker-mailserver "hub.docker.com: docker-mailserver") ou no [repositório GitHub oficial da ferramenta](https://github.com/orgs/docker-mailserver/packages?repo_name=docker-mailserver "github.com: docker-mailserver").

O recomendado é obter uma versão estável, como a `v13.2`, em vez de usar tags como `:latest` e `:edge`.

**Obtenha a imagem Docker** inserindo o seguinte código na linha de comando:

```bash 
docker pull mailserver/docker-mailserver:v13.2  
# ou:  
docker pull ghcr.io/docker-mailserver/docker-mailserver:v13.2
```

### Passo 2: Configurar o *docker-compose.yml*

O próximo passo é configurar o `docker-compose.yml` para definir os serviços e volumes necessários ao seu contêiner Docker. Aqui está um exemplo de configuração para seu servidor de e-mail:

```yaml 
version: '3.8'    
services:  
  mailserver:  
    image: docker.io/mailserver/docker-mailserver:v13.2  
    container_name: mailserver  
    hostname: mail-server  
    domainname: example.com  
    ports:  
      - "25:25"  
      - "587:587"  
      - "465:465"  
    volumes:  
      - ./docker-data/dms/mail-data/:/var/mail/  
      - ./docker-data/dms/mail-state/:/var/mail-state/  
      - ./docker-data/dms/mail-logs/:/var/log/mail/  
      - ./docker-data/dms/config/:/tmp/docker-mailserver/  
      - ./docker-data/nginx-proxy/certs/:/etc/letsencrypt/  
      - /etc/localtime:/etc/localtime:ro  
    environment:  
      - ENABLE_FAIL2BAN=1  
      - SSL_TYPE=letsencrypt  
      - PERMIT_DOCKER=network  
      - ONE_DIR=1  
      - ENABLE_POSTGREY=0  
      - ENABLE_CLAMAV=0  
      - ENABLE_SPAMASSASSIN=0  
      - SPOOF_PROTECTION=0  
    cap_add:  
      - NET_ADMIN  
      - SYS_PTRACE 
```

Essa configuração garante que o contêiner Docker use as portas corretas para **SMTP** (25), **IMAPS** (993) e **SMTP Submission** (587), e que os volumes sejam mapeados corretamente para um armazenamento de dados persistente. Além disso, recursos de segurança como **Fail2Ban** e **Let’s Encrypt SSL** estão ativados.

Nota Nos [manuais oficiais do *docker-mailserver* no GitHub](https://docker-mailserver.github.io/docker-mailserver/edge/config/environment/ "docker-mailserver: Opções de configuração"), você encontra uma lista detalhada de configurações possíveis para o servidor de e-mail.

### Passo 3: Liberar as portas

No arquivo `docker-compose.yml`, três portas (*25*, *465* e *587*) estarão especificadas. Essas são as portas convencionais de um servidor SMTP. Elas também devem ser abertas no firewall do seu servidor para garantir um tráfego de e-mail tranquilo.

Se estiver usando o serviço de hospedagem da IONOS, faça isso com toda facilidade, pelo Cloud Panel:

1. Faça login com seus dados de acesso na [página de login do Cloud Panel](https://login.ionos.com/ "IONOS Cloud Panel: Login").
2. Vá para a seção **“Server &amp; Cloud”**.
3. Selecione o hardware do servidor no qual você deseja criar um servidor de e-mail.
4. No menu à esquerda, clique em **“Network”** &gt; **“Firewall Policies”**.
5. Insira as três portas TCP *25*, *465* e *587* por meio do botão **“Add Rule”**.

[![Imagem: IONOS Cloud Panel: Adicionar regra de firewall](https://www.ionos.com/pt-br/digitalguide/fileadmin/_processed_/7/7/csm_ionos-cloud-panel-add-firewall-rule_25f3059b8c.webp "IONOS Cloud Panel: Adicionar regra de firewall")](https://www.ionos.com/pt-br/digitalguide/fileadmin/DigitalGuide/Screenshots_2022/ionos-cloud-panel-add-firewall-rule.jpg) IONOS Cloud Panel: Adicionar regra de firewall ### Passo 4: Configurar DNS

O passo seguinte é garantir que o serviço DNS do seu domínio esteja configurado corretamente:

- **Registro MX:** Aponta para o servidor de e-mail (por exemplo, `mail.exemplo.com`) que você definiu nos campos `hostname` e `domainname` do seu arquivo `docker-compose.yml`.
- **Registro SPF:** Um registro do tipo TXT para o domínio (e não para o hostname), por exemplo: `v=spf1 mx ~all`.

Nota `~all` significa “Softfail”, mas alternativamente você pode usar `-all`, se preferir uma política mais rígida.

#### Configurar DNS no Painel de Controle da IONOS

1. [Acesse o Cloud Panel da IONOS](https://login.ionos.com/ "IONOS Cloud Panel: Login").
2. Vá até **“Domínios e SSL.”**
3. Encontre seu domínio e clique no ícone de configurações.
4. Selecione **“DNS.”**
5. Adicione os seguintes registros:
- **Registro MX:** Destino = `mail.exemplo.com`, Prioridade = 10
- **Registro TXT:** Tipo = TXT, Valor = `v=spf1 mx ~all`

[![Imagem: IONOS Cloud Panel: Adicionar registro DNS](https://www.ionos.com/pt-br/digitalguide/fileadmin/_processed_/3/1/csm_dns-set-up_def12db590.webp "IONOS Cloud Panel: Adicionar registro DNS")](https://www.ionos.com/pt-br/digitalguide/fileadmin/DigitalGuide/Screenshots_2025/dns-set-up.jpg) IONOS Cloud Panel: Adicionar registro DNS Em seguida, clique em **“Reset domain”** no menu superior, para aplicar as alterações. Confirme as alterações e clique em **“Reset now”** – isso afetará somente os registros DNS atualizados, não o domínio em si.

Dica Quer arquivar seus e-mails comerciais com segurança? Com o [IONOS Email Archiving](https://www.ionos.com/office-solutions/email-archiving "Email archiving - IONOS"), você pode arquivar automaticamente as caixas de correio selecionadas em formato inviolável.

### Passo 5: Gerar chaves DKIM

Para **aumentar a segurança** do seu servidor de e-mail, agora você deve gerar um registro [DKIM](https://www.ionos.com/pt-br/digitalguide/e-mail/seguranca-de-e-mail/dkim-domainkeys-identified-mail/ "DKIM: Domain Keys") para o seu domínio. Essa técnica de criptografia poderá ser usada depois para assinar mensagens digitalmente.

Use o script `setup.sh` fornecido pelo diretório `docker-mailserver`:

```none
./setup.sh config dkim
```

A chave pública gerada será salva no arquivo abaixo se o volume tiver sido montado corretamente:

```swift 
docker-data/dms/config/opendkim/keys/example.com/mail.txt 
```

Abra o arquivo e copie seu conteúdo para criar um registro TXT nas configurações de DNS do seu domínio. O registro DNS pode ter a seguinte aparência:

```java 
mail._domainkey.example.com. IN TXT (  
  "v=DKIM1; h=sha256; k=rsa; "  
  "p=MIIBIjANBgkqhkiG9w0BAQEFAAOC...continuedPublicKey...IDAQAB"  
) 
```

- **mail é o seletor** e pode ter qualquer nome que você preferir (por exemplo: default, key2025, etc.).
- Se o seu provedor de DNS limitar o comprimento a 255 caracteres por string, será necessário dividir a chave (como mostrado no exemplo).
- Certifique-se de que o tipo do registro seja **TXT** e que ele se aplique ao domínio completo: `mail._domainkey.exemplo.com`.

Nota Além do DKIM, é fundamental configurar também os registros SPF e DMARC para garantir uma proteção completa contra falsificação de e-mails (*spoofing*).

### Passo 6: Iniciar servidor e criar o primeiro endereço

Inicie o servidor de e-mail configurado diretamente pelo diretório do projeto com o seguinte comando:

```bash
docker-compose up -d
```

Essas instruções ajudarão você a configurar, de forma segura e eficiente, tanto ambientes modernos baseados em contêineres quanto servidores de e-mail tradicionais.


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/e-mail/tecnologia-de-e-mail/criar-servidor-de-e-mail/](https://www.ionos.com/pt-br/digitalguide/e-mail/tecnologia-de-e-mail/criar-servidor-de-e-mail/) for AI/LLM consumption.