Definições básicas de segurança
Antes de analisarmos as medidas de segurança avançadas, devemos certificar-nos de que as definições básicas estão corretas. Isso inclui restringir o acesso ao servidor Postfix. No ficheiro /etc/postfix/main.cf
deve acrescentar ou ajustar as seguintes linhas:
inet_interfaces = loopback-only mynetworks = 127.0.0.0/8 [::1]/128
Estas definições restringem o acesso ao anfitrião local e impedem que o servidor seja utilizado indevidamente como um retransmissor aberto. Uma retransmissão aberta pode ser utilizada por spammers para enviar mensagens de correio eletrónico indesejadas, o que pode prejudicar gravemente a reputação do seu servidor. Por conseguinte, é crucial efetuar esta proteção básica.
Ativar a encriptação TLS
A utilização de TLS (Transport Layer Security) é essencial para garantir a confidencialidade da comunicação por correio eletrónico. Adicione as seguintes linhas ao ficheiro 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
Estas definições activam o TLS para ligações de entrada e de saída. Certifique-se de que utiliza certificados SSL válidos, idealmente de uma autoridade de certificação (CA) fiável. Um TLS corretamente implementado protege os seus e-mails de interceçã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 estas linhas ao ficheiro main.cf
acrescentado:
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 está a utilizar o Dovecot como o seu fornecedor SASL. Ajuste as definições em conformidade se estiver a utilizar um fornecedor diferente. A autenticação SASL impede que utilizadores não autorizados enviem e-mails através do seu servidor, o que aumenta significativamente a segurança.
Proteção contra ataques de negação de serviço
Para proteger o seu servidor de sobrecargas, pode definir limites de ligação. Adicione essas linhas ao arquivo main.cf
acrescentado:
smtpd_client_connection_rate_limit = 50 smtpd_client_message_rate_limit = 100 anvil_rate_time_unit = 60s
Estas definições limitam o número de ligações e mensagens que um cliente pode enviar por minuto. Ao limitar este número, pode evitar que o seu servidor seja sobrecarregado por pedidos em massa ou mensagens de correio eletrónico não solicitado. Este é um passo importante para garantir a disponibilidade do seu servidor de correio eletrónico.
Implementar restrições HELO/EHLO
Muitos remetentes de spam utilizam nomes de anfitrião HELO/EHLO inválidos ou falsificados. Pode bloquear essas ligações com as seguintes definições:
smtpd_helo_required = sim smtpd_helo_restrictions = permit_mynetworks, reject_invalid_helo_hostname, reject_non_fqdn_helo_hostname
Estas regras exigem um nome de anfitrião HELO/EHLO válido e rejeitam ligações com nomes de domínio inválidos ou incompletamente qualificados. Isto torna mais difícil para os remetentes de spam enviar e-mails falsos, uma vez que têm de fornecer informações HELO/EHLO corretas.
Introduzir restrições para os emissores
Para evitar a utilização indevida do seu servidor, pode definir restrições para os remetentes:
smtpd_sender_restrictions = permitir_redes, reject_non_fqdn_sender, reject_unknown_sender_domain, reject_unauth_pipelining
Estas regras rejeitam mensagens de correio eletrónico provenientes de endereços de remetente com qualificações incompletas ou de domínios de remetente desconhecidos. Isto reduz a probabilidade de o seu servidor ser utilizado para spam ou phishing e, ao mesmo tempo, melhora a qualidade geral das mensagens de correio eletrónico recebidas.
Configurar restrições de destinatários
À semelhança das restrições do remetente, também é possível definir regras para os destinatários:
smtpd_recipient_restrictions = permitir_redes, reject_unauth_destination, reject_non_fqdn_recipient, reject_unknown_recipient_domain
Estas definições impedem que o seu servidor seja utilizado indevidamente como retransmissor para destinos não autorizados e rejeitam mensagens de correio eletrónico para endereços de destinatários inválidos. Isto aumenta ainda mais a segurança do seu servidor e, ao mesmo tempo, garante a integridade da comunicação por correio eletrónico.
Implementar greylisting
Greylisting é um método eficaz para reduzir o spam. Primeiro, instale o pacote Postgrey:
sudo apt install postgrey
Em seguida, adicione a seguinte linha ao ficheiro main.cf
acrescentado:
smtpd_recipient_restrictions = ... (definições existentes) check_policy_service unix:private/postgrey
Esta configuração encaminha primeiro os emails recebidos para o serviço Postgrey, que gera rejeições temporárias para remetentes desconhecidos. Os servidores de correio eletrónico que enviam correio eletrónico legítimo tentam novamente a entrega após um atraso, eliminando eficazmente os remetentes de spam que, frequentemente, apenas tentam enviar uma vez.
Ativar a verificação SPF
O Sender Policy Framework (SPF) ajuda a evitar a falsificação de correio eletrónico. Primeiro, instale o pacote necessário:
sudo apt install postfix-policyd-spf-python
Em seguida, adicione estas linhas ao ficheiro main.cf
acrescentado:
policyd-spf_time_limit = 3600s smtpd_recipient_restrictions = ... (definições existentes) check_policy_service unix:private/policyd-spf
Esta configuração ativa a verificação SPF para as mensagens de correio eletrónico recebidas. O SPF verifica se o correio eletrónico foi enviado de um servidor autorizado para o domínio especificado, o que ajuda a evitar falsificações e a aumentar a credibilidade da sua comunicação por correio eletrónico.
Implementar a assinatura DKIM
O DomainKeys Identified Mail (DKIM) 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
acrescentado:
milter_protocol = 2 milter_default_action = accept smtpd_milters = unix:/var/run/opendkim/opendkim.sock non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock
Estas definições activam a assinatura DKIM para os e-mails de saída. O DKIM aumenta a segurança ao garantir que os e-mails não foram 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) baseia-se no SPF e no DKIM. Adicione uma entrada DNS DMARC para o seu domínio e instale o OpenDMARC:
sudo apt install opendmarc
Configure o OpenDMARC e adicione esta linha ao main.cf
acrescentado:
smtpd_milters = ... (definições existentes), inet:localhost:8893
Esta 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 a forma como os servidores receptores devem lidar com verificações SPF ou DKIM falhadas e fornece relatórios detalhados sobre a autenticação de correio eletrónico.
Actualizações e acompanhamento regulares
A segurança é um processo contínuo. Certifique-se de que actualiza regularmente o seu sistema Postfix:
sudo apt update sudo apt upgrade
Monitorize também os registos do Postfix para detetar actividades suspeitas:
tail -f /var/log/mail.log
As actualizações regulares colmatam as falhas de segurança conhecidas e melhoram a estabilidade do seu servidor de correio. A monitorização contínua dos registos permite-lhe reconhecer actividades invulgares numa fase inicial e reagir rapidamente.
Medidas de segurança adicionais
Para além das medidas de segurança básicas e avançadas, existem passos adicionais que pode tomar para aumentar ainda mais a segurança do seu servidor Postfix:
Configuração da firewall
Certifique-se de que a sua firewall abriu apenas as portas necessárias para o servidor de correio eletrónico. Normalmente, estas são a porta 25 (SMTP), a porta 587 (envio) e a porta 993 (IMAP via SSL). Utilize ferramentas como ufw
ou iptables
para controlar o acesso a estas portas e bloquear ligações indesejadas.
Sistemas de deteção de intrusão (IDS)
Implementar um sistema de deteção de intrusão, como Fail2Ban
para detetar repetidas tentativas de início de sessão falhadas e bloquear automaticamente endereços IP que apresentem um comportamento suspeito. Isto reduz o risco de ataques de força bruta ao seu servidor de correio eletrónico.
Cópias de segurança e restauro
Efectue regularmente cópias de segurança dos seus ficheiros de configuração e dados importantes. Na eventualidade de um incidente de segurança, pode restaurar rapidamente e minimizar as interrupções de serviço. Guarde as cópias de segurança num local seguro e verifique regularmente a integridade dos dados de cópia de segurança.
Gestão de utilizadores e direitos
Faça uma gestão cuidadosa das contas de utilizador e atribua apenas os direitos necessários. Utilize palavras-passe fortes e considere a possibilidade de implementar a autenticação multifactor (MFA) para proteger ainda mais o acesso ao servidor de correio.
Melhores práticas 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:
- Verificar regularmente a configuração: Verificar regularmente o seu
main.cf
e outros ficheiros de configuração para garantir que todas as medidas de segurança são implementadas corretamente. - Análise de registos: Utilize ferramentas para analisar automaticamente os seus registos de correio para identificar rapidamente anomalias e potenciais incidentes de segurança.
- Actualizações de software: Actualize regularmente não só o Postfix, mas também todos os componentes dependentes, como o Dovecot, o OpenDKIM e o OpenDMARC.
- Monitorização e alertas: Implemente um sistema de monitorização que o notifique de actividades invulgares ou mensagens de erro.
Evitar 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 o seu servidor não está configurado como uma retransmissão aberta, definindo o parâmetro
inet_interfaces
eminhas redes
-configurações corretamente. - Certificados TLS inválidos: Utilize sempre certificados SSL válidos e actualizados para utilizar eficazmente a encriptação TLS.
- Falta de autenticação: Active a autenticação SASL para evitar a utilização indevida do seu servidor.
- Limites de taxa insuficientes: Definir limites de ligação adequados para evitar ataques de negação de serviço.
- Falta de SPF/DKIM/DMARC: Implemente métodos abrangentes de autenticação de correio eletrónico para garantir a integridade e a autenticidade das suas mensagens.
Resumo
A configuração do Postfix para máxima segurança requer um planeamento cuidadoso e uma manutenção regular. Ao implementar as medidas descritas neste artigo, pode melhorar significativamente a segurança do seu servidor de correio eletrónico. 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 educar e manter-se 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 fiáveis no domínio da segurança do correio eletrónico.