Feche o índice de busca do site via Kubernetes HAProxy Ingress

No Kubernetes, recursos Ingress são frequentemente usados como controladores de tráfego, fornecendo acesso externo aos serviços no cluster. O Ingress é essencial para encaminhar tráfego entrante para o seu serviço; no entanto, pode haver situações em que você queira evitar que os mecanismos de busca indexem o conteúdo de seu serviço: pode ser um ambiente de desenvolvimento ou algo similar.

Este post do blog vai guiar você pelo processo de bloquear a indexação do site no Kubernetes Ingress usando o arquivo robots.txt, evitando que os robôs de busca crawlem e indexem o seu conteúdo.

Pré-requisitos

Para prosseguir com o tutorial, você deve ter um entendimento básico dos objetos básicos do Kubernetes, recursos Ingress e do controlador Ingress oficial HAProxy. Você também precisará de acesso ao cluster Kubernetes e permissões necessárias para fazer mudanças de configuração.

Note que, para fins deste artigo, assume que o controlador HAProxy de ingressos está configurado como o controlador padrão. Caso contrário, se você não selecionou o HAProxy como o controlador padrão, você deve adicionar a opção ingressClassName a todos os exemplos de código Ingress.

Passo 1: Criar um Recurso Ingress no Kubernetes

No primeiro trecho de nossa viagem, vamos configurar um pequeno recurso Ingress para expor nosso serviço fora do cluster Kubernetes. Atenção: por enquanto, todos os web crawlers terão acesso ao serviço. Para aplicar o código abaixo, use o comando kubectl apply -f ingress.yaml.

YAML

 

Passo 2: Modifique a Configuração do Ingress

O arquivo robots.txt é usado para controlar como os motores de busca indexam documentos. Seu arquivo especifica quais URLs os crawlers de motores de busca podem acessar no seu site. O arquivo mais básico que restringe o acesso ao serviço web parece assim:

Plain Text

 

O HAProxy não exige que você adicione este arquivo a seu servidor web ou site. Isso pode ser alcançado com a seguinte configuração, que deve ser adicionada à seção backend para o grupo específico de servidores:

Plain Text

 

As Anotações K8S regulam todas as manipulações da configuração frontend/backend do HAProxy para um único recurso Ingress. A lista completa das anotações HAProxy pode ser encontrada na documentação oficial no GitHub.

No nosso caso, precisamos usar haproxy.org/backend-config-snippet com o snippet HAProxy para bloquear qualquer indexação. Para isso, edite, abra o arquivo YAML de recurso Ingress, e adicione a seguinte anotação à seção metadata:

YAML

 

Passo 3: Aplique as mudanças de configuração

Após alterar o arquivo YAML de Ingress, salve-o e aplique-o ao cluster Kubernetes com o comando kubectl: kubectl apply -f ingress.yaml.

O controlador de Ingress detectará as mudanças e atualizará a configuração de acordo.

Passo 4: Verifique a Configuração

Examine o arquivo robots.txt gerado para confirmar que a prevenção de indexação está funcionando corretamente. O controlador de Ingress gera este arquivo baseado na anotação que você fornece.

Retire o IP externo ou domínio associado com seu recurso Ingress e adicione /robots.txt à URL. Exemplo:

Plain Text

 

Como podemos ver, a resposta contém um arquivo robots.txt que impede qualquer indexação de busca.

Passo 5: Teste a Prevenção de Indexação

Para verificar que as motores de busca não estão indexando seu site, você pode executar uma busca por seu site em motores de busca populares. Note que os resultados de busca às vezes demoram para refletir mudanças, portanto, o status de indexação pode não ser totalmente atualizado ainda.

Conclusão

As anotações tornam fácil evitar o indiceamento de motores de busca enquanto se utiliza do HAProxy Kubernetes Ingress. Adicionando a anotação apropriada ao seu recurso Ingress, você pode proibir que os motores de busca de bots indexem e rastrem o conteúdo do seu site. Uma abordagem semelhante pode ser usada com outros controladores de ingressos, como Nginx, Traefic e outros. Uma anotação semelhante pode também ser usada para recursos K8S Gateway API, que estão atualmente substituindo os Ingresses.

Como nota final, o arquivo robots.txt é uma maneira tradicional para criadores de sites especificarem se os sites devem ou não ser rastreados por vários bots. No entanto, afinal de contas, os rastreadores AI de modelos de linguagem de grande escala (LLM) frequentemente ignoram o conteúdo do arquivo robots.txt e rastreiam seu site mesmo assim. Para evitar essas situações, utilize segurança de senha, noindex ou recursos de balanceador de carga empresarial como balanceador de carga do HAProxy, que pode ser configurado também como uma anotação K8S.

Source:
https://dzone.com/articles/close-site-search-indexing-via-kubernetes-haproxy