Todos os produtos
Search
Central de documentação

Alibaba Cloud Service Mesh:Conectar um gateway de entrada do ASM ao WAF

Última atualização: Sep 17, 2026

Conecte um gateway de entrada do ASM a um Web Application Firewall (WAF). Personalize o formato do log de acesso para visualizar os cabeçalhos que o WAF adiciona às requisições de origem e simplificar as operações e a manutenção. Este tópico descreve como conectar um gateway de entrada do ASM ao WAF e usar o recurso de log de acesso personalizado para depuração.

Pré-requisitos

Visão geral do WAF

O Web Application Firewall (WAF) oferece segurança abrangente para sites e aplicações. O WAF identifica e bloqueia tráfego web malicioso e encaminha apenas requisições legítimas aos servidores. Essa proteção evita ataques que causam problemas de desempenho ou violações de dados nos servidores de origem, garantindo a continuidade dos negócios e a segurança das informações.

Etapa 1: Conectar o gateway de entrada do ASM ao WAF

Conecte o gateway de entrada do ASM ao WAF por meio de uma instância CLB de Camada 4 ou de um registro CNAME. Escolha o método mais adequado às suas necessidades.

  • CLB de Camada 4 (Recomendado): Este método conecta a instância CLB (anteriormente slb) do gateway de entrada do ASM ao WAF. Todo o tráfego do gateway passa pelo WAF. As regras do WAF avaliam todas as requisições recebidas pelo CLB do gateway.

  • Registro CNAME: Use este método para proteger requisições de nomes de domínio específicos. Essa opção é ideal quando o gateway de entrada do ASM gerencia vários nomes de domínio, mas apenas alguns exigem proteção do WAF.

    Nota

    Neste método, atualize o registro DNS do nome de domínio para apontar para o proxy do WAF. O proxy encaminha as requisições para o gateway de entrada do ASM.

Método 1: CLB de Camada 4

  1. Faça login no Web Application Firewall console. Conforme sua preferência de faturamento, clique em Subscription ou Pay-As-You-Go. Selecione a região desejada, revise as demais configurações e clique em Buy Now para criar uma instância do WAF 3.0. Caso já possua uma instância do WAF, utilize-a.

  2. No painel de navegação à esquerda, clique em Website Configuration. Na página Website Configuration, clique na aba Cloud Native. Localize CLB(tcp) e clique em Add na coluna Actions.

  3. No painel Configure Instance- Layer 4 CLB Instance, localize a instância CLB associada ao gateway e clique em Add Port. Selecione a porta usada pelo gateway de entrada do ASM e clique em OK.

    Este exemplo usa a porta HTTP 80. Para usar HTTPS, configure um certificado HTTPS.

    Nota

    Para encontrar a instância CLB associada ao gateway de entrada, faça login no ASM console e verifique a página de detalhes do gateway.

  4. Selecione Enable Traffic Mark. Configure os três cabeçalhos e clique em OK.

    Esses cabeçalhos indicam que o WAF processou a requisição. Os três cabeçalhos são: Custom Header customwaftag:customwaftagvalue, Originating ip Address clientrealip e source Port clientrealport.

Método 2: Registro CNAME

  1. Faça login no Web Application Firewall console. Conforme sua preferência de faturamento, clique em Subscription ou Pay-As-You-Go. Confirme as configurações, como a região, e clique em Buy Now para criar uma instância do WAF 3.0. Caso já possua uma instância do WAF, utilize-a.

  2. No painel de navegação à esquerda, selecione Website Configuration. Na página Website Configuration, selecione a aba CNAME Record e clique em Add.

  3. No assistente Configure Listener, configure o listener e clique em Next.

    Instâncias do WAF na China continental exigem registro ICP para nomes de domínio. Para evitar falha na verificação, insira um nome de domínio válido. Este exemplo utiliza as seguintes configurações:

    Em Website, insira o nome de domínio a ser protegido. Em Protocol, selecione HTTP e defina Port como 80. Para Layer-7 proxy (Anti-DDoS Pro/Premium or CDN) is deployed in front of WAF, selecione No. Expanda Advanced Settings. Mantenha Exclusive ip desativado. Em Resource, selecione Shared Cluster. Em Resource Group, selecione Default Resource Group.

  4. No assistente Configure Forwarding Rule, defina Load Balancing Algorithm como ip hash. Para Origin Server Address, selecione ip e insira o endereço ip público do gateway de entrada do ASM. Selecione Enable Traffic Mark, adicione os três cabeçalhos, mantenha as demais configurações com os valores padrão e clique em Submit.

    Esta configuração adiciona os três cabeçalhos especificados às requisições que o WAF encaminha para o gateway de entrada do ASM. Os cabeçalhos são: Custom Header customwaftag:customwaftagvalue, Originating ip Address clientrealip e source Port clientrealport.

  5. No assistente Add Completed, clique em Copy CNAME para registrar o endereço CNAME fornecido pelo WAF e clique em Complete.

    Nota

    Ao usar acesso via CNAME, aponte o registro DNS do domínio para o endereço CNAME fornecido pelo WAF.

(Opcional) Etapa 2: Personalizar o formato do log de acesso do ASM

Requisições processadas pelo WAF podem conter cabeçalhos especiais. Por exemplo, na Etapa 1, durante a configuração de encaminhamento (Configure Forwarding), um cabeçalho personalizado e dois cabeçalhos de identificação de ip e porta de origem são adicionados à requisição. A ausência desses cabeçalhos nos logs da cadeia de chamadas após a integração da aplicação online com o WAF dificulta extremamente a solução de problemas. Nesse cenário, use o recurso de log de acesso personalizado da observabilidade do ASM. Para mais informações, consulte Custom Data Plane Access Logs.

Etapa 3: Verificar a conexão do WAF

Método 1: CLB de Camada 4

Acesse diretamente o endereço ip do gateway. No navegador, insira http://<ASM-ingress-gateway-ip-address>:80/status/418.

Saída esperada:

-=[ teapot ]=-
       _...._
     .'  _ _ `.
    | ."` ^ `". _,
    \_;`"---"`|//
      |       ;/
      \_     _/
        `"""`

Método 2: Registro CNAME

Use o endereço CNAME fornecido pelo WAF. Execute o comando abaixo para acessar o caminho /status/418 da aplicação httpbin.

curl -H "Host: <your-domain-name>" "http://<CNAME-address-provided-by-WAF>/status/418" -v

Saída esperada

*   Trying x.x.x.x:80...
* Connected to geszcfxxxxxxxxxxxxxxxxxxxxppbeiz.aliyunwaf1.com (x.x.x.x) port 80 (#0)
> GET /status/418 HTTP/1.1
> Host:xxxx
> User-Agent: curl/7.84.0
> Accept: */*
>
* Mark bundle as not supporting multiuse
< HTTP/1.1 418 Unknown
< Date: Wed, 22 Feb 2023 05:07:23 GMT
< Content-Length: 135
< Connection: keep-alive
< Set-Cookie: acw_tc=0bc1599a16770424432844282e82xxxxxxxxxxxxxxxxxxx1ad989e7e5245f;path=/;HttpOnly;Max-Age=1800
< server: istio-envoy
< x-more-info: http://tools.ietf.org/html/rfc2324
< access-control-allow-origin: *
< access-control-allow-credentials: true
< x-envoy-upstream-service-time: 1
<
-=[ teapot ]=-
       _...._
     .'  _ _ `.
    | ."` ^ `". _,
    \_;`"---"`|//
      |       ;/
      \_     _/
        `"""`
Nota

Este comando não usa o nome de domínio original para acesso. Para usar o nome de domínio original, atualize o registro DNS para apontar para o endereço CNAME do WAF.

Etapa 4: Visualizar cabeçalhos do WAF nos logs do gateway

  1. Faça login no console do ASM. No painel de navegação à esquerda, escolha Service Mesh > Mesh Management.

  2. Na página Mesh Management, clique no nome da instância do ASM. No painel de navegação à esquerda, escolha Observability Management Center > Log Center.

  3. Na aba Gateway Logs, insira 418 na caixa de pesquisa e clique em Search & Analyze.

    Os resultados exibem logs de acesso do gateway com response_code igual a 418 e campo custom_waf_tag igual a customwaftagvalue. Os logs também incluem o endereço ip de origem (client_real_ip) e a porta de origem (client_real_port). Isso confirma o registro das tags personalizadas do WAF e das informações do cliente nos logs do gateway.

Após concluir a integração, faça login no console do WAF para configurar recursos avançados de proteção do site. Para obter observabilidade de ponta a ponta de outros cabeçalhos personalizados, siga o método descrito na Etapa 2.