Apache: Os golpistas apontam dezenas de nomes de domínio para o meu IP dedicado. Como evitar isso?

14

Para fins de discussão, finja que eu tenho um servidor Apache que serve um site em www.example.org. Esse nome de domínio é resolvido para o endereço IP público em 192.168.1.100 (finja que este é um IP público).

A discussão em Existe algo que eu possa fazer sobre alguém que apontou seu domínio para o meu ip? demonstra que qualquer pessoa pode apontar seu domínio para o meu IP. O Apache não evita isso por padrão, mas um administrador pode lidar com eles um de cada vez usando uma lista negra.

No entanto, está se tornando mais comum que os golpistas registrem dezenas de domínios (ou mais) para uso em uma fraude. Estou preocupado com o seguinte ataque possível:

  1. Um golpista registra centenas de nomes de domínio e os aponta para o meu endereço IP dedicado.
  2. O golpista direciona os mecanismos de pesquisa para seus domínios de golpes, usando assim meu conteúdo para aumentar sua posição nos motores de busca.
  3. Posteriormente, o fraudador move seus nomes de domínio para apontar para seus próprios servidores que hospedam uma fraude / pornografia ou uma empresa concorrente etc., colhendo assim os benefícios de sua posição nos mecanismos de busca. Alguns desses domínios também podem ser usados ​​no spam de comentários .
  4. Lucro!!

Acredito ter visto golpistas usando esse truque no passado, envolvendo dezenas de domínios. Não percebemos as implicações do golpe na época e assumimos que esses eram domínios mal configurados.

Existe um termo para esse truque nefasto de SEO? SEO disfarçado? Desvio de DNS?

Como posso evitar isso usando o Apache? Estou pensando em uma correção da "lista de permissões" com base no uso de um padrão VirtualHosts, ServerNamese ServerAliasespara que o Apache responda apenas a solicitações em que esses nomes de servidor listados na lista branca " Host:" apareçam no cabeçalho. Todo o resto seria rejeitado (ou redirecionado para uma página específica). No entanto, não tenho certeza se essa é a melhor abordagem.

Por exemplo, eu configurei o domínio http://thisisnotserverfault.stefanco.com/ para apontar para o IP para Serverfault.com. Você pode ver os resultados aqui: http://thisisnotserverfault.stefanco.com/ .

Stefan Lasiewski
fonte
Não vejo muito valor de SEO nesse esquema. A única coisa em que consigo pensar é que, para o spam de comentários, pode ser mais fácil obter um link para um site dos EUA / UE através do filtro de spam, mas eles ainda precisam de um endereço IP dos EUA / UE para enviar o spam de qualquer maneira. Existem muitos hosts, mesmo nos EUA / UE, que terão outra aparência no que diz respeito ao spam de comentários, para que também não proteja seus sites ou IPs. O conteúdo seria duplicado e não seria particularmente valioso para roubar, portanto também não vejo o valor dessa maneira.
Stoj
3
Se você não quiser usar seu endereço IP real em uma postagem, existem 768 endereços IP reservados na RFC 5737 para documentação. Qualquer um desses seria adequado como espaço reservado para um endereço IP público em uma pergunta sobre falha do servidor.
kasperd

Respostas:

18

Eu configuraria as entradas NameVirtualHost para todas as suas próprias entradas de domínio e qualquer coisa que não corresponda àquelas obterá uma página de explicação (que é o que você demonstrou no Serverfault). Referência http://httpd.apache.org/docs/2.0/vhosts/name-based.html

Jeff Ferland
fonte
Certo, e o primeiro vhost é o vhost padrão onde você colocaria esta página. Você também deseja adicionar um RewriteRule mod_rewrite que reescreva todos os URLs desta página.
Mark Wagner
Exatamente, o golpe só deve funcionar em hospedagem virtual baseada em IP. A hospedagem virtual baseada em nome só responderia se o nome de domínio estiver configurado no servidor (ou seja, não use curingas).
Martijn Heemels
Como alternativa, você pode simplesmente responder com uma Solicitação 400 inválida, 403 proibido ou 404 não encontrado, embora 400 implique um erro de sintaxe na solicitação, o que não é tecnicamente verdadeiro. Prefiro simplesmente não responder, embora não tenha certeza de como fazer isso no Apache (com o Nginx, tudo o que preciso fazer é return 444;no vhost padrão).
Kromey #
4

Você não pode impedir que alguém aponte seus servidores DNS para o seu IP. No entanto, você pode optar por não veicular nenhum conteúdo HTTP para esses domínios. Use Virtualhosts para veicular conteúdo para seus próprios domínios e não defina um host virtual padrão. Ou use o host virtual padrão para servir 404 ou 403, o que deve assustar os remetentes de spam.

Julien
fonte