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!