Configuração do Postfix para segurança máxima: um guia abrangente

Configurações básicas de segurança

Antes de examinarmos as medidas de segurança avançadas, devemos nos certificar de que as configurações básicas estejam corretas. Isso inclui restringir o acesso ao servidor Postfix. No arquivo /etc/postfix/main.cf você deve adicionar ou ajustar as seguintes linhas:

inet_interfaces = loopback-only
mynetworks = 127.0.0.0/8 [::1]/128

Essas configurações restringem o acesso ao host local e impedem que o servidor seja usado indevidamente como um relé aberto. Um relé aberto pode ser usado por spammers para enviar e-mails indesejados, o que pode prejudicar gravemente a reputação do seu servidor. Portanto, é fundamental realizar essa proteção básica.

Ativar a criptografia TLS

O uso do TLS (Transport Layer Security) é essencial para garantir a confidencialidade da comunicação por e-mail. Adicione as seguintes linhas ao arquivo main.cf-arquivo:

smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_security_level = may
smtp_tls_security_level = may

Essas configurações ativam o TLS para conexões de entrada e saída. Certifique-se de usar certificados SSL válidos, de preferência de uma autoridade de certificação (CA) confiável. Um TLS implementado corretamente protege seus e-mails contra interceptação e manipulação durante a transmissão. Mais informações sobre a configuração do TLS podem ser encontradas na [documentação do Postfix] oficial (https://www.postfix.org/TLS_README.html).

Configurar a autenticação SASL

O Simple Authentication and Security Layer (SASL) fornece uma camada adicional de segurança. Adicione essas linhas ao arquivo main.cf adicionado:

smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname

Esta configuração pressupõe que você esteja usando o Dovecot como provedor SASL. Ajuste as configurações de acordo se estiver usando um provedor diferente. A autenticação SASL impede que usuários não autorizados enviem e-mails pelo seu servidor, o que aumenta significativamente a segurança.

Proteção contra ataques de negação de serviço

Para proteger seu servidor contra sobrecarga, você pode definir limites de conexão. Adicione essas linhas à seção main.cf adicionado:

smtpd_client_connection_rate_limit = 50
smtpd_client_message_rate_limit = 100
anvil_rate_time_unit = 60s

Essas configurações limitam o número de conexões e mensagens que um cliente pode enviar por minuto. Ao limitar isso, você pode evitar que seu servidor seja sobrecarregado por solicitações em massa ou e-mails de spam. Essa é uma etapa importante para garantir a disponibilidade do seu servidor de e-mail.

Implementar restrições HELO/EHLO

Muitos remetentes de spam usam nomes de host HELO/EHLO inválidos ou falsificados. Você pode bloquear essas conexões com as seguintes configurações:

smtpd_helo_required = yes
smtpd_helo_restrictions =
 permit_mynetworks,
 reject_invalid_helo_hostname,
 reject_non_fqdn_helo_hostname

Essas regras exigem um nome de host HELO/EHLO válido e rejeitam conexões com nomes de domínio inválidos ou incompletamente qualificados. Isso dificulta o envio de e-mails falsos por spammers, pois eles precisam fornecer informações corretas de HELO/EHLO.

Introduzir restrições ao transmissor

Para evitar o uso indevido do seu servidor, você pode definir restrições para os remetentes:

smtpd_sender_restrictions =
 permit_mynetworks,
 reject_non_fqdn_sender,
 reject_unknown_sender_domain,
 reject_unauth_pipelining

Essas regras rejeitam e-mails de endereços de remetentes com qualificação incompleta ou de domínios de remetentes desconhecidos. Isso reduz a probabilidade de seu servidor ser usado para spam ou phishing e, ao mesmo tempo, melhora a qualidade geral dos e-mails recebidos.

Configurar restrições de destinatários

Da mesma forma que as restrições do remetente, você também pode definir regras para os destinatários:

smtpd_recipient_restrictions =
 permit_mynetworks,
 reject_unauth_destination,
 reject_non_fqdn_recipient,
 reject_unknown_recipient_domain

Essas configurações impedem que seu servidor seja usado indevidamente como retransmissor para destinos não autorizados e rejeitam e-mails para endereços de destinatários inválidos. Isso aumenta ainda mais a segurança de seu servidor e, ao mesmo tempo, garante a integridade da comunicação por e-mail.

Implementar greylisting

A lista cinza é um método eficaz para reduzir o spam. Primeiro, instale o pacote Postgrey:

sudo apt install postgrey

Em seguida, adicione a seguinte linha ao arquivo main.cf adicionado:

smtpd_recipient_restrictions =
 ... (configurações existentes)
 check_policy_service unix:private/postgrey

Essa configuração primeiro encaminha os e-mails recebidos para o serviço Postgrey, que gera rejeições temporárias para remetentes desconhecidos. Os servidores de e-mail que enviam e-mails legítimos tentam novamente a entrega após um atraso, eliminando efetivamente os remetentes de spam que geralmente tentam enviar apenas uma vez.

Ativar verificação de SPF

O Sender Policy Framework (SPF) ajuda a evitar a falsificação de e-mails. Primeiro, instale o pacote necessário:

sudo apt install postfix-policyd-spf-python

Em seguida, adicione essas linhas ao arquivo main.cf adicionado:

policyd-spf_time_limit = 3600s
smtpd_recipient_restrictions =
 ... (configurações existentes)
 check_policy_service unix:private/policyd-spf

Essa configuração ativa a verificação SPF para e-mails recebidos. O SPF verifica se o e-mail foi enviado de um servidor autorizado para o domínio especificado, o que ajuda a evitar falsificações e aumenta a credibilidade de sua comunicação por e-mail.

Implementar assinatura DKIM

O DKIM (DomainKeys Identified Mail) adiciona uma assinatura digital aos e-mails enviados. Primeiro, instale o OpenDKIM:

sudo apt install opendkim opendkim-tools

Em seguida, configure o OpenDKIM e adicione estas linhas ao arquivo main.cf adicionado:

milter_protocol = 2
milter_default_action = accept
smtpd_milters = unix:/var/run/opendkim/opendkim.sock
non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock

Essas configurações ativam a assinatura DKIM para e-mails de saída. O DKIM aumenta a segurança ao garantir que os e-mails não tenham sido alterados sem serem notados e reforça a confiança na autenticidade das mensagens.

Configurar diretrizes DMARC

O DMARC (Domain-based Message Authentication, Reporting and Conformance) é baseado em SPF e DKIM. Adicione uma entrada DNS DMARC para seu domínio e instale o OpenDMARC:

sudo apt install opendmarc

Configure o OpenDMARC e adicione esta linha ao arquivo main.cf adicionado:

smtpd_milters = ... (configurações existentes), inet:localhost:8893

Essa configuração ativa a verificação DMARC para e-mails recebidos. O DMARC permite que os proprietários de domínios definam políticas sobre como os servidores de recebimento devem lidar com verificações SPF ou DKIM com falha e fornece relatórios detalhados sobre autenticação de e-mail.

Atualizações e monitoramento regulares

A segurança é um processo contínuo. Certifique-se de atualizar seu sistema Postfix regularmente:

sudo apt update
sudo apt upgrade

Monitore também os logs do Postfix em busca de atividades suspeitas:

tail -f /var/log/mail.log

As atualizações regulares fecham as lacunas de segurança conhecidas e melhoram a estabilidade do seu servidor de e-mail. O monitoramento contínuo dos registros permite que você reconheça atividades incomuns em um estágio inicial e reaja a elas rapidamente.

Medidas de segurança adicionais

Além das medidas de segurança básicas e avançadas, há outras medidas que você pode adotar para aumentar ainda mais a segurança do seu servidor Postfix:

Configuração do firewall

Certifique-se de que o firewall tenha aberto apenas as portas necessárias para o servidor de e-mail. Normalmente, são a porta 25 (SMTP), a porta 587 (envio) e a porta 993 (IMAP via SSL). Use ferramentas como ufw ou iptablespara controlar o acesso a essas portas e bloquear conexões indesejadas.

Sistemas de detecção de intrusão (IDS)

Implementar um sistema de detecção de intrusão, como Fail2Banpara detectar tentativas repetidas de login com falha e bloquear automaticamente endereços IP que apresentem comportamento suspeito. Isso reduz o risco de ataques de força bruta em seu servidor de e-mail.

Backups e restauração

Faça backups regulares de seus arquivos de configuração e dados importantes. No caso de um incidente de segurança, você poderá restaurar rapidamente e minimizar as interrupções de serviço. Armazene os backups em um local seguro e verifique regularmente a integridade dos dados de backup.

Gerenciamento de usuários e direitos

Gerencie as contas de usuário com cuidado e atribua apenas os direitos necessários. Use senhas fortes e considere implementar a autenticação multifatorial (MFA) para proteger ainda mais o acesso ao servidor de e-mail.

Práticas recomendadas para a manutenção do Postfix

A manutenção contínua do seu servidor Postfix é fundamental para manter a segurança e o desempenho. Aqui estão algumas práticas recomendadas:


  • Verifique regularmente a configuração: Verifique regularmente seu main.cf e outros arquivos de configuração para garantir que todas as medidas de segurança sejam implementadas corretamente.

  • Análise de registro: Use ferramentas para analisar automaticamente seus registros de correio para identificar rapidamente anomalias e possíveis incidentes de segurança.

  • Atualizações de software: Atualize regularmente não apenas o Postfix, mas também todos os componentes dependentes, como Dovecot, OpenDKIM e OpenDMARC.

  • Monitoramento e alertas: Implemente um sistema de monitoramento que o notifique sobre atividades incomuns ou mensagens de erro.

Evite erros comuns na configuração do Postfix

Ao configurar o Postfix para maximizar a segurança, há erros comuns que devem ser evitados:


  • Relé aberto: Certifique-se de que seu servidor não esteja configurado como um relé aberto, definindo o parâmetro inet_interfaces e mynetworks-configurações corretamente.

  • Certificados TLS inválidos: Sempre use certificados SSL válidos e atualizados para utilizar a criptografia TLS de forma eficaz.

  • Falta de autenticação: Ative a autenticação SASL para evitar o uso indevido de seu servidor.

  • Limites de taxa insuficientes: Defina limites de conexão adequados para evitar ataques de negação de serviço.

  • Falta de SPF/DKIM/DMARC: Implemente métodos abrangentes de autenticação de e-mail para garantir a integridade e a autenticidade de seus e-mails.

Resumo

A configuração do Postfix para obter o máximo de segurança requer planejamento cuidadoso e manutenção regular. Ao implementar as medidas descritas neste artigo, você pode aumentar significativamente a segurança do seu servidor de e-mail. Lembre-se de que a segurança é um processo contínuo. Mantenha-se atualizado sobre novas ameaças e práticas recomendadas para manter seu servidor Postfix protegido. Aproveite os recursos e as comunidades disponíveis para se instruir e se manter na vanguarda da tecnologia.

Para obter mais informações e instruções detalhadas, visite a [documentação do Postfix] oficial (https://www.postfix.org/documentation.html) e outras fontes confiáveis no campo da segurança de e-mail.

Artigos atuais