O SPF basicamente serve para dizer aos servidores de email espalhados pela Internet quais enderecos IP/servidores estao autorizados a enviar email (remetente) com o dominio designado.
Assim, eu, como administrador do dominio exemplo.com.br, publicarei um registro SPF dizendo que os servidores 201.100.100.200 e 201.100.100.201 estao autorizados a enviar emails com remetentes @exemplo.com.br; quaisquer outros servidores tentando enviar emails como @exemplo.com.br são falsos, e tais emails devem ser rejeitados pelos MTA`s que tiverem o SPF implementado.
Trocando em miudos:
Quando alguém tentar manda um e-mail passando-se por um domínio, meu servidor Qmail vai verificar se o ip de origem tem a autorização de enviar e-mails desse domínio, caso não tenha, ele rejeita. Isso diminue muito os spams.
Mão na massa!
teremos apenas 2 passos para implementar o SPF
- configurar o servidor de DNS
- configurar o Qmail
Como já havia citado em outros posts é extreamente recomedável que você tenha um servidor de DNS em sua estrutura, você terá ganhos significativos em relação a performance. Caso seja o bind seu servidor adicione uma entrada do tipo TXT informando quais são os servidores que podem enviar e-mails desse domínio:
@ IN TXT "v=spf1 mx -all"
A sintaxe acima diz que apenas os servidores listados como MX do dominio estao autorizados a mandar email em nome do próprio, e que o registro é a "autoridade final" (-all), quer dizer, pode-se rejeitar a mensagem se não sair de algum MX do dominio. Para consultar digite:
host -t txt exemplo.com.br ou entre no nslookup, digite set type=txt e depois digite o domínio exemplo.com.br. Ambos os comandos tem o mesmo efeito!
Configurando o QMAIL:
Como tudo no Qmail é um patch, este não poderia ser diferente. Não vou abordar aqui como aplicar patchs no Qmail tendo em vista que existem milhares de documentações sobre isso.
1 - Faça o download do patch, aplique e compile :
Site -- http://www.saout.de/misc/spf/qmail-spf-rc5.patch
Pronto!
Vamos agora criar os arquivos de configuração na pasta control do Qmail, eu geralmente uso a pasta /var/qmail/control.
spfbehavior
Este arquivo é usado para habilitar o SPF, por default o valor é 0 (desabilitado), onde os valores vão de 0-6 conforme tabela:
echo "3" > /var/qmail/control/spfbehavior
0: Never do SPF lookups, don't create Received-SPF headers
1: Only create Received-SPF headers, never block
2: Use temporary errors when you have DNS lookup problems
3: Reject mails when SPF resolves to fail (deny)
4: Reject mails when SPF resolves to softfail
5: Reject mails when SPF resolves to neutral
6: Reject mails when SPF does not resolve to pass
Esse arquivo é o mais importante para o SPF funcionar tem que estar devidamente criado e com um valor dentro. Valores maiores que 3 são desaconselháveis.
spfrules
Você pode criar uma linha com regras locais de uma forma parecida com uma "whitelist", exemplo:
ip4:192.0.0.1/24 #Rede local
spfguess
São as regras para os e-mails de domínios que não publicam regras SPF no DNS, exemplo:
v=spf1 a/24 mx/24 ptr ?all
spfexp
É apenas o text que vai aparecer para o usuário caso o e-mail seja rejeitado:
550 the expanded SPF explanation (#5.7.1)
Pronto!
Você já tem um servidor de e-mail com o SPF implementado. ;)
Leituras recomendadas:
http://wiki.qmailtoaster.com
http://www.unitednerds.org/thefallen/docs/index.php?area=Postfix&tuto=SPF
http://www.openspf.org/
http://www.saout.de/misc/spf/
0sem comentários ainda