Bloquear spam de referência

O exemplo a seguir mostra como configurar o Fastly Edge Dictionary com um trecho de VCL personalizado para bloquear o spam de referência do seu Adobe Commerce no site de infraestrutura na nuvem.

NOTE
Recomendamos adicionar configurações personalizadas de VCL a um ambiente de preparo onde você possa testá-las antes de executá-las no ambiente de produção.

Pré-requisitos:

  • Seu ambiente deve ser configurado para usar o Fastly CDN. Consulte Configurar serviços do Fastly.

  • Verifique se você está executando a versão mais recente do módulo CDN Fastly para o Magento 2. Consulte Atualizar o Módulo Fastly.

  • Verifique a configuração do ambiente para o serviço Fastly. Consulte Verificar cache rápido.

  • Você deve ter credenciais de Administrador para acessar os ambientes de Preparo e Produção.

  • Revise os logs do site em busca de URLs de referência falsos e faça uma lista de domínios a serem bloqueados.

Criar um incluo na lista de bloqueios referenciador

Os Edge Dictionaries criam pares de valores-chave acessíveis a funções de VCL durante o processamento de trechos de VCL. Neste exemplo, você cria um dicionário de borda que fornece a lista de sites referenciadores a serem bloqueados.

  1. Faça logon no Administrador.

  2. Clique em Lojas > Configurações > Configuração > Avançadas > Sistema.

  3. Expanda Cache de Página Inteira > Configuração Rápida > dicionários Edge.

  4. Crie o contêiner Dicionário:

    • Clique em Adicionar container.

    • Na página Contêiner, digite um Nome do dicionárioreferrer_blocklist.

    • Selecione Ativar após a alteração para implantar suas alterações na versão da configuração do serviço Fastly que você está editando.

    • Clique em Carregar para anexar o dicionário à configuração do serviço Fastly.

  5. Adicione a lista de nomes de domínio a serem bloqueados ao dicionário referrer_blocklist:

    • Clique no ícone Configurações do dicionário referrer_blocklist.

    • Adicione e salve pares de valores chave no novo dicionário. Neste exemplo, cada Chave é o nome de domínio de uma URL de referenciador a ser bloqueada e o Valor é true.

      Adicionar itens incorretos do dicionário do referenciador

    • Clique em Cancelar para retornar à página de configuração do sistema.

  6. Clique em Salvar configuração.

  7. Atualize o cache de acordo com a notificação na parte superior da página.

Para obter mais informações sobre Dicionários Edge, consulte Criação e uso de Dicionários Edge e trechos de VCL personalizados na documentação do Fastly.

Criar um trecho de VCL personalizado para bloquear spam do referenciador

O seguinte código de trecho de VCL personalizado (formato JSON) mostra a lógica para verificar e bloquear solicitações. O trecho VCL captura o host de um site referenciador em um cabeçalho e compara o nome do host à lista de URLs no dicionário referrer_blocklist. Se o nome do host corresponder, a solicitação será bloqueada com um erro 403 Forbidden.

{
  "name": "block_bad_referrer",
  "dynamic": "0",
  "type": "recv",
  "priority": "5",
  "content": "set req.http.Referer-Host = regsub(req.http.Referer, \"^https?:\/\/?([^:\/s]+).*$\", \"\\1\"); if (table.lookup(referrer_blocklist, req.http.Referer-Host)) { error 403 \"Forbidden\"; }"
}

Antes de criar um trecho com base neste exemplo, revise os valores para determinar se você precisa fazer alterações:

  • name — Nome do trecho VCL. Neste exemplo, usamos block_bad_referrer.

  • dynamic — O valor 0 indica um trecho regular para carregar no VCL com versão para a configuração Fastly.

  • priority — Determina quando o trecho VCL é executado. A prioridade é 5 para executar este código de trecho antes que qualquer trecho de VCL de Magento padrão (magentomodule_*) receba uma prioridade de 50. Defina a prioridade para cada trecho personalizado acima ou abaixo de 50, dependendo de quando você deseja que seu trecho seja executado. Os trechos com números de prioridade mais baixa são executados primeiro.

  • type — Especifica um local para inserir o trecho na versão do VCL. Neste exemplo, o trecho VCL é um trecho recv. Quando o trecho é inserido na versão do VCL, ele é adicionado à sub-rotina vcl_recv, abaixo do código padrão do Fastly VCL e acima de qualquer objeto.

  • content — O trecho de código VCL a ser executado em uma linha, sem quebras de linha.

Depois de revisar e atualizar o código do seu ambiente, use um dos métodos a seguir para adicionar o trecho de VCL personalizado à configuração do serviço Fastly:

Adicionar o trecho de VCL personalizado

  1. Faça logon no Administrador.

  2. Clique em Lojas > Configurações > Configuração > Avançado > Sistema.

  3. Expanda Cache de Página Inteira > Configuração Rápida > Trechos de VCL Personalizados.

  4. Clique em Criar trecho personalizado.

  5. Adicione os valores do trecho de VCL:

    • Nomeblock_bad_referrer

    • Tiporecv

    • Prioridade5

    • VCL conteúdo do trecho —

      code language-conf
      set req.http.Referer-Host = regsub(req.http.Referer,
      "^https?://?([^:/\s]+).*$", "1");
      if (table.lookup(referrer_blocklist, req.http.Referer-Host)) {
        error 403 "Forbidden";
      }
      
  6. Clique em Criar.

    Criar trecho VCL de bloco de referenciador personalizado

  7. Depois que a página for recarregada, clique em Carregar VCL para Fastly na seção Configuração Fastly.

  8. Depois que o upload for concluído, atualize o cache de acordo com a notificação na parte superior da página.

O Fastly valida a versão atualizada do VCL durante o processo de upload. Se a validação falhar, edite o trecho de VCL personalizado para corrigir os problemas. Em seguida, carregue o VCL novamente.

NOTE
Em vez de carregar manualmente trechos de VCL personalizados, você pode adicionar trechos ao diretório $MAGENTO_CLOUD_APP_DIR/var/vcl_snippets_custom em seu ambiente. Os trechos neste diretório são carregados automaticamente quando você clica em carregar VCL para Fastly no Commerce Admin. Consulte Implantação automatizada de trechos de VCL personalizados no módulo Fastly CDN para obter a documentação do Magento 2.

Modificar o trecho de VCL personalizado

  1. Faça logon no Administrador.

  2. Clique em Lojas > Configurações > Configuração > Avançadas > Sistema.

  3. Expanda Cache de Página Inteira > Configuração Rápida > Trechos de VCL Personalizados.

    Gerenciar trechos de VCL personalizados

  4. Na coluna Ação, clique no ícone de configurações ao lado do trecho a ser editado.

  5. Depois que a página for recarregada, clique em Carregar VCL para Fastly na seção Configuração Fastly.

  6. Depois que o upload for concluído, atualize o cache de acordo com a notificação na parte superior da página.

WARNING
A opção Custom VCL snippets UI mostra apenas os trechos adicionados pelo Administrador do Adobe Commerce. Se você adicionar trechos usando a API Fastly, use a API para gerenciá-los.

Excluir o trecho de VCL personalizado

  1. Faça logon no Administrador.

  2. Clique em Lojas > Configurações > Configuração > Avançadas > Sistema.

  3. Expanda Cache de Página Inteira > Configuração Rápida > Trechos de VCL Personalizados.

    Gerenciar trechos de VCL personalizados

  4. Na coluna Ação, clique no ícone de lixeira ao lado do trecho a ser excluído.

  5. Na próxima janela modal, clique em DELETE e ative uma nova versão.

WARNING
A opção Custom VCL snippets UI mostra apenas os trechos adicionados pelo Administrador do Adobe Commerce. Se você adicionar trechos usando a API Fastly, use a API para gerenciá-los.
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26