it-swarm-pt.tech

Como configuro o SPF para vários domínios em um servidor? (também permitindo o gmail como remetente)

SPF (Sender Policy Framework) parece uma boa maneira de combater spammers/spoofing.

No entanto, apesar de ler as explicações várias vezes, não estou entendendo muito bem como configurá-lo corretamente.


Digamos que meu servidor esteja em a.x.com que hospeda www.x.com e b.x.com e c.x.com e assim por diante.

Eu também tenho a.co.ukb.netc.info e assim por diante, cada um deles com uma variedade de subdomínios, todos hospedados em x.com

Para todos esses domínios e subdomínios, desejo permitir que e-mails sejam enviados de a.x.com

Também gostaria que todos eles permitissem o envio de e-mails do Gmail para todos esses domínios.

Como faço para configurar isso com SPF?

Posso definir um registro SPF para x.com (ou a.x.com) e então, para todo o resto, basta incluir um simples incluir/ponteiro para x.com's record, ou precisaria ser feito de forma diferente?

Alguém pode fornecer alguns registros SPF para o exemplo acima?


Nota: A segunda parte da minha pergunta foi respondida (use "v=spf1 include:x.com -all "para incluir/apontar em x.com's record), mas a parte principal do que definir em x.com permanece sem resposta ...

9
Peter Boughton

Você não pode evitar ter que alterar os arquivos de zona para os domínios diferentes de x.com, mas você pode evitar muitos problemas definindo políticas comuns hospedadas em um domínio e usando a palavra-chave redirect SPF no outros domínios. Exemplo:

  • No zonefile para x.com domínio:
 _ policy1 IN TXT "v = spf1 a: axcom -all" 
 _ policy2 IN TXT "v = spf1 incluir : _spf.google.com a: axcom -all "

_spf.google.com é o registro que mantém o registro SPF do Gmail. Não tenho certeza se está documentado. Teoricamente, você deve include:gmail.com mas isso é um redirecionamento para _spf.google.com e houve pelo menos um patch SPF amplamente usado para qmail que não o seguia corretamente (foi corrigido em agosto de 2008, mas ainda pode ser implantado). As duas políticas são exemplos, é claro - ter mais de uma com várias níveis de rigidez são extremamente úteis durante a depuração, uma vez que você só precisa alterar um nome curto no domínio de destino, em vez de um copypasting sujeito a erros.

  • Nos arquivos de zona para os outros domínios:
 @ IN TXT "v = spf1 redirect = _policy1.x.com" 

ou

 @ IN TXT "v = spf1 redirect = _policy2.x.com" 

etc. Estou usando redirect, não include, para fazer com que a verificação SPF substitua completamente o registro avaliado atualmente por aquele para o qual estou redirecionando. include não faz isso - por exemplo, um -all no final de um include não faz com que a avaliação pare (include é um grande equívoco.) Você deve evitar usar include quando quiser "apelidar" a Registro SPF de outro domínio, uma vez que é bastante frágil - se você esquecer acidentalmente o -tudo à direita, poderá tornar todo o seu SPF naquele domínio ineficaz.

Editar: observe, entretanto, que você precisa estar alerta se quiser permitir que os servidores do Gmail sejam remetentes. O chaptcha do Gmail foi quebrado, o que significa que é possível automatizar inscrições de contas, o que significa que o Gmail pode ser (indiretamente) usado como uma retransmissão aberta (estou recebendo dezenas de solicitações de inscrição de spambot por semana para o fórum de discussão da minha empresa, todos usando endereços de e-mail gmail.com - e esses endereços estão ativos, permiti que alguns fossem verificados para fins de verificação.) Além disso, qualquer pessoa com uma conta do Gmail pode ignorar a verificação de SPF se estiver familiarizado com as partes do nome de usuário dos endereços de e-mail em seus domínios .

7
Mihai Limbăşan

Sim, você pode incluir a configuração de um de seus domínios nos registros SPF de todos os outros domínios. Definir o registro SPF de outros domínios para o seguinte deve resolver o problema:

v=spf1 include:x.com -all
4
womble

Você já tentou usar a ferramenta da web em http://www.openspf.org/ ? Pode ser um pouco mais fácil para você lidar com isso ...

Basta inserir seu domínio na caixa superior direita e clicar no botão ir. A partir daí, você deve ser capaz de configurar as coisas rapidamente.

2
Avery Payne

O padrão, RFC 4408 , fornece alguns exemplos que estão muito próximos do que você deseja. Aqui está um extrato do zonefile de x.com:

 @ IN TXT "v = spf1 a: axcom -all" 
 IN SPF "v = spf1 a: axcom -all" 
 
 www IN TXT "v = spf1 a: axcom -all" 
 IN SPF "v = spf1 a: axcom -all" 

Notas:

  • Não adicionei servidores de e-mail do Gmail porque não os conheço, pergunte ao pessoal do Gmail
  • 'a' é para 'endereço' (é não um registro DNS A, ele inclui IPv6)
  • Eu adicionei registros SPF, de acordo com o RFC, embora quase todas as implementações usem apenas o registro TXT
2
bortzmeyer

Sim, você precisa adicionar o registro SPF específico a cada domínio individualmente.

A razão para isso é que o único registro de tipo de aliasing (útil) no DNS é o registro CNAME. No entanto, o registro CNAME faz com que ocorra aliasing para TODOS dos RRtypes em um RRset - não há como dizer "CNAME o registro SPF, mas não os registros MX "

1
Alnitak