11 min de leitura · Guia técnico
Para configurar um servidor de email no Ubuntu 24.04, instale e configure o Postfix para SMTP e o Dovecot para IMAP, garantindo segurança com SSL/TLS. Este guia prático inclui passos detalhados para criar um sistema de email funcional.
- Instalar e configurar o Postfix como servidor SMTP
- Instalar e configurar o Dovecot para IMAP
- Criar usuários de email no sistema
- Configurar autenticação SASL
- Implementar SSL/TLS para segurança
- Testar o funcionamento completo
Pré-requisitos
- Servidor Ubuntu 24.04 LTS com acesso root
- Domínio configurado com registros MX apontando para o servidor
- Portas 25, 587, 143 e 993 liberadas no firewall
- Certificado SSL válido (Let's Encrypt ou comercial)
- Conhecimento básico de linha de comando Linux
Instalando e configurando o Postfix para SMTP
O Postfix é o servidor SMTP mais utilizado em sistemas Linux para gerenciar o envio de emails. Inicie a instalação atualizando o sistema e instalando os pacotes necessários:
sudo apt update && sudo apt upgrade -y
sudo apt install postfix dovecot-core dovecot-imapd dovecot-lmtpd -y
Durante a instalação do Postfix, selecione "Internet Site" e configure o nome do domínio principal. Após a instalação, edite o arquivo de configuração principal:
sudo nano /etc/postfix/main.cf
Adicione ou modifique as seguintes configurações essenciais:
myhostname = mail.seudominio.com
mydomain = seudominio.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
home_mailbox = Maildir/
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination
Configure o arquivo master.cf para habilitar a porta 587 com autenticação:
sudo nano /etc/postfix/master.cf
Descomente e configure a linha submission:
submission inet n - y - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_reject_unlisted_recipient=no
Configurando o Dovecot para IMAP
O Dovecot fornece acesso IMAP aos emails armazenados no servidor. Configure primeiro o arquivo principal de autenticação:
sudo nano /etc/dovecot/dovecot.conf
Adicione ou modifique estas configurações:
protocols = imap lmtp
listen = *, ::
base_dir = /var/run/dovecot/
instance_name = dovecot
Configure a autenticação editando o arquivo auth.conf:
sudo nano /etc/dovecot/conf.d/10-auth.conf
Modifique as seguintes linhas:
disable_plaintext_auth = yes
auth_mechanisms = plain login
!include auth-system.conf.ext
Configure o armazenamento de emails no arquivo mail.conf:
sudo nano /etc/dovecot/conf.d/10-mail.conf
Defina o formato Maildir:
mail_location = maildir:~/Maildir
namespace inbox {
inbox = yes
}
mail_privileged_group = mail
Criando usuários de email e configurando autenticação
Para criar usuários de email funcionais, adicione usuários do sistema que servirão como contas de email. Cada usuário terá acesso tanto ao SMTP quanto ao IMAP:
sudo adduser usuario1
sudo passwd usuario1
sudo adduser usuario2
sudo passwd usuario2
Configure o Dovecot para integrar com a autenticação do Postfix editando o arquivo de serviços:
sudo nano /etc/dovecot/conf.d/10-master.conf
Configure o serviço de autenticação:
service auth {
unix_listener /var/spool/postfix/private/auth {
mode = 0666
user = postfix
group = postfix
}
}
Configure também o serviço LMTP para entrega local:
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
mode = 0600
user = postfix
group = postfix
}
}
Adicione a configuração LMTP no Postfix editando novamente o main.cf:
sudo nano /etc/postfix/main.cf
Adicione estas linhas ao final:
mailbox_transport = lmtp:unix:private/dovecot-lmtp
smtpd_sasl_local_domain = $myhostname
Implementando SSL/TLS para conexões seguras
A configuração SSL/TLS é essencial para proteger as credenciais e conteúdo dos emails. Configure primeiro o Postfix para usar certificados SSL:
sudo nano /etc/postfix/main.cf
Adicione as configurações TLS:
smtpd_tls_cert_file = /etc/ssl/certs/mail.crt
smtpd_tls_key_file = /etc/ssl/private/mail.key
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtpd_tls_security_level = may
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
Configure o SSL no Dovecot editando o arquivo de SSL:
sudo nano /etc/dovecot/conf.d/10-ssl.conf
Configure os certificados e protocolos:
ssl = required
ssl_cert =
Se você não possui certificados SSL, pode gerar certificados autoassinados para testes:
sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/mail.crt -keyout /etc/ssl/private/mail.key
Configurando firewall e reiniciando serviços
Configure o firewall UFW para permitir as portas necessárias do servidor de email:
sudo ufw allow 25/tcp
sudo ufw allow 587/tcp
sudo ufw allow 143/tcp
sudo ufw allow 993/tcp
Reinicie todos os serviços para aplicar as configurações:
sudo systemctl restart postfix
sudo systemctl restart dovecot
sudo systemctl enable postfix
sudo systemctl enable dovecot
Verifique se os serviços estão rodando corretamente:
sudo systemctl status postfix
sudo systemctl status dovecot
Output esperado para serviços ativos:
● postfix.service - Postfix Mail Transport Agent
Loaded: loaded (/lib/systemd/system/postfix.service; enabled; vendor preset: enabled)
Active: active (exited) since Mon 2024-01-15 10:30:45 UTC; 2min ago
Testando o funcionamento do servidor SMTP e IMAP
Para verificar se o servidor SMTP está funcionando, teste a conexão usando telnet na porta 587:
telnet localhost 587
Você deve ver uma resposta similar a:
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 mail.seudominio.com ESMTP Postfix
Teste o IMAP conectando na porta 143:
telnet localhost 143
Output esperado do IMAP:
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS AUTH=PLAIN AUTH=LOGIN] Dovecot ready.
Para testar o envio de email, use a ferramenta swaks se disponível:
sudo apt install swaks -y
swaks --to [email protected] --from [email protected] --server localhost --port 587 --auth-user usuario1 --auth-password senha_do_usuario
Monitore os logs para verificar se não há erros:
sudo tail -f /var/log/mail.log
Problemas comuns e como resolver
Erro: "SASL authentication failure" no Postfix
Causa: Configuração incorreta da integração entre Postfix e Dovecot ou permissões inadequadas no socket de autenticação.
Solução: Verifique se o arquivo /var/spool/postfix/private/auth existe e tem as permissões corretas. Reinicie ambos os serviços e confirme que o usuário postfix pode acessar o socket do Dovecot.
Conexão IMAP recusada na porta 993
Causa: Certificado SSL inválido ou configuração TLS incorreta no Dovecot.
Solução: Verifique se os caminhos dos certificados estão corretos no arquivo 10-ssl.conf e se os arquivos existem. Para testes, desabilite temporariamente o SSL obrigatório alterando "ssl = required" para "ssl = yes".
Emails não são entregues localmente
Causa: Configuração incorreta do LMTP ou diretório Maildir não criado automaticamente.
Solução: Verifique se o serviço LMTP está configurado corretamente no Dovecot e se o Postfix está usando o transporte LMTP. Crie manualmente o diretório Maildir para o usuário: "sudo -u usuario1 mkdir -p /home/usuario1/Maildir".
Perguntas frequentes sobre configuração de servidor SMTP e IMAP
Qual a diferença entre SMTP e IMAP no servidor de email?
SMTP (Simple Mail Transfer Protocol) é responsável pelo envio de emails entre servidores, enquanto IMAP (Internet Message Access Protocol) permite que clientes de email acessem e sincronizem mensagens armazenadas no servidor. O SMTP funciona na porta 25/587 e o IMAP na porta 143/993.
É possível configurar SSL/TLS no servidor de email Ubuntu?
Sim, é essencial configurar SSL/TLS para criptografar as conexões de email. O Postfix suporta TLS para SMTP na porta 587, enquanto o Dovecot oferece IMAPS na porta 993. Você pode usar certificados Let's Encrypt ou certificados autoassinados para desenvolvimento.
Como testar se o servidor SMTP está funcionando corretamente?
Você pode testar o SMTP usando telnet na porta 25 ou 587, ou ferramentas como swaks. Para verificar logs, use 'tail -f /var/log/mail.log'. Teste também o envio via cliente de email configurando SMTP manual com as credenciais criadas.
Quais portas devo liberar no firewall para servidor de email?
Para funcionamento completo, libere as portas 25 (SMTP), 587 (SMTP com autenticação), 143 (IMAP) e 993 (IMAPS seguro). Use 'ufw allow 25,587,143,993/tcp' no Ubuntu. A porta 25 pode estar bloqueada por alguns provedores para prevenir spam.
Como criar usuários de email no servidor Postfix e Dovecot?
Os usuários de email são criados como usuários do sistema Linux usando 'adduser'. Configure o Dovecot para autenticar contra /etc/passwd e defina o diretório de emails em /home/usuario/Maildir. Cada usuário terá login próprio para SMTP e IMAP.
Conclusão
- Configure sempre SSL/TLS em produção para proteger credenciais e conteúdo dos emails
- Monitore regularmente os logs em /var/log/mail.log para identificar problemas de entrega
- Implemente políticas anti-spam e configure adequadamente os registros DNS MX e SPF
Leia também
- Checklist Completo para Configurar e Testar o Firewall UFW em VPS Linux e Servidores Dedicados
- Lista Prática: 5 Vantagens de ter SSL gratuito no seu site
- Como Instalar e Configurar o Certbot para SSL Gratuito no Ubuntu
Precisa de ajuda com servidor de email profissional?
A AviraHost oferece servidores VPS otimizados para hospedagem de email corporativo com suporte técnico especializado. Nossa equipe pode auxiliar na configuração completa do seu ambiente de email.