Si votre site web est vulnérable aux attaques DDoS volumétriques et aux attaques contre les applications web, telles que l'injection SQL, le script intersite (XSS) et l'injection de commandes, utilisez Anti-DDoS Proxy avec Web Application Firewall (WAF). Cette rubrique explique comment configurer ces deux services pour une protection en couches.
Fonctionnement
Le trafic traverse deux couches de protection avant d'atteindre votre serveur d'origine :
|
Couche |
Service |
Menaces atténuées |
|
Entrée |
Anti-DDoS Proxy |
Attaques DDoS volumétriques (inondations au niveau des couches réseau et transport) |
|
Intermédiaire |
WAF |
Attaques contre les applications web, telles que l'injection SQL, le XSS, l'injection de commandes et les attaques par inondation HTTP |
|
Backend |
Serveur d'origine, tel qu'une instance ECS, une instance SLB ou un serveur de centre de données |
Reçoit le trafic après inspection par Anti-DDoS Proxy et WAF |
La figure suivante illustre le flux de trafic.
Notes d'utilisation
Les requêtes traversent plusieurs proxys avant d'atteindre le serveur d'origine, qui ne peut pas obtenir directement les adresses IP des clients. Découvrez comment obtenir les adresses IP d'origine des requêtes.
Prérequis
Avant de commencer, remplissez les conditions préalables suivantes :
Cette rubrique utilise WAF 3.0 comme exemple, mais les étapes s'appliquent également à WAF 2.0.
Étape 1 : Ajoutez votre site web à WAF
WAF prend en charge le mode d'enregistrement CNAME et le mode cloud natif. Consultez la présentation du mode d'accès et sélectionnez le mode le mieux adapté à votre environnement.
Connectez-vous à la console WAF 3.0. Dans la barre de navigation supérieure, sélectionnez un groupe de ressources et choisissez Chinese Mainland ou Outside Chinese Mainland comme région.
Dans le volet de navigation de gauche, cliquez sur Onboarding.
Sélectionnez l'onglet CNAME Record ou Cloud Native et suivez les étapes correspondant à ce mode.
Mode d'enregistrement CNAME
Dans l'onglet CNAME Record, cliquez sur Add.
-
À l'étape Configure Listener, définissez les paramètres et cliquez sur Next. Le tableau suivant présente une brève vue d'ensemble des paramètres. Pour plus d'informations, consultez la rubrique Ajouter un domaine à WAF via CNAME.
Paramètre
Description
Domain Name
Saisissez le nom de domaine de votre site web.
Protocol Type
Sélectionnez le protocole et les ports utilisés par votre site web. Appuyez sur Entrée après chaque numéro de port. Si vous sélectionnez HTTPS, téléchargez le certificat associé au nom de domaine. Vous pouvez ensuite activer HTTP/2 et la redirection HTTPS forcée, et configurer la version TLS ainsi que la suite de chiffrement.
Is a Layer 7 proxy such as Anti-DDoS Proxy or CDN deployed in front of WAF
Sélectionnez Yes. Pour Obtain Actual IP Address of Client, choisissez l'une des options suivantes : <br>- Use the First IP Address in X-Forwarded-For Field as Actual IP Address of Client (par défaut) : WAF utilise la première adresse IP de l'en-tête
X-Forwarded-Forcomme adresse IP d'origine du client.<br>- [Recommended] Use the First IP Address in Specified Header Field as Actual IP Address of Client to Prevent X-Forwarded-For Forgery : Si votre proxy enregistre les adresses IP d'origine dans un en-tête personnalisé, tel queX-Client-IPouX-Real-IP, sélectionnez cette option et saisissez le nom de l'en-tête dans le champ Header Field. Un en-tête personnalisé empêche les attaquants de falsifier les valeursX-Forwarded-Forpour contourner la protection WAF.More Settings
Configurez la protection IPv6 et les adresses IP exclusives, et sélectionnez un type de ressource de protection en fonction de vos besoins.
Resource Group
Sélectionnez le groupe de ressources pour le nom de domaine. Si vous laissez ce champ vide, le nom de domaine est ajouté au Default Resource Group.
-
À l'étape Configure Forwarding Rule, configurez les paramètres et cliquez sur Submit.
Paramètre
Description
Load Balancing Algorithm
Si votre serveur d'origine possède plusieurs adresses, sélectionnez un algorithme d'équilibrage de charge.
Server Address
Saisissez l'adresse IP publique ou le nom de domaine du serveur d'origine qui reçoit les requêtes de retour vers l'origine depuis WAF.
Advanced HTTPS Settings
Spécifiez s'il faut utiliser HTTP pour les requêtes de retour vers l'origine et activez SNI pour le retour vers l'origine.
Other Advanced Settings
Configurez l'activation du marquage du trafic, la nouvelle tentative des requêtes de retour vers l'origine, les requêtes keep-alive de retour vers l'origine et le délai d'expiration de la connexion.
À l'étape Add Completed, copiez le CNAME fourni par WAF. Vous utiliserez ce CNAME comme adresse de serveur d'origine dans Anti-DDoS Proxy.
Mode cloud natif
Pour plus d'informations, consultez la rubrique Mode cloud natif.
Utilisez le mode SDK module pour Application Load Balancer (ALB), Microservices Engine (MSE), Function Compute .
Utilisez le mode reverse proxy cluster pour Classic Load Balancer (CLB) ou ECS.
Étape 2 : Ajoutez votre site web à Anti-DDoS Proxy
Connectez-vous à la console Anti-DDoS Proxy.
-
Dans la barre de navigation supérieure, sélectionnez la région de votre instance :
Anti-DDoS Proxy (Chinese Mainland) : sélectionnez Chinese Mainland.
Anti-DDoS Proxy (Outside Chinese Mainland) : sélectionnez Outside Chinese Mainland.
Dans le volet de navigation de gauche, choisissez Onboarding > Website Config.
-
Sur la page Website Config, cliquez sur Add Website. Saisissez les informations requises et cliquez sur Next.
Paramètre
Description
Function Plan
Sélectionnez le plan de fonctions de l'instance Anti-DDoS Proxy.
Instance
Sélectionnez l'instance Anti-DDoS Proxy. Vous pouvez associer jusqu'à huit instances à un nom de domaine. Toutes les instances doivent utiliser le même Function Plan.
Websites
Saisissez le nom de domaine de votre site web.
Protocol Type
Sélectionnez le protocole utilisé par votre site web. Si vous sélectionnez HTTPS, téléchargez le certificat pour le nom de domaine. Après avoir sélectionné HTTPS, vous pouvez également activer la redirection HTTPS forcée et HTTP/2, et utiliser HTTP pour les requêtes de retour vers l'origine. Découvrez comment ajouter un ou plusieurs sites web, y compris comment télécharger des certificats, personnaliser les politiques de sécurité et activer l'agrafage OCSP (Online Certificate Status Protocol).
Server Address
- Si vous avez ajouté le nom de domaine à WAF en mode CNAME Record : sélectionnez Origin Domain Name et saisissez le CNAME WAF obtenu à l'étape 1.<br>- Si vous avez ajouté le nom de domaine à WAF en mode Cloud Native : sélectionnez Origin IP Address et saisissez l'adresse IP publique du serveur d'origine.
Server Port
Définissez en fonction de la valeur Protocol Type. HTTP et WebSocket utilisent par défaut le port 80 ; HTTPS, HTTP/2 et WebSockets utilisent par défaut le port 443. Cliquez sur Custom pour saisir des ports supplémentaires, séparés par des virgules (,).
CNAME Reuse
Disponible uniquement pour Anti-DDoS Proxy (Outside Chinese Mainland). Sélectionnez si vous souhaitez activer la réutilisation CNAME. Pour plus d'informations, consultez la rubrique Utiliser la fonctionnalité de réutilisation CNAME.
-
Configurez les paramètres de transfert et cliquez sur Next.
Paramètre
Description
Back-to-origin scheduling algorithm
Contrôle la manière dont Anti-DDoS Proxy distribue les requêtes entre plusieurs adresses de serveur d'origine. Trois options sont disponibles :<br>- Round-robin (par défaut) : Distribue les requêtes à toutes les adresses à tour de rôle. Toutes les adresses ont un poids égal par défaut ; vous pouvez ajuster les poids pour acheminer plus de trafic vers les serveurs à plus haute capacité. Utilisez cette option lorsque vous avez besoin d'une répartition de charge uniforme sur plusieurs serveurs d'origine.<br>- IP hash : Achemine les requêtes provenant de la même adresse IP client vers le même serveur pendant une période donnée, maintenant ainsi la cohérence de la session. Combiné aux paramètres de poids, les serveurs à plus haute capacité gèrent proportionnellement plus de trafic. Utilisez cette option lorsque votre application nécessite une persistance de session. Notez qu'une répartition de charge inégale peut se produire dans des cas limites.<br>- Least time : Utilise la résolution DNS intelligente pour acheminer chaque requête vers le serveur présentant la latence la plus faible sur l'ensemble du lien, du nœud de protection au serveur d'origine.
Traffic marking
Ajoute des informations sur les requêtes client aux en-têtes HTTP pour une utilisation par les systèmes en aval :<br>- Originating Port : Spécifie l'en-tête qui enregistre le port d'origine du client. L'en-tête par défaut est
X-Forwarded-ClientSrcPort. Pour utiliser un en-tête personnalisé, saisissez ici le nom de l'en-tête.<br>- Originating IP Address : Spécifie l'en-tête qui enregistre l'adresse IP d'origine du client. L'en-tête par défaut estX-Forwarded-For. Pour utiliser un en-tête personnalisé, saisissez ici le nom de l'en-tête.<br>- Custom Header : Ajoute jusqu'à cinq en-têtes HTTP personnalisés aux requêtes de retour vers l'origine. N'utilisez pas les en-têtes réservés suivants :X-Forwarded-ClientSrcPort,X-Forwarded-ProxyPort,X-Forwarded-For. N'utilisez pas les en-têtes HTTP standard (tels queHost,User-Agent,Connection,Upgrade) ni les en-têtes personnalisés largement utilisés (tels queX-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). L'utilisation de ces en-têtes réservés écrase leurs valeurs d'origine.Cookie settings
Contrôle la manière dont Anti-DDoS Proxy gère les cookies :<br>- Delivery Status (activé par défaut) : Anti-DDoS Proxy insère des cookies dans les réponses client pour distinguer les clients et collecter des informations d'empreinte digitale. La désactivation de ce commutateur empêche Anti-DDoS Proxy d'évaluer et de défendre activement contre les attaques par inondation HTTP via les règles d'atténuation des inondations HTTP.<br>- Secure Attribute (désactivé par défaut) : Lorsqu'il est activé, les cookies sont livrés uniquement via des connexions HTTPS, les protégeant ainsi de l'interception. Activez ce paramètre si votre site web utilise exclusivement HTTPS.
Other settings
Ajustez finement la gestion des connexions et des requêtes :<br>- Configure New Connection Timeout Period : Délai d'expiration pour l'établissement d'une connexion au serveur d'origine. Valeurs valides : 1 à 10 secondes.<br>- Configure Read Connection Timeout Period : Délai d'expiration pour que le serveur d'origine réponde à une requête de lecture. Valeurs valides : 10 à 300 secondes.<br>- Configure Write Connection Timeout Period : Délai d'expiration pour qu'Anti-DDoS Proxy envoie toutes les données au serveur d'origine. Valeurs valides : 10 à 300 secondes.<br>- Retry Back-to-origin Requests : Lorsqu'il est activé, si une ressource demandée ne se trouve pas dans le cache, le serveur de cache la récupère depuis un cache de niveau supérieur ou le serveur d'origine.<br>- Back-to-origin Persistent Connections : Lorsqu'il est activé, la connexion TCP entre le serveur de cache et le serveur d'origine reste ouverte après chaque requête, réduisant ainsi la surcharge liée à l'établissement de la connexion.<br>- Requests Reusing Persistent Connections : Nombre maximal de requêtes HTTP envoyées via une seule connexion TCP persistante. Valeurs valides : 10 à 1 000. Définissez cette valeur sur un nombre inférieur ou égal à la limite configurée sur le serveur d'origine (tel que WAF ou SLB) pour éviter les échecs de connexion.<br>- Timeout Period of Idle Persistent Connections : Durée pendant laquelle une connexion TCP persistante inactive reste ouverte avant d'être fermée. Valeurs valides : 10 à 30 secondes. Définissez cette valeur sur un nombre inférieur ou égal au délai d'expiration configuré sur le serveur d'origine pour éviter les échecs de connexion.<br>- Upper Limit for HTTP/2 Streams : Nombre maximal de flux HTTP/2 simultanés entre le client et Anti-DDoS Proxy. Valeurs valides : 16 à 32. Disponible uniquement lorsque HTTP/2 est activé. Pour définir une limite supérieure, contactez votre gestionnaire de compte.
Copiez le CNAME fourni par Anti-DDoS Proxy.
Étape 3 : Mettez à jour l'enregistrement DNS
Pointez votre nom de domaine vers le CNAME Anti-DDoS Proxy obtenu à l'étape 2. Les étapes ci-dessous utilisent Alibaba Cloud DNS comme exemple. Si vous utilisez un fournisseur DNS tiers, reportez-vous à la documentation de votre fournisseur.
Connectez-vous à la console DNS.
Sur la page Domain Name Resolution, recherchez votre nom de domaine et cliquez sur Settings dans la colonne Actions.
-
Sur la page Settings, recherchez l'enregistrement DNS existant et cliquez sur Edit dans la colonne Actions.
Si l'enregistrement DNS n'existe pas dans la liste, cliquez sur Add Record pour en créer un.
Dans le panneau Modify Record (ou Add Record), définissez Record Type sur CNAME et définissez Record Value sur le CNAME Anti-DDoS Proxy.
Cliquez sur OK et attendez que la modification se propage.
Ouvrez un navigateur et vérifiez que votre site web est accessible.
Étapes suivantes
Pour ajouter des noms de domaine à WAF 2.0 en mode d'enregistrement CNAME ou en mode proxy transparent, consultez les rubriques Ajouter un nom de domaine à WAF et Mode proxy transparent.
Pour résoudre les problèmes de réponse lente, de latence élevée ou d'échec d'accès après la mise à jour de l'enregistrement DNS, consultez la rubrique Comment gérer les problèmes de réponse lente, de latence élevée et d'échec d'accès sur mon service protégé par une instance Anti-DDoS Proxy ?.
Pour déployer conjointement Anti-DDoS Proxy et CDN, consultez la rubrique Utiliser la fonctionnalité d'interaction CDN ou DCDN.