Edite o arquivo Hosts do seu Mac: Guia completo para bloquear e redirecionar sites

O arquivo hosts do seu Mac é um documento textual pequeno, porém crucial, que possibilita a associação de nomes de host a endereços IP específicos.

Embora a internet contemporânea empregue diversos servidores DNS, tanto públicos quanto privados, para a tradução de endereços IP, o arquivo hosts oferece um método eficaz para substituir esses servidores. Isso permite direcionar manualmente um endereço de site para o IP desejado ou, ainda, bloquear o acesso a um site, redirecionando-o para um endereço IP interno ou não utilizado.

Vamos explorar como modificar o arquivo hosts no macOS.

Modificando o Arquivo Hosts do Mac via Editor de Texto

Existem duas abordagens principais para editar o arquivo hosts no macOS. A primeira envolve o uso do TextEdit, pois este arquivo é essencialmente um documento de texto simples. No entanto, não é possível abri-lo diretamente, já que ele reside em uma área protegida do sistema. Portanto, é necessário copiar o arquivo para um local desprotegido, como a área de trabalho, editá-lo e, em seguida, movê-lo de volta.

  • Para localizar o arquivo hosts, abra o Finder. Você pode acessá-lo clicando na área de trabalho, no ícone do Finder na barra inferior ou pressionando cmd + espaço + Finder.
  • Em seguida, selecione o menu “Ir”.

3. Agora, selecione “Ir para Pasta…” no menu.

4. Na caixa que surgir, digite “/private/etc/hosts” e pressione Enter.

5. Uma nova janela do Finder será aberta, com o arquivo hosts do seu Mac selecionado. Arraste este arquivo para fora da janela e solte-o na área de trabalho.

Para abri-lo, basta clicar duas vezes, e o conteúdo do arquivo será exibido no TextEdit (ou no editor de texto de sua preferência).

Bloqueando Endereços IP

Por padrão, o arquivo /etc/hosts é relativamente simples. Ele contém diversas linhas de texto explicativo que são “comentadas” através do símbolo de cerquilha (#).

Qualquer linha que inicie com # é um comentário e é ignorada pelo arquivo /etc/hosts. Em cada linha, todo texto após o # é ignorado pelo computador, o que permite adicionar notas e descrições aos seus arquivos. O arquivo também contém valores de IP padrão para localhost e broadcasthost. Para editá-lo, você adicionará suas próprias linhas após broadcasthost.

Além de testar sites em desenvolvimento e migrações de hospedagem, outro uso do arquivo hosts é bloquear o acesso a sites específicos.

Como exemplo, vamos simular que o computador em uso é um dispositivo exclusivo para o trabalho, evitando distrações com o Facebook. Para isso, digite o endereço IP que você deseja atribuir, seguido de duas tabulações e o nome do host. No caso do Facebook, vamos mapear www.facebook.com para 0.0.0.0, um endereço IP inválido, que resultará em erro.

Assim, sempre que tentarmos acessar www.facebook.com, o navegador não carregará a página, incentivando o retorno ao trabalho!

Redirecionando Endereços Web

Alternativamente, você pode inserir o endereço IP de um site válido em vez de 0.0.0.0, o que direcionará os usuários que tentarem acessar o Facebook para o site de sua escolha.

  • Para identificar o endereço IP de um site, use o comando dig, disponível no macOS. No Terminal, execute o comando dig com a URL, que retornará o endereço IP como resultado.
  • Digite “$ dig www.techjunkie.com + short 104.25.27.105“

Observação: A opção +short mantém na saída apenas o endereço IP.

3. Anote o endereço IP obtido e use-o no mapeamento do arquivo hosts. Por exemplo, o site do The New York Times possui o IP 170.149.172.130. Se mapearmos isso para o Facebook no arquivo hosts, quem tentar acessar o Facebook será direcionado ao The New York Times.

Observação: Muitos sites não permitem o mapeamento de um nome de domínio para um endereço IP diferente, o que pode gerar um erro de segurança.

4. Adicione quantas entradas desejar ao arquivo hosts, inserindo novos mapeamentos em cada linha. Após as alterações, salve o arquivo na área de trabalho.

5. Arraste o arquivo hosts da área de trabalho para sua localização original em /private/etc. Caso tenha fechado a janela do Finder, utilize o comando Finder > Ir > Ir para Pasta para reabri-la.

6. Ao soltar o arquivo hosts na pasta original, o macOS perguntará o que fazer com o arquivo não modificado. Selecione “Substituir” e insira sua senha de administrador para confirmar a transferência.

Com o arquivo hosts modificado em vigor, abra o navegador para testar as alterações.

Limpando o Cache DNS

Na maioria dos casos, o novo mapeamento funciona imediatamente. Se não estiver vendo o comportamento desejado, pode ser necessário limpar o cache DNS, forçando o navegador a ler o arquivo hosts para determinar o mapeamento.

  • Para limpar o cache DNS no Mac, abra o Terminal e utilize o comando:
  • Digite “sudo killall -HUP mDNSResponder” e pressione Enter. Insira sua senha de administrador para executar este comando.
  • Para que o Mac limpe o cache e confirme a ação, utilize estes dois comandos separados por ponto e vírgula: “sudo killall -HUP mDNSResponder;say DNS cache has been flushed“

O Mac emitirá uma mensagem de confirmação dizendo “O cache DNS foi liberado”.

Modificando o Arquivo Hosts via Terminal com o Nano

As etapas anteriores são simples, mas se preferir evitar copiar o arquivo hosts, é possível editá-lo diretamente no Terminal utilizando o editor de texto UNIX Nano, já integrado ao macOS.

  • Para começar, abra o Terminal, digite o seguinte comando e pressione Enter. Como em todos os comandos sudo, será necessário inserir sua senha de administrador para executá-lo: “sudo nano /private/etc/hosts“

2. O arquivo hosts será aberto no editor Nano. Para navegar e editar o arquivo, utilize as setas do teclado.

3. Assim como no método com o TextEdit, você pode adicionar, editar ou remover mapeamentos de nomes de host. Como o Nano foi aberto via sudo, as alterações serão autenticadas e salvas diretamente no arquivo original, sem a necessidade de cópia.

4. Ao terminar as alterações, pressione Control-X para sair do editor, Y para salvar e Enter para substituir o arquivo hosts existente.

Como mencionado, certifique-se de limpar o cache DNS caso as mudanças não estejam funcionando corretamente.

Os exemplos citados abordaram o bloqueio e redirecionamento de sites que causam distração, mas estas etapas também podem ser utilizadas para bloquear acesso a sites maliciosos, entre outros usos.

Se cometer um erro e não souber como corrigi-lo, sempre poderá restaurar o conteúdo original do arquivo hosts utilizando um dos métodos anteriores e inserindo as seguintes informações padrão:

##
# Banco de dados do host
#
# localhost é usado para configurar a interface de loopback
# quando o sistema está inicializando. Não altere esta entrada.
##
127.0.0.1 localhost
255.255.255.255 host de transmissão::1 host local
fe80::1%lo0 localhost

Considerações Finais

A capacidade de editar o arquivo hosts no macOS permite substituir servidores DNS e direcionar manualmente endereços de sites para novos IPs ou bloquear o acesso a eles. Ao seguir as etapas descritas, você pode realizar esta tarefa de forma ágil.

Qual é sua motivação para editar o arquivo hosts do seu Mac? Como foi a sua experiência? Compartilhe sua opinião nos comentários!