Permitir conexões de entrada apenas do Google Tradutor

2

Eu tenho um pequeno servidor web em execução na porta 80 e gostaria de permitir que apenas o Google Tradutor tenha acesso a ele.

Primeiro, tentei executar dig translate.google.com e dig translate.googleusercontent.com para obter o endereço IP para ele, o que retornou endereços que variam de 74.125.234.74 para 74.125.234.110 .

Depois abri as portas mencionadas, mas não funcionou. Observando os logs do iptables, descobri que o Google tem endereços IP muito diferentes para abrir o site de destino para tradução. Em alguns testes eles variaram de 74.125.186.40 para 74.125.187.169 .

Agora, o que eu tenho até agora é a seguinte regra, que abre as portas para esse intervalo:

-A INPUT -p tcp --dport 80 -m iprange --src-range 74.125.186.40-74.125.187.169 -j ACCEPT

Os problemas:

  1. Toda vez que o Google tenta acessar a página, ele usa um endereço IP diferente e, provavelmente, fora do intervalo mencionado anteriormente. Eu teria que tentar muitas vezes para tomar nota de toda a gama.
  2. Estou preocupado com as implicações de segurança também, já que não sei se todos os IPs no intervalo são seguros para deixar em aberto (todos eles pertenceriam ao Google?)

Eu tentei nslookup 74.125.186.40 para ver se eu poderia obter um nome de domínio para ele, mas ele retorna:

** server can't find 40.186.125.74.in-addr.arpa.: NXDOMAIN
    
por Teresa e Junior 11.11.2012 / 22:07

1 resposta

3

Você não pode fazer isso de forma eficaz. Você não poderá contar com nenhum bloco específico de IPs por qualquer período de tempo conhecido.

Agora, existem algumas maneiras de resolver seu problema.

  1. recorte e cole o que você precisa traduzir no Google Tradutor. Você pode usar cat file | xclip -i para fazer isso mesmo para um arquivo bastante longo se tiver o pacote xclip instalado.
  2. Se você estiver usando um servidor da Web razoavelmente sólido, crie um diretório para ele que tenha um nome muito longo e aleatório. Use mkdir $(dd if=/dev/random bs=21 count=1 | base64) para criar o diretório para que ele tenha um nome verdadeiramente aleatório. Certifique-se de incluir esse nome de diretório no URL. Isso irá configurá-lo para que alguém precise saber um segredo para acessar qualquer um dos arquivos. É claro, você precisa ter certeza de que o diretório pai não pode ser listado através do servidor web, caso contrário, é trivial descobrir qual é o nome do diretório 'secreto'.
por 12.11.2012 / 05:53