Si su sitio web es vulnerable a ataques DDoS volumétricos y a ataques contra aplicaciones web, como inyección SQL, cross-site scripting (XSS) e inyección de comandos, utilice Anti-DDoS Proxy junto con Web Application Firewall (WAF). En este tema se describe cómo configurar ambos servicios para obtener una protección por capas.
Funcionamiento
El tráfico atraviesa dos capas de protección antes de llegar al servidor de origen:
|
Layer |
Service |
Threats mitigated |
|
Entrada |
Anti-DDoS Proxy |
Ataques DDoS volumétricos (inundaciones en la capa de red y de transporte) |
|
Intermedia |
WAF |
Ataques contra aplicaciones web, como inyección SQL, XSS, inyección de comandos e inundaciones HTTP |
|
Backend |
Servidor de origen, como una instancia de ECS, una instancia de SLB o un servidor de centro de datos |
Recibe el tráfico después de la inspección de Anti-DDoS Proxy y WAF |
La siguiente figura muestra el flujo del tráfico.
Notas de uso
Las solicitudes pasan por varios proxy antes de llegar al servidor de origen. Por lo tanto, el servidor no puede obtener directamente las direcciones IP de los clientes. Consulte cómo obtain the originating IP addresses of requests.
Requisitos previos
Antes de empezar, complete los siguientes requisitos previos:
Este tema utiliza WAF 3.0 como ejemplo, pero los pasos también aplican para WAF 2.0.
Paso 1: Agregue su sitio web a WAF
WAF admite el modo de registro CNAME y el modo nativo de la nube. Revise la access mode overview y seleccione el modo que mejor se adapte a su entorno.
Inicie sesión en la consola de WAF 3.0. En la barra de navegación superior, seleccione un resource group y elija Chinese Mainland o Outside Chinese Mainland como región.
En el panel de navegación izquierdo, haga clic en Onboarding.
Seleccione la pestaña CNAME Record o Cloud Native y complete los pasos correspondientes a ese modo.
Modo de registro CNAME
En la pestaña CNAME Record, haga clic en Add.
-
En el paso Configure Listener, establezca los parámetros y haga clic en Next. A continuación se muestra una descripción general de los parámetros. Para obtener más información, consulte Add a domain to WAF via CNAME.
Parámetro
Descripción
Domain Name
Introduzca el nombre de dominio de su sitio web.
Protocol Type
Seleccione el protocolo y los puertos que utiliza su sitio web. Presione Intro después de cada número de puerto. Si selecciona HTTPS, cargue el certificado asociado al nombre de dominio. Después, puede habilitar HTTP/2 y la redirección HTTPS forzada, además de configurar la versión de TLS y el conjunto de cifrado.
Is a Layer 7 proxy such as Anti-DDoS Proxy or CDN deployed in front of WAF
Seleccione Yes. Para Obtain Actual IP Address of Client, elija una de las siguientes opciones: <br>- Use the First IP Address in X-Forwarded-For Field as Actual IP Address of Client (predeterminado): WAF utiliza la primera dirección IP del encabezado
X-Forwarded-Forcomo la dirección IP de origen del cliente.<br>- [Recommended] Use the First IP Address in Specified Header Field as Actual IP Address of Client to Prevent X-Forwarded-For Forgery: si su proxy registra las direcciones IP de origen en un encabezado personalizado, comoX-Client-IPoX-Real-IP, seleccione esta opción e introduzca el nombre del encabezado en el campo Header Field. Un encabezado personalizado evita que los atacantes falsifiquen los valores deX-Forwarded-Forpara evadir la protección de WAF.More Settings
Configure la protección IPv6 y las direcciones IP exclusivas. Seleccione también un tipo de recurso de protección según sus necesidades.
Resource Group
Seleccione el resource group para el nombre de dominio. Si deja este campo vacío, el nombre de dominio se agrega al Default Resource Group.
-
En el paso Configure Forwarding Rule, configure los parámetros y haga clic en Submit.
Parameter
Description
Load Balancing Algorithm
Si su servidor de origen tiene varias direcciones, seleccione un algoritmo de balanceo de carga.
Server Address
Introduzca la dirección IP pública o el nombre de dominio del servidor de origen que recibe las solicitudes de retorno al origen desde WAF.
Advanced HTTPS Settings
Especifique si desea usar HTTP para las solicitudes de retorno al origen y habilite el SNI de retorno al origen.
Other Advanced Settings
Configure Enable Traffic Mark, Retry Back-to-origin Requests, Back-to-origin Keep-alive Requests y el periodo de tiempo de espera de conexión.
En el paso Add Completed, copie el CNAME proporcionado por WAF. Utilizará este CNAME como la dirección del servidor de origen en Anti-DDoS Proxy.
Modo nativo de la nube
Para obtener más información, consulte Cloud native mode.
Utilice el modo SDK module para Application Load Balancer (ALB), Microservices Engine (MSE), Function Compute .
Utilice el modo reverse proxy cluster para Classic Load Balancer (CLB) o ECS.
Paso 2: Agregue su sitio web a Anti-DDoS Proxy
Inicie sesión en la consola de Anti-DDoS Proxy.
-
En la barra de navegación superior, seleccione la región de su instancia:
Anti-DDoS Proxy (Chinese Mainland): seleccione Chinese Mainland.
Anti-DDoS Proxy (Outside Chinese Mainland): seleccione Outside Chinese Mainland.
En el panel de navegación izquierdo, elija Onboarding > Website Config.
-
En la página Website Config, haga clic en Add Website. Introduzca la información obligatoria y haga clic en Next.
Parameter
Description
Function Plan
Seleccione el plan de funciones de la instancia de Anti-DDoS Proxy.
Instance
Seleccione la instancia de Anti-DDoS Proxy. Puede asociar hasta ocho instancias con un nombre de dominio. Todas las instancias deben utilizar el mismo Function Plan.
Websites
Introduzca el nombre de dominio de su sitio web.
Protocol Type
Seleccione el protocolo que utiliza su sitio web. Si elige HTTPS, cargue el certificado del nombre de dominio. Tras seleccionar HTTPS, también puede habilitar la redirección HTTPS forzada y HTTP/2, así como usar HTTP para las solicitudes de retorno al origen. Consulte cómo add one or more websites, lo cual incluye cargar certificados, personalizar políticas de seguridad y habilitar el grapado de Online Certificate Status Protocol (OCSP).
Server Address
- Si agregó el nombre de dominio a WAF en CNAME Record: seleccione Origin Domain Name e introduzca el CNAME de WAF obtenido en el paso 1.<br>- Si agregó el nombre de dominio a WAF en Cloud Native: seleccione Origin IP Address e introduzca la dirección IP pública del servidor de origen.
Server Port
Establézcalo según el valor de Protocol Type. HTTP y WebSocket utilizan el puerto 80 de forma predeterminada; HTTPS, HTTP/2 y WebSockets usan el puerto 443 de forma predeterminada. Haga clic en Custom para introducir puertos adicionales, separados por comas (,).
CNAME Reuse
Disponible solo para Anti-DDoS Proxy (Outside Chinese Mainland). Seleccione si desea habilitar la reutilización de CNAME. Para obtener más información, consulte Use the CNAME reuse feature.
-
Configure los ajustes de reenvío y haga clic en Next.
Parameter
Description
Back-to-origin scheduling algorithm
Controla cómo distribuye Anti-DDoS Proxy las solicitudes entre varias direcciones de servidores de origen. Hay tres opciones disponibles:<br>- Round-robin (predeterminado): distribuye las solicitudes a todas las direcciones de forma rotativa. De manera predeterminada, todas tienen el mismo peso, pero puede ajustarlo para dirigir más tráfico a los servidores con mayor capacidad. Úselo cuando necesite una distribución uniforme de la carga entre varios servidores de origen.<br>- IP hash: dirige las solicitudes de una misma IP de cliente al mismo servidor durante un periodo determinado, lo que mantiene la consistencia de la sesión. Combinado con la configuración de pesos, los servidores de mayor capacidad gestionan proporcionalmente más tráfico. Úselo cuando su aplicación requiera persistencia de sesión. Tenga en cuenta que pueden producirse desequilibrios de carga en casos extremos.<br>- Least time: utiliza la resolución DNS inteligente para dirigir cada solicitud al servidor con la latencia más baja en todo el trayecto, desde el nodo de protección hasta el origen.
Traffic marking
Agrega información sobre las solicitudes de los clientes a los encabezados HTTP para que la usen los sistemas posteriores:<br>- Originating Port: especifica el encabezado que registra el puerto de origen del cliente. El encabezado predeterminado es
X-Forwarded-ClientSrcPort. Para usar un encabezado personalizado, introduzca aquí su nombre.<br>- Originating IP Address: especifica el encabezado que registra la dirección IP de origen del cliente. El encabezado predeterminado esX-Forwarded-For. Para usar un encabezado personalizado, introduzca aquí su nombre.<br>- Custom Header: agrega hasta cinco encabezados HTTP personalizados a las solicitudes de retorno al origen. No utilice los siguientes encabezados reservados:X-Forwarded-ClientSrcPort,X-Forwarded-ProxyPort,X-Forwarded-For. Tampoco use encabezados HTTP estándar (comoHost,User-Agent,Connection,Upgrade) ni encabezados personalizados de uso común (comoX-Real-IP,X-True-IP,X-Client-IP,Web-Server-Type,WL-Proxy-Client-IP,EagleEye-RPCID,EagleEye-TraceID,X-Forwarded-Cluster,X-Forwarded-Proto). Usar estos encabezados reservados sobrescribe sus valores originales.Cookie settings
Controla cómo gestiona Anti-DDoS Proxy las cookies:<br>- Delivery Status (habilitado de forma predeterminada): Anti-DDoS Proxy inserta cookies en las respuestas a los clientes para distinguirlos y recopilar información de huellas digitales. Si deshabilita esta opción, Anti-DDoS Proxy no podrá evaluar ni defenderse activamente de los ataques de inundación HTTP mediante reglas de mitigación.<br>- Secure Attribute (deshabilitado de forma predeterminada): cuando está habilitado, las cookies se entregan únicamente a través de conexiones HTTPS, lo que las protege contra intercepciones. Habilite esta opción si su sitio web usa exclusivamente HTTPS.
Other settings
Permite hacer fine-tune de la gestión de conexiones y solicitudes:<br>- Configure New Connection Timeout Period: tiempo de espera para establecer una conexión con el servidor de origen. Valores válidos: de 1 a 10 segundos.<br>- Configure Read Connection Timeout Period: tiempo de espera para que el servidor de origen responda a una solicitud de lectura. Valores válidos: de 10 a 300 segundos.<br>- Configure Write Connection Timeout Period: tiempo de espera para que Anti-DDoS Proxy envíe todos los datos al servidor de origen. Valores válidos: de 10 a 300 segundos.<br>- Retry Back-to-origin Requests: cuando está habilitado, si un recurso solicitado no se encuentra en la caché, el servidor de caché lo recupera de una caché de nivel superior o del servidor de origen.<br>- Back-to-origin Persistent Connections: cuando está habilitado, la conexión TCP entre el servidor de caché y el servidor de origen permanece abierta después de cada solicitud, lo que reduce la sobrecarga de establecimiento de conexiones.<br>- Requests Reusing Persistent Connections: número máximo de solicitudes HTTP enviadas a través de una única conexión TCP persistente. Valores válidos: de 10 a 1000. Establezca un valor menor o igual al límite configurado en el servidor de origen (como WAF o SLB) para evitar fallos de conexión.<br>- Timeout Period of Idle Persistent Connections: tiempo que se mantiene abierta una conexión TCP persistente inactiva antes de cerrarla. Valores válidos: de 10 a 30 segundos. Establezca un valor menor o igual al tiempo de espera configurado en el servidor de origen para evitar fallos de conexión.<br>- Upper Limit for HTTP/2 Streams: número máximo de flujos HTTP/2 simultáneos entre el cliente y Anti-DDoS Proxy. Valores válidos: de 16 a 32. Disponible solo cuando HTTP/2 está habilitado. Para establecer un límite mayor, comuníquese con su administrador de cuenta.
Copie el CNAME proporcionado por Anti-DDoS Proxy.
Paso 3: Actualice el registro DNS
Dirija su nombre de dominio al CNAME de Anti-DDoS Proxy obtenido en el paso 2. Los siguientes pasos utilizan Alibaba Cloud DNS como ejemplo. Si emplea un proveedor de DNS externo, consulte la documentación de dicho proveedor.
Inicie sesión en la consola de DNS.
En la página Domain Name Resolution, busque su nombre de dominio y haga clic en Settings en la columna Actions.
-
En la página Settings, busque el registro DNS existente y haga clic en Edit en la columna Actions.
Si el registro DNS no aparece en la lista, haga clic en Add Record para crear uno.
En el panel Modify Record (o Add Record), establezca Record Type en CNAME y defina Record Value con el CNAME de Anti-DDoS Proxy.
Haga clic en OK y espere a que el cambio se propague.
Abra un navegador y compruebe que su sitio web sea accesible.
Pasos siguientes
Para agregar nombres de dominio a WAF 2.0 en modo de registro CNAME o en modo de proxy transparente, consulte Add a domain name to WAF y Transparent proxy mode.
Para solucionar problemas de respuesta lenta, alta latencia o fallos de acceso tras actualizar el registro DNS, consulte How do I handle the issues of slow response, high latency, and access failure on my service that is protected by an Anti-DDoS Proxy instance?.
Para desplegar Anti-DDoS Proxy y CDN de manera conjunta, consulte Use the CDN or DCDN interaction feature.