El contenido no se encuentra disponible en el idioma seleccionado. Estamos trabajando continuamente para agregar más idiomas. Gracias por su apoyo.
- What's New
- Function Overview
-
Product Bulletin
- Java Spring Framework Remote Code Execution Vulnerability
- Apache Dubbo Deserialization Vulnerability
- DoS Vulnerability in the Open-Source Component Fastjson
- Remote Code Execution Vulnerability of Fastjson
- Oracle WebLogic wls9-async Deserialization Remote Command Execution Vulnerability (CNVD-C-2019-48814)
- Service Overview
-
Billing
- WAF Billing Overview
- Billing Modes
- Billing Items
- Billing Examples
- Changing the Billing Mode
- Renewing Your Subscription
- Bills
- About Arrears
- Billing Termination
- Cost Management
-
Billing FAQs
- Can I Switch Between Yearly/Monthly and Pay-per-Use Payments for WAF?
- Can I Use WAF for Free?
- How Is WAF Billed?
- Can WAF Continue Protecting a Domain Name When It Expires?
- How Do I Unsubscribe from WAF?
- Can I Retain the Original Configurations When I Unsubscribe from a WAF Instance and Then Purchase Another One?
- How Do I Know When My WAF Expires?
- Getting Started
-
User Guide
- Creating a User Group and Granting Permissions
- Buying WAF
- Connecting a Website to WAF
- Viewing Protection Events
-
Configuring Protection Policies
- Protection Configuration Overview
- Configuring Basic Web Protection to Defend Against Common Web Attacks
- Configuring Intelligent Access Control Rules to Accurately Defend Against CC Attacks
- Configuring CC Attack Protection Rules to Defend Against CC Attacks
- Configuring Custom Precise Protection Rules
- Configuring IP Address Blacklist and Whitelist Rules to Block or Allow Specified IP Addresses
- Configuring Geolocation Access Control Rules to Block or Allow Requests from Specific Locations
- Configuring Threat Intelligence Access Control Rules to Block or Allow IP Addresses in a Specified IP Address Library
- Configuring Web Tamper Protection Rules to Prevent Static Web Pages from Being Tampered With
- Configuring Anti-Crawler Rules
- Configuring Information Leakage Prevention Rules to Protect Sensitive Information from Leakage
- Configuring a Global Protection Whitelist Rule to Ignore False Alarms
- Configuring Data Masking Rules to Prevent Privacy Information Leakage
- Configuring a Scanning Blocking Rule to Automatically Block Heavy-Traffic Attacks
- Creating a Reference Table to Configure Protection Metrics in Batches
- Configuring a Known Attack Source Rule to Block Specific Visitors for a Specified Duration
- Condition Field Description
- Application Types WAF Can Protect
- Viewing the Dashboard
-
Website Settings
-
Recommended Configurations After Website Connection
- Configuring PCI DSS/3DS Compliance Check and TLS
- Enabling WAF IPv6 Protection
- Enabling the HTTP/2 Protocol
- Configuring a Timeout for Connections Between WAF and a Website Server
- Enabling Break Protection to Protect Origin Servers
- Configuring a Traffic Identifier for a Known Attack Source
- Forwarding Custom Header Fields
- Modifying the Alarm Page
- Enabling the Cookie Security Attributes
-
Managing Websites
- Viewing Basic Information of a Website
- Exporting Website Settings
- Changing the Protection Mode
- Switching the Load Balancing Algorithm
- Changing the Protection Policy for a Protected Website
- Updating the Certificate Used for a Website
- Editing Server Information
- Viewing Protection Information About a Protected Website on Cloud Eye
- Migrating Domain Names to Other Enterprise Projects
- Deleting a Protected Website from WAF
-
Recommended Configurations After Website Connection
- Policy Management
- Security Reports
- Object Management
- System Management
- Permissions Management
- Monitoring and Auditing
-
Best Practices
- WAF Best Practices You May Need
-
Website Access Configuration
- Connecting a Website Without a Proxy to WAF in CNAME Access Mode
- Combining AAD and WAF to Get All-Round Protection
- Combining CDN and WAF to Get Improved Protection and Load Speed
- Combining WAF and Layer-7 Load Balancers to Protect Services over Any Ports
- Using WAF, ELB, and NAT Gateway to Protect Services Not Deployed on Our Cloud
- Website Protection Configuration Suggestions
-
Mitigating Web Security Vulnerabilities
- Java Spring Framework Remote Code Execution Vulnerability
- Apache Dubbo Deserialization Vulnerability
- DoS Vulnerability in the Open-Source Component Fastjson
- Remote Code Execution Vulnerability of Fastjson
- Oracle WebLogic wls9-async Deserialization Remote Command Execution Vulnerability (CNVD-C-2019-48814)
- Defending Against Challenge Collapsar (CC) Attacks
- Using WAF to Block Crawler Attacks
- Verifying a Global Protection Whitelist Rule by Simulating Requests with Postman
- Combining WAF and HSS to Improve Web Page Tampering Protection
- Configuring Header Field Forwarding to Disable Response Packet Compression
- Configuring Origin Server Security
- Using LTS to Analyze WAF Logs
- Obtaining the Real Client IP Addresses
- Configuring Alarms on Cloud Eye for Abnormal WAF Metrics
- Migrating Protection Policies for Your Website
-
API Reference
- Before You Start
- API Overview
- API Calling
-
APIs
-
Managing Websites Protected by Dedicated WAF Engines
- Querying the List of Domain Names Protected by Dedicated WAF Instances
- Adding a Domain Name to a Dedicated WAF Instance
- Modifying a Domain Name Protected by a Dedicated WAF Instance
- Querying Domain Name Settings in Dedicated Mode
- Deleting a Domain Name from a Dedicated WAF Instance
- Modifying the Protection Status of a Domain Name in Dedicated Mode
- Policy Management
-
Rule Management
- Changing the Status of a Rule
- Querying CC Attack Protection Rules
- Creating a CC Attack Protection Rule
- Querying a CC Attack Protection Rule by ID
- Updating a CC Attack Protection Rule
- Deleting a CC Attack Protection Rule
- Querying the List of Precise Protection Rules
- Creating a precise protection rule
- Querying a Precise Protection Rule by ID
- Updating a precise protection rule
- Deleting a precise protection rule
- Creating a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Querying the List of Global Protection Whitelist (Formerly False Alarm Masking) Rules
- Updating a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Deleting a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Querying the Blacklist and Whitelist Rule List
- Creating a Blacklist/Whitelist Rule
- Querying a blacklist or whitelist rule
- Updating a Blacklist or Whitelist Protection Rule
- Querying Global Protection Whitelist (Formerly False Alarm Masking) Rules
- Deleting a Blacklist or Whitelist Rule
- Querying the JavaScript Anti-Crawler Rule List
- Updating a JavaScript Anti-Crawler Protection Rule
- Creating a JavaScript Anti-Crawler Rule
- Querying a JavaScript Anti-Crawler Rule
- Updating a JavaScript Anti-Crawler Rule
- Deleting a JavaScript Anti-Crawler Rule
- Querying the list of Data Masking Rules.
- Creating a Data Masking Rule
- Querying a Data Masking Rule
- Updating a Data Masking Rule
- Deleting a Data Masking Rule
- Querying the List of Known Attack Source Rules
- Creating a Known Attack Source Rule
- Querying a Known Attack Source Rule by ID
- Updating a Known Attack Source Rule
- Deleting a Known Attack Source Rule
- Querying the List of Geolocation Access Control Rules
- Creating a Geolocation Access Control Rule
- Querying a Geolocation Access Control Rule by ID.
- Updating a Geolocation Access Control Rule
- Deleting a Geolocation Access Control Rule
- Querying the List of Web Tamper Protection Rules
- Creating a Web Tamper Protection Rule
- Querying a Web Tamper Protection Rule
- Deleting a Web Tamper Protection Rule
- Updating the Cache for a Web Tamper Protection Rule
- Querying the List of Information Leakage Prevention Rules
- Creating an Information Leakage Prevention Rule
- Querying an Information Leakage Prevention Rule
- Updating an Information Leakage Prevention Rule
- Deleting an Information Leakage Prevention Rule
- Querying the Reference Table List
- Creating a Reference Table
- Querying a Reference Table
- Modifying a Reference Table
- Deleting a Reference Table
- Address Group Management
- Certificate Management
- Event Management
- Dashboard
- Dedicated Instance Management
- Log Reporting
- Managing Your Subscriptions
- Domain Name Management
- System Management
- Alarm Management
-
Protected Website Management in Cloud Mode
- Querying the List of Domain Names Protected in Cloud Mode
- Adding a Domain Name to the Cloud WAF
- Querying Details About a Domain Name by Domain Name ID in Cloud Mode
- Updating Configurations of Domain Names Protected with Cloud WAF
- Deleting a Domain Name from the Cloud WAF
- Changing the Protection Status of a Domain Name
- Obtaining Domain Name Routing Information (in Cloud Mode)
- Querying the Domain Name of a Tenant
- Querying Features Available at a Site
-
Managing Websites Protected by Dedicated WAF Engines
- Appendix
- SDK Reference
-
FAQs
-
About WAF
- WAF Basics
- Can WAF Protect an IP Address?
- What Objects Does WAF Protect?
- Does WAF Block Customized POST Requests?
- Does WAF Protect Traffic from Both IPv4 and IPv6 Addresses?
- What Are the Differences Between the Web Tamper Protection Functions of WAF and HSS?
- Which Web Service Framework Protocols Does WAF Support?
- Can WAF Protect Websites Accessed Through HSTS or NTLM Authentication?
- What Are the Differences Between WAF Forwarding and Nginx Forwarding?
- What Are the Differences Between WAF and CFW?
- Can I Configure Session Cookies in WAF?
- How Does WAF Detect SQL Injection, XSS, and PHP Injection Attacks?
- Can WAF Defend Against the Apache Struts2 Remote Code Execution Vulnerability (CVE-2021-31805)?
- Why Does the Vulnerability Scanning Tool Report Disabled Non-standard Ports for My WAF-Protected Website?
- What Are the Restrictions on Using WAF in Enterprise Projects?
- What Are Local File Inclusion and Remote File Inclusion?
- What Is the Difference Between QPS and the Number of Requests?
- Does WAF Support Custom Authorization Policies?
- Why Do Cookies Contain the HWWAFSESID or HWWAFSESTIME field?
- Can I Switch Between the WAF Cloud Mode and Dedicated Mode?
- Can I Add a Domain Name or IP Address to WAF Under Different Accounts?
- What Are Regions and AZs?
- Can I Use WAF Across Regions?
- In Which Regions Is WAF Available?
- Can I Use WAF Across Enterprise Projects?
- Can I Use a WAF Instance in a Specific Enterprise Project for Other Enterprise Projects?
-
About Purchase and Specifications Change
- Can I Buy Multiple WAF Instances Using the Same Account?
- What Are the Differences Between the Permissions of an Account and Those of IAM Users?
- Can I Share My WAF with Other Accounts?
- How Does WAF Calculate Domain Name Quota Usage?
- Can I Add More Protection Rules?
- What Can I Do If the Website Traffic Exceeds the WAF Service Request Limit?
- What Are the Impacts When QPS Exceeds the Allowed Peak Rate?
- Can I Change WAF Specifications During Renewal?
- Where and When Can I Buy a Domain, QPS, or Rule Expansion Package?
- How Do I Select Service QPS When Purchasing WAF?
- Is Service QPS Calculated Based on Incoming Traffic or Outgoing Traffic?
- Does WAF Have a Limit on the Protection Bandwidth or Shared Bandwidth?
- Where Can I View the Inbound and Outbound Bandwidths of a Protected Website?
-
Website Connect Issues
- How Do I Configure Domain Names to Be Protected When Adding Domain Names?
- Do I Have to Configure the Same Port as That of the Origin Server When Adding a Website to WAF?
- How Do I Whitelist Back-to-Source IP Addresses of Cloud WAF?
- How Long Will CNAME Records Be Retained After I Delete a Domain Name from WAF?
- What Are the Precautions for Configuring Multiple Server Addresses for Backend Servers?
- Does WAF Support Wildcard Domain Names?
- Does WAF Protect Chinese Domain Names?
- How Does WAF Forward Access Requests When Both a Wildcard Domain Name and a Single Domain Name Are Connected to WAF?
- What Can I Do If the Message "Illegal server address" Is Displayed When I Add a Domain Name?
- Why Am I Seeing the "Someone else has already added this domain name. Please confirm that the domain name belongs to you" Error Message?
- Why Cannot I Select a Client Protocol When Adding a Domain Name?
- Can I Set the Origin Server Address to a CNAME Record If I Use Cloud WAF?
- How Do I Verify Domain Ownership Using Huawei Cloud DNS?
- What Are Impacts If No Subdomain Name and TXT Record Are Configured?
- How Do I Query a Domain Name Provider?
- What Are the Differences Between the Old and New CNAME Records?
- Can I Access a Website Using an IP Address After a Domain Name Is Connected to WAF?
- How Can I Forward Requests Directly to the Origin Server Without Passing Through WAF?
- Why Cannot the Protection Mode Be Enabled After a Domain Name Is Connected to WAF?
-
Protection Rules
- Which Protection Levels Can Be Set for Basic Web Protection?
- What Is the Peak Rate of CC Attack Protection?
- When Is Cookie Used to Identify Users?
- What Are the Differences Between Rate Limit and Allowable Frequency in a CC Rule?
- Why Cannot the Verification Code Be Refreshed When Verification Code Is Configured in a CC Attack Protection Rule?
- How Can I Allow Access from .js Files?
- Can I Batch Add IP Addresses to a Blacklist or Whitelist Rule?
- Can I Import or Export a Blacklist or Whitelist into or from WAF?
- Why Does a Requested Page Fail to Respond to the Client After the JavaScript-based Anti-Crawler Is Enabled?
- Is There Any Impact on Website Loading Speed If Other Crawler Check in Anti-Crawler Is Enabled?
- How Does JavaScript Anti-Crawler Detection Work?
- In Which Situations Will the WAF Policies Fail?
- How Do I Allow Requests from Only IP Addresses in a Specified Geographical Region?
- How Do I Allow Only Specified IP Addresses to Access Protected Websites?
- Which Protection Rules Are Included in the System-Generated Policy?
- Why Does the Page Fail to Be Refreshed After WTP Is Enabled?
- What Are the Differences Between Blacklist/Whitelist Rules and Precise Protection Rules on Blocking Access Requests from Specified IP Addresses?
- What Do I Do If a Scanner, such as AppScan, Detects that the Cookie Is Missing Secure or HttpOnly?
- How Do I Block Layer-4 IP Addresses?
- IPv6 Protection
- Certificate Management
-
Protection Event Logs
- Can WAF Log Protection Events?
- Can I Obtain WAF Logs Using APIs?
- How Do I Obtain Data about Block Actions?
- What Does "Mismatch" for "Protective Action" Mean in the Event List?
- How Does WAF Obtain the Real Client IP Address for a Request?
- Can WAF Logs Be Transferred to OBS?
- How Long Can WAF Protection Logs Be Stored?
- Can I Query Protection Events of a Batch of Specified IP Addresses at Once?
- Will WAF Record Unblocked Events?
- Why Is the Traffic Statistics on WAF Inconsistent with That on the Origin Server?
- Why Is the Number of Logs on the Dashboard Page Inconsistent with That on the Configure Logs Tab?
- Why Are There Garbled Characters in Event Data I Exported from WAF?
-
About WAF
-
Troubleshooting
- Troubleshooting Website Connection Exceptions
-
Troubleshooting Certificate and Cipher Suite Issues
- How Do I Fix an Incomplete Certificate Chain?
- Why Does My Certificate Not Match the Key?
- Why Are HTTPS Requests Denied on Some Mobile Phones?
- What Do I Do If the Protocol Is Not Supported and the Client and Server Do Not Support Common SSL Protocol Versions or Cipher Suites?
- Why Is the Bar Mitzvah Attack on SSL/TLS Detected?
-
Troubleshooting Traffic Forwarding Exceptions
- How Do I Troubleshoot 404/502/504 Errors?
- Why Am I Seeing Error Code 418?
- Why Am I Seeing Error Code 523?
- Why Was My Website Redirected So Many Times?
- Why Am I Seeing Error Code 414 Request-URI Too Large?
- What Do I Do If the CPU Usage of the Origin Server Reaches 100%?
- What Is the Connection Timeout Duration of WAF? Can I Manually Set the Timeout Duration?
- Checking Whether Normal Requests Are Blocked Mistakenly
- Checking for Permission Exceptions
- Videos
-
More Documents
-
User Guide (Paris)
- Introduction
- Monitoring Metrics
- Ports Supported by WAF
- Cloud WAF
-
Dedicated WAF Mode
- WAF Operation Guide
- Applying for a Dedicated WAF Instance
- Dashboard
- Events
-
Policies
- How to Configure WAF Protection
- Configuring Basic Protection Rules to Defend Against Common Web Attacks
- Configuring a CC Attack Protection Rule
- Configuring Custom Precise Protection Rules
- Configuring IP Address Blacklist and Whitelist Rules to Block or Allow Specified IP Addresses
- Configuring Geolocation Access Control Rules to Block or Allow Requests from Specific Locations
- Configuring Web Tamper Protection Rules to Prevent Static Web Pages from Being Tampered With
- Configuring Anti-Crawler Rules
- Configuring Information Leakage Prevention Rules to Protect Sensitive Information from Leakage
- Configuring a Global Protection Whitelist Rule to Ignore False Alarms
- Configuring Data Masking Rules to Prevent Privacy Information Leakage
- Creating a Reference Table to Configure Protection Metrics In Batches
- Configuring a Known Attack Source Rule to Block Specific Visitors for a Specified Duration
- Condition Field Description
- Managing Policies
- Website Settings
- Certificate Management
- System Management
- Authorizing and Associating an Enterprise Project
- Auditing
-
Best Practices
-
Mitigating Web Security Vulnerabilities
- Java Spring Framework Remote Code Execution Vulnerability
- Apache Dubbo Deserialization Vulnerability
- DoS Vulnerability in the Open-Source Component Fastjson
- Remote Code Execution Vulnerability of Fastjson
- Oracle WebLogic wls9-async Deserialization Remote Command Execution Vulnerability (CNVD-C-2019-48814)
- Configuring the Minimum TLS Version and Cipher Suite to Better Secure Connections
- Configuring CC Attack Protection
- Configuring Anti-Crawler Rules to Prevent Crawler Attacks
- Configuring an Access Control Policy on an ECS or ELB to Protect Origin Servers
- Configuring Basic Web Protection
- Handling False Alarms to Get Improved Basic Web Protection
- Verifying a Global Protection Whitelist (Formerly False Alarm Masking) Rule by Simulating Requests with Postman
- WAF Cloud Mode Access Configuration
- Upgrading a Dedicated WAF Instance
- Obtaining Real Client IP Addresses
- Using LTS to Quickly Query and Analyze WAF Access Logs
- Using LTS to Analyze How WAF Blocks Spring Core RCE Vulnerability in Real Time
- Using LTS to Configure Block Alarms for WAF Rules
- Combining WAF and Layer-7 Load Balancers to Protect Services over Any Ports
- Combining WAF and HSS to Get Improved Web Tamper Protection
-
Mitigating Web Security Vulnerabilities
- IAM Permissions Management
-
FAQs
-
About the Product
- FAQs for Beginners
-
WAF Functions
- Can WAF Protect an IP Address?
- What Objects Does WAF Protect?
- About WAF Protection
- Can I Configure Session Cookies in WAF?
- Does WAF Block Customized POST Requests?
- What Are the Differences Between the Web Tamper Protection Functions of WAF and HSS?
- Which Web Service Framework Protocols Does WAF Support?
- Can WAF Protect Websites Accessed Through HSTS or NTLM Authentication?
- What Are the Differences Between WAF Forwarding and Nginx Forwarding?
- How Does WAF Detect SQL Injection, XSS, and PHP Injection Attacks?
- Can WAF Defend Against the Apache Struts2 Remote Code Execution Vulnerability (CVE-2021-31805)?
-
WAF Usage
- Why Does the Vulnerability Scanning Tool Report Disabled Non-standard Ports for My WAF-Protected Website?
- How Do I Obtain the Real IP Address of a Web Visitor?
- What Are Local File Inclusion and Remote File Inclusion?
- What Is the Difference Between QPS and the Number of Requests?
- Does WAF Support Custom Authorization Policies?
- Can I Add a Domain Name or IP Address to WAF Under Different Accounts?
- How Do I Configure My Server to Allow Only Requests from WAF?
- Why Do Cookies Contain the HWWAFSESID or HWWAFSESTIME field?
- Can I Switch Between the WAF Cloud Mode and Dedicated Mode?
- How Do I Configure WAF If a Reverse Proxy Server Is Deployed for My Website?
- How Does WAF Forward Access Requests When Both a Wildcard Domain Name and a Single Domain Name Are Connected to WAF?
- Enterprise Project
- Service Request/Specification
- About Billing
-
Website Access Configuration
-
Domain Name and Port Configuration
- How Do I Add a Domain Name/IP Address to WAF?
- Which Non-Standard Ports Does WAF Support?
- How Do I Use a Dedicated WAF Instance to Protect Non-Standard Ports That Are Not Supported by the Dedicated Instance?
- How Do I Configure Domain Names to Be Protected When Adding Domain Names?
- Do I Have to Configure the Same Port as That of the Origin Server When Adding a Website to WAF?
- How Do I Configure Non-standard Ports When Adding a Protected Domain Name?
- What Can I Do If One of Ports on an Origin Server Does Not Require WAF Protection?
- What Data Is Required for Connecting a Domain Name/IP Address to WAF?
- How Do I Safely Delete a Protected Domain Name?
- Can I Change the Domain Name That Has Been Added to WAF?
- What Are the Precautions for Configuring Multiple Server Addresses for Backend Servers?
- Does WAF Support Wildcard Domain Names?
- How Do I Route Website Traffic to My Cloud WAF Instance?
- Can I Configure Multiple Load Balancers for a Dedicated WAF Instance?
- Certificate Management
- Server Configuration
- Domain Name Resolution
- Operations After Connecting Websites to WAF
-
Domain Name and Port Configuration
-
Service Interruption Check
- How Do I Troubleshoot 500/502/504 Errors?
- Why Is My Domain Name or IP Address Inaccessible?
- How Do I Handle False Alarms as WAF Blocks Normal Requests to My Website?
- Why Are HTTPS Requests Denied on Some Mobile Phones?
- How Do I Fix an Incomplete Certificate Chain?
- Why Does My Certificate Not Match the Key?
- Why Am I Seeing Error Code 418?
- How Can I Upload Files After the Website Is Connected to WAF?
- Why Does WAF Block Normal Requests as Invalid Requests?
- How Do I Whitelist IP Address Ranges of Cloud WAF?
- What Is the Connection Timeout Duration of WAF? Can I Manually Set the Timeout Duration?
- How Do I Solve the Problem of Excessive Redirection Times?
- Why Am I Seeing Error Code 523?
- Why Does the Website Login Page Continuously Refreshed After a Domain Name Is Connected to WAF?
- Why Does the Requested Page Respond Slowly After the HTTP Forwarding Policy Is Configured?
- Why Am I Seeing Error Code 414 Request-URI Too Large?
- What Do I Do If the Protocol Is Not Supported and the Client and Server Do Not Support Common SSL Protocol Versions or Cipher Suites?
- Why Cannot I Access the Dedicated Engine Page?
- Why Is the Bar Mitzvah Attack on SSL/TLS Detected?
-
Protection Rule Configuration
- Basic Web Protection
- CC Attack Protection Rules
- Precise Protection rules
- Anti-Crawler Protection
-
Others
- In Which Situations Will the WAF Policies Fail?
- Can I Export or Back Up the WAF Configuration?
- What Working Modes and Protection Mechanisms Does WAF Have?
- Which Protection Rules Are Included in the System-Generated Policy?
- What Types of Protection Rules Does WAF Support?
- Which of the WAF Protection Rules Support the Log-Only Protective Action?
- Why Does the Page Fail to Be Refreshed After WTP Is Enabled?
- What Are the Differences Between Blacklist/Whitelist Rules and Precise Protection Rules on Blocking Access Requests from Specified IP Addresses?
- What Do I Do If a Scanner, such as AppScan, Detects that the Cookie Is Missing Secure or HttpOnly?
-
About the Product
- Change History
-
User Guide (ME-Abu Dhabi Region)
- Service Overview
- WAF Operation Guide
- Enabling WAF
- Dashboard
- Events
-
Policies
- How to Configure WAF Protection
- Configuring Basic Protection Rules to Defend Against Common Web Attacks
- Configuring a CC Attack Protection Rule
- Configuring Custom Precise Protection Rules
- Configuring IP Address Blacklist and Whitelist Rules to Block or Allow Specified IP Addresses
- Configuring Geolocation Access Control Rules to Block or Allow Requests from Specific Locations
- Configuring Web Tamper Protection Rules to Prevent Static Web Pages from Being Tampered With
- Configuring Anti-Crawler Rules
- Configuring Information Leakage Prevention Rules to Protect Sensitive Information from Leakage
- Configuring a Global Protection Whitelist Rule to Ignore False Alarms
- Configuring Data Masking Rules to Prevent Privacy Information Leakage
- Creating a Reference Table to Configure Protection Metrics In Batches
- Configuring a Known Attack Source Rule to Block Specific Visitors for a Specified Duration
- Condition Field Description
- Managing Policies
- Website Settings
- Object Management
- System Management
- Permissions Management
- Monitoring and Auditing
-
FAQs
-
About WAF
- FAQs for Beginners
-
WAF Functions
- Can WAF Protect an IP Address?
- What Objects Does WAF Protect?
- Does WAF Block Customized POST Requests?
- What Are the Differences Between the Web Tamper Protection Functions of WAF and HSS?
- Which Web Service Framework Protocols Does WAF Support?
- Can WAF Protect Websites Accessed Through HSTS or NTLM Authentication?
- What Are the Differences Between WAF Forwarding and Nginx Forwarding?
- Can I Configure Session Cookies in WAF?
- How Does WAF Detect SQL Injection, XSS, and PHP Injection Attacks?
- Can WAF Defend Against the Apache Struts2 Remote Code Execution Vulnerability (CVE-2021-31805)?
-
WAF Usage
- Why Does the Vulnerability Scanning Tool Report Disabled Non-standard Ports for My WAF-Protected Website?
- How Do I Obtain the Real IP Address of a Web Visitor?
- Will Traffic Be Permitted After WAF Is Switched to the Bypassed Mode?
- What Are Local File Inclusion and Remote File Inclusion?
- What Is the Difference Between QPS and the Number of Requests?
- Does WAF Support Custom Authorization Policies?
- How Do I Configure My Server to Allow Only Requests from WAF?
- Why Do Cookies Contain the HWWAFSESID or HWWAFSESTIME field?
- Can I Switch Between the WAF Cloud Mode and Dedicated Mode?
- How Do I Configure WAF If a Reverse Proxy Server Is Deployed for My Website?
- How Does WAF Forward Access Requests When Both a Wildcard Domain Name and a Single Domain Name Are Connected to WAF?
- Service Request/Specification
-
Website Domain Name Access Configuration
-
Domain Name and Port Configuration
- How Do I Add a Domain Name/IP Address to WAF?
- Which Non-Standard Ports Does WAF Support?
- How Do I Use a Dedicated WAF Instance to Protect Non-Standard Ports That Are Not Supported by the Dedicated Instance?
- How Do I Configure Domain Names to Be Protected When Adding Domain Names?
- Do I Have to Configure the Same Port as That of the Origin Server When Adding a Website to WAF?
- How Do I Configure Non-standard Ports When Adding a Protected Domain Name?
- What Can I Do If One of Ports on an Origin Server Does Not Require WAF Protection?
- What Data Is Required for Connecting a Domain Name/IP Address to WAF?
- How Do I Safely Delete a Protected Domain Name?
- Can I Change the Domain Name That Has Been Added to WAF?
- What Are the Precautions for Configuring Multiple Server Addresses for Backend Servers?
- Does WAF Support Wildcard Domain Names?
- How Do I Route Website Traffic to My Cloud WAF Instance?
- Can I Configure Multiple Load Balancers for a Dedicated WAF Instance?
- Why Am I Seeing the "Someone else has already added this domain name. Please confirm that the domain name belongs to you" Error Message?
- Certificate Management
- Server Configuration
- Operations After Connecting Websites to WAF
-
Domain Name and Port Configuration
-
Service Interruption Check
- How Do I Troubleshoot 404/502/504 Errors?
- Why Is My Domain Name or IP Address Inaccessible?
- How Do I Handle False Alarms as WAF Blocks Normal Requests to My Website?
- Why Does WAF Block Normal Requests as Invalid Requests?
- How Do I Whitelist IP Address Ranges of Cloud WAF?
- What Is the Connection Timeout Duration of WAF? Can I Manually Set the Timeout Duration?
- How Do I Solve the Problem of Excessive Redirection Times?
- Why Are HTTPS Requests Denied on Some Mobile Phones?
- How Do I Fix an Incomplete Certificate Chain?
- Why Does My Certificate Not Match the Key?
- Why Am I Seeing Error Code 418?
- Why Am I Seeing Error Code 523?
- Why Does the Website Login Page Continuously Refreshed After a Domain Name Is Connected to WAF?
- Why Does the Requested Page Respond Slowly After the HTTP Forwarding Policy Is Configured?
- How Can I Upload Files After the Website Is Connected to WAF?
- Why Am I Seeing Error Code 414 Request-URI Too Large?
- What Do I Do If the Protocol Is Not Supported and the Client and Server Do Not Support Common SSL Protocol Versions or Cipher Suites?
- Why Cannot I Access the Dedicated Engine Page?
- Why Is the Bar Mitzvah Attack on SSL/TLS Detected?
-
Protection Rule Configuration
- Basic Web Protection
-
CC Attack Protection Rules
- What Is the Peak Rate of CC Attack Protection?
- How Do I Configure a CC Attack Protection Rule?
- When Is Cookie Used to Identify Users?
- What Are the Differences Between Rate Limit and Allowable Frequency in a CC Rule?
- Why Cannot the Verification Code Be Refreshed When Verification Code Is Configured in a CC Attack Protection Rule?
- Precise Protection rules
- IP Address Blacklist and Whitelist
- Anti-Crawler Protection
-
Others
- In Which Situations Will the WAF Policies Fail?
- What Working Modes and Protection Mechanisms Does WAF Have?
- What Types of Protection Rules Does WAF Support?
- Which of the WAF Protection Rules Support the Log-Only Protective Action?
- How Do I Allow Only Specified IP Addresses to Access Protected Websites?
- Which Protection Rules Are Included in the System-Generated Policy?
- Why Does the Page Fail to Be Refreshed After WTP Is Enabled?
- What Are the Differences Between Blacklist/Whitelist Rules and Precise Protection Rules on Blocking Access Requests from Specified IP Addresses?
- What Do I Do If a Scanner, such as AppScan, Detects that the Cookie Is Missing Secure or HttpOnly?
-
Protection Event Logs
- Can WAF Log Protection Events?
- How Do I Obtain Data about Block Actions?
- What Does "Mismatch" for "Protective Action" Mean in the Event List?
- How Long Can WAF Protection Logs Be Stored?
- Can I Query Protection Events of a Batch of Specified IP Addresses at Once?
- Will WAF Record Unblocked Events?
- Why Is the Traffic Statistics on WAF Inconsistent with That on the Origin Server?
-
About WAF
- Change History
-
User Guide (Kuala Lumpur Region)
- Service Overview
- WAF Operation Guide
- Enabling WAF
- Dashboard
- Events
-
Policies
- How to Configure WAF Protection
- Configuring Basic Protection Rules to Defend Against Common Web Attacks
- Configuring a CC Attack Protection Rule
- Configuring Custom Precise Protection Rules
- Configuring IP Address Blacklist and Whitelist Rules to Block or Allow Specified IP Addresses
- Configuring Geolocation Access Control Rules to Block or Allow Requests from Specific Locations
- Configuring Web Tamper Protection Rules to Prevent Static Web Pages from Being Tampered With
- Configuring Anti-Crawler Rules
- Configuring Information Leakage Prevention Rules to Protect Sensitive Information from Leakage
- Configuring a Global Protection Whitelist Rule to Ignore False Alarms
- Configuring Data Masking Rules to Prevent Privacy Information Leakage
- Creating a Reference Table to Configure Protection Metrics In Batches
- Configuring a Known Attack Source Rule to Block Specific Visitors for a Specified Duration
- Condition Field Description
- Managing Policies
- Website Settings
- Object Management
- System Management
- Permissions Management
- Monitoring and Auditing
-
FAQs
-
About WAF
- FAQs for Beginners
-
WAF Functions
- Can WAF Protect an IP Address?
- What Objects Does WAF Protect?
- Does WAF Block Customized POST Requests?
- What Are the Differences Between the Web Tamper Protection Functions of WAF and HSS?
- Which Web Service Framework Protocols Does WAF Support?
- Can WAF Protect Websites Accessed Through HSTS or NTLM Authentication?
- What Are the Differences Between WAF Forwarding and Nginx Forwarding?
- Can I Configure Session Cookies in WAF?
- How Does WAF Detect SQL Injection, XSS, and PHP Injection Attacks?
- Can WAF Defend Against the Apache Struts2 Remote Code Execution Vulnerability (CVE-2021-31805)?
-
WAF Usage
- Why Does the Vulnerability Scanning Tool Report Disabled Non-standard Ports for My WAF-Protected Website?
- How Do I Obtain the Real IP Address of a Web Visitor?
- What Are Local File Inclusion and Remote File Inclusion?
- What Is the Difference Between QPS and the Number of Requests?
- How Do I Configure My Server to Allow Only Requests from WAF?
- Why Do Cookies Contain the HWWAFSESID or HWWAFSESTIME field?
- Can I Switch Between the WAF Cloud Mode and Dedicated Mode?
- How Do I Configure WAF If a Reverse Proxy Server Is Deployed for My Website?
- How Does WAF Forward Access Requests When Both a Wildcard Domain Name and a Single Domain Name Are Connected to WAF?
- Service Request/Specification
-
Website Domain Name Access Configuration
-
Domain Name and Port Configuration
- How Do I Add a Domain Name/IP Address to WAF?
- Which Non-Standard Ports Does WAF Support?
- How Do I Use a Dedicated WAF Instance to Protect Non-Standard Ports That Are Not Supported by the Dedicated Instance?
- How Do I Configure Domain Names to Be Protected When Adding Domain Names?
- Do I Have to Configure the Same Port as That of the Origin Server When Adding a Website to WAF?
- How Do I Configure Non-standard Ports When Adding a Protected Domain Name?
- What Can I Do If One of Ports on an Origin Server Does Not Require WAF Protection?
- What Data Is Required for Connecting a Domain Name/IP Address to WAF?
- How Do I Safely Delete a Protected Domain Name?
- Can I Change the Domain Name That Has Been Added to WAF?
- What Are the Precautions for Configuring Multiple Server Addresses for Backend Servers?
- Does WAF Support Wildcard Domain Names?
- How Do I Route Website Traffic to My Cloud WAF Instance?
- Can I Configure Multiple Load Balancers for a Dedicated WAF Instance?
- Why Am I Seeing the "Someone else has already added this domain name. Please confirm that the domain name belongs to you" Error Message?
- Certificate Management
- Server Configuration
- Operations After Connecting Websites to WAF
-
Domain Name and Port Configuration
-
Service Interruption Check
- How Do I Troubleshoot 404/502/504 Errors?
- Why Is My Domain Name or IP Address Inaccessible?
- How Do I Handle False Alarms as WAF Blocks Normal Requests to My Website?
- Why Does WAF Block Normal Requests as Invalid Requests?
- How Do I Whitelist IP Address Ranges of Cloud WAF?
- What Is the Connection Timeout Duration of WAF? Can I Manually Set the Timeout Duration?
- How Do I Solve the Problem of Excessive Redirection Times?
- Why Are HTTPS Requests Denied on Some Mobile Phones?
- How Do I Fix an Incomplete Certificate Chain?
- Why Does My Certificate Not Match the Key?
- Why Am I Seeing Error Code 418?
- Why Am I Seeing Error Code 523?
- Why Does the Website Login Page Continuously Refreshed After a Domain Name Is Connected to WAF?
- Why Does the Requested Page Respond Slowly After the HTTP Forwarding Policy Is Configured?
- How Can I Upload Files After the Website Is Connected to WAF?
- Why Am I Seeing Error Code 414 Request-URI Too Large?
- What Do I Do If the Protocol Is Not Supported and the Client and Server Do Not Support Common SSL Protocol Versions or Cipher Suites?
- Why Cannot I Access the Dedicated Engine Page?
- Why Is the Bar Mitzvah Attack on SSL/TLS Detected?
-
Protection Rule Configuration
- Basic Web Protection
- CC Attack Protection Rules
- Precise Protection rules
- IP Address Blacklist and Whitelist
- Anti-Crawler Protection
-
Others
- In Which Situations Will the WAF Policies Fail?
- What Working Modes and Protection Mechanisms Does WAF Have?
- What Types of Protection Rules Does WAF Support?
- Which of the WAF Protection Rules Support the Log-Only Protective Action?
- Which Protection Rules Are Included in the System-Generated Policy?
- Why Does the Page Fail to Be Refreshed After WTP Is Enabled?
- What Are the Differences Between Blacklist/Whitelist Rules and Precise Protection Rules on Blocking Access Requests from Specified IP Addresses?
- What Do I Do If a Scanner, such as AppScan, Detects that the Cookie Is Missing Secure or HttpOnly?
-
Protection Event Logs
- Can WAF Log Protection Events?
- How Do I Obtain Data about Block Actions?
- What Does "Mismatch" for "Protective Action" Mean in the Event List?
- How Long Can WAF Protection Logs Be Stored?
- Can I Query Protection Events of a Batch of Specified IP Addresses at Once?
- Will WAF Record Unblocked Events?
- Why Is the Traffic Statistics on WAF Inconsistent with That on the Origin Server?
-
About WAF
- Change History
-
User Guide (Ankara Region)
- Service Overview
- Overview
- Applying for a Dedicated WAF Engine
- Enabling WAF Protection
-
Website Domain Name Management
- Viewing Basic Information
- Switching WAF Working Mode
- Configuring the Minimum TLS Version and Cipher Suite
- Configuring Connection Timeout
- Configuring Connection Protection
- Updating a Certificate
- Configuring a Traffic Identifier for a Known Attack Source
- Editing Server Information
- Modifying the Alarm Page
- Removing a Protected Website from WAF
- Certificate Management
- Managing IP Address Blacklist and Whitelist Groups
-
Rule Configuration
- Configuration Guidance
- Configuring Basic Web Protection Rules
- Configuring a CC Attack Protection Rule
- Configuring a Precise Protection Rule
- Adding a Reference Table
- Configuring an IP Address Blacklist or Whitelist Rule
- Configuring a Known Attack Source Rule
- Configuring a Geolocation Access Control Rule
- Configuring a Web Tamper Protection Rule
- Configuring Anti-Crawler Rules
- Configuring an Information Leakage Prevention Rule
- Configuring a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Configuring a Data Masking Rule
- Dashboard
- Event Management
- Enabling Alarm Notifications
- Policy Management
- Dedicated WAF Engine Management
- Viewing Product Details
- Permissions Management
-
FAQs
-
About WAF
-
WAF Functions
- Can WAF Protect an IP Address?
- What Objects Does WAF Protect?
- Which OSs Does WAF Support?
- Which Layers Does WAF Provide Protection At?
- Does WAF Support File Caching?
- About WAF Protection
- Does WAF Support Two-Way SSL Authentication?
- Does WAF Support Application Layer Protocol- and Content-Based Access Control?
- Can WAF Check the Body I Add to a POST Request?
- Can WAF Limit the Access Speed of a Domain Name?
- Can WAF Block Data Packets in multipart/form-data Format?
- Can a WAF Instance Be Deployed in the VPC?
- Can WAF Block URL Requests That Contain Special Characters?
- Can WAF Block Spam and Malicious User Registrations?
- Can WAF Block Requests for Calling Other APIs from Web Pages?
- Can I Configure Session Cookies in WAF?
- Does WAF Block Customized POST Requests?
- Can WAF Limit Access Through Domain Names?
- Does WAF Have the IPS Module?
- Which Web Service Framework Protocols Does WAF Support?
- Can WAF Protect Websites Accessed Through HSTS or NTLM Authentication?
- What Are the Differences Between WAF Forwarding and Nginx Forwarding?
- Does WAF Cache Website Data?
- Is WAF a Hardware Firewall or a Software Firewall?
- Is There Any Impact on Origin Servers If I Enable HTTP/2 in WAF?
- How Does WAF Detect SQL Injection and XSS Attacks?
- Can WAF Defend Against the Apache Struts2 Remote Code Execution Vulnerability (CVE-2021-31805)?
- Does a Dedicated WAF Instance Support Cross-VPC Protection?
-
WAF Usage
- Why Does the Vulnerability Scanning Tool Report Disabled Non-standard Ports for My WAF-Protected Website?
- Does WAF Affect Email Ports or Email Receiving and Sending?
- How Do I Obtain the Real IP Address of a Web Visitor?
- How Does WAF Block Requests?
- What Are Local File Inclusion and Remote File Inclusion?
- What Is the Difference Between QPS and the Number of Requests?
- What Are Concurrent Requests?
- Can WAF Block Requests When a Certificate Is Mounted on ELB?
- Does WAF Affect My Existing Workloads and Server Running?
- How Do I Configure My Server to Allow Only Requests from WAF?
- Why Do Cookies Contain the HWWAFSESID or HWWAFSESTIME field?
- How Do I Configure WAF If a Reverse Proxy Server Is Deployed for My Website?
- How Does WAF Forward Access Requests When Both a Wildcard Domain Name and a Single Domain Name Are Connected to WAF?
- Does WAF Affect Data Transmission from the Internal Network to an External Network?
- Do I Need to Make Some Changes in WAF If the Security Group for Origin Server (Address) Is Changed?
-
WAF Functions
-
Website Domain Name Access Configuration
-
Domain Name and Port Configuration
- How Do I Add a Domain Name/IP Address to WAF?
- Which Non-Standard Ports Does WAF Support?
- Can WAF Protect Multiple Domain Names That Point to the Same Origin Server?
- How Do I Configure Domain Names to Be Protected When Adding Domain Names?
- Do I Have to Configure the Same Port as That of the Origin Server When Adding a Website to WAF?
- What Can I Do If One of Ports on an Origin Server Does Not Require WAF Protection?
- What Data Is Required for Connecting a Domain Name/IP Address to WAF?
- How Do I Safely Delete a Protected Domain Name?
- Can I Change the Domain Name That Has Been Added to WAF?
- What Are the Precautions for Configuring Multiple Server Addresses for Backend Servers?
- Does WAF Support Wildcard Domain Names?
- Can I Configure Multiple Load Balancers for a Dedicated WAF Instance?
- Why Am I Seeing the "Someone else has already added this domain name. Please confirm that the domain name belongs to you" Error Message?
- Certificate Management
-
Domain Name and Port Configuration
-
Service Interruption Check
- How Do I Troubleshoot 404/502/504 Errors?
- Why Is My Domain Name or IP Address Inaccessible?
- How Do I Handle False Alarms as WAF Blocks Normal Requests to My Website?
- Why Does WAF Block Normal Requests as Invalid Requests?
- What Is the Connection Timeout Duration of WAF? Can I Manually Set the Timeout Duration?
- How Do I Solve the Problem of Excessive Redirection Times?
- Why Are HTTPS Requests Denied on Some Mobile Phones?
- How Do I Fix an Incomplete Certificate Chain?
- Why Does My Certificate Not Match the Key?
- Why Am I Seeing Error Code 418?
- Why Am I Seeing Error Code 523?
- Why Does the Website Login Page Continuously Refreshed After a Domain Name Is Connected to WAF?
- Why Does the Requested Page Respond Slowly After the HTTP Forwarding Policy Is Configured?
- How Can I Upload Files After the Website Is Connected to WAF?
- Why Is the Bar Mitzvah Attack on SSL/TLS Detected?
-
Protection Rule Configuration
- Basic Web Protection
- CC Attack Protection Rules
- Precise Protection rules
- Anti-Crawler Protection
-
Others
- In Which Situations Will the WAF Policies Fail?
- Is the Path of a WAF Protection Rule Case-sensitive?
- What Protection Rules Does WAF Support?
- Which of the WAF Protection Rules Support the Log-Only Protective Action?
- Why Does the Page Fail to Be Refreshed After WTP Is Enabled?
- What Are the Differences Between Blacklist/Whitelist Rules and Precise Protection Rules on Blocking Access Requests from Specified IP Addresses?
- What Do I Do If a Scanner, such as AppScan, Detects that the Cookie Is Missing Secure or HttpOnly?
-
About WAF
- Change History
-
API Reference (Paris)
- Before You Start
- API Overview
- API Calling
-
APIs
-
Cloud Mode
- Resource Quotas
- Domain Names
- Certificate Management
- Protection Status and Domain Setup
- Policies
- Blacklist and Whitelist Rules
- CC Attack Protection Rules
- Precise Protection Rules
- Data Masking Rules
- Web Tamper Protection Rules
- False Alarm Masking Rules
-
Event Logs
- Querying Attack Event Logs
- Querying Attack Event Logs by ID
- Querying Event Distribution
- Querying Request Statistics and Attack Statistics in a Specified Time Range
- Querying the Total Number of Attacks
- Querying Top N Attack Source IP Addresses
- Querying the Number of Attack Source IP Addresses
- Querying the Total Number of Requests per Second
- Querying the List of Event Log Files
- Alarm Notification
- Obtaining Option Details
- Interconnecting with Cloud Eye
-
Dedicated Mode
- Dedicated Instance Management
- Domain Names Protected by WAF
- Protection Status and Domain Name Access
- Policy Management
- Blacklist and Whitelist Rule Management
- CC Attack Protection Rule Management
- Precise Protection Rule Management
- Data Masking Rule Management
- Web Tamper Protection Rule Management
- False Alarm Masking Rule Management
- Dashboard
- Protection Event Management
- Certificate Management
-
Cloud Mode
- Permissions and Supported Actions
- Appendix
- Change History
-
API Reference (Kuala Lumpur Region)
- Before You Start
- API Overview
- API Calling
-
API
- Policy Management
-
Rule Management
- Querying False Alarm Masking Rules
- Querying the Reference Table List
- Creating a Reference Table
- Modifying a Reference Table
- Deleting a Reference Table
- Querying the List of Blacklist and Whitelist Rules
- Creating a Whitelist or Blacklist Rule
- Updating a Whitelist or Blacklist Rule
- Deleting a Whitelist or Blacklist Rule
- Adding a Data Masking Rule
- Querying a Data Masking Rule
- Updating a Data Masking Rule
- Deleting a Data Masking Rule
- Querying the Geolocation Access Control Rule List
- Creating a Geolocation Access Control Rule
- Updating a Geolocation Access Control Rule
- Deleting a Geolocation Access Control Rule
- Querying the List of Web Tamper Protection Rules
- Creating a Web Tamper Protection Rule
- Deleting a Web Tamper Protection Rule
- Changing the Status of a Rule
- Certificate Management
- Event Management
-
Protected Website Management in Dedicated Mode
- Connecting a Domain Name to a Dedicated WAF Instance
- Querying the List of Domain Names Connected to Dedicated WAF Instances
- Modifying the Configuration of a Domain Name Connected to a Dedicated WAF Instance
- Querying the Domain Name Configuration in Dedicated Mode
- Deleting a Domain Name from a Dedicated WAF Instance
- Modifying the Protection Status of a Domain Name Connected to a Dedicated WAF Instance
- Dashboard
- Querying the Protected Domain Names
- Querying Features Available in a Site
-
Managing Websites Protected by Cloud WAF
- Querying Domain Names Protected by Cloud WAF
- Adding a Domain Name to Cloud WAF
- Modifying the Protection Status for a Domain Name
- Obtaining Domain Name Route Information in Cloud Mode
- Querying a Domain Name Protected by Cloud WAF by ID
- Updating a Domain Name Protected by Cloud WAF
- Removing a Domain Name from Cloud WAF
- Appendix
- Change History
-
API Reference (Ankara Region)
- Before You Start
- API Overview
- API Calling
-
APIs
-
Managing Websites Protected by Dedicated WAF Engines
- Querying Domain Names Protected by Dedicated WAF Engines
- Adding a Domain Name to a Dedicated WAF Instance
- Modifying a Domain Name Protected by a Dedicated WAF Instance
- Querying Domain Name Settings in Dedicated Mode
- Deleting a Domain Name from a Dedicated WAF Instance
- Modifying the Protection Status of a Domain Name in Dedicated Mode
- Policy Management
-
Rule Management
- Changing the Status of a Rule
- Querying Global Protection Whitelist (Formerly False Alarm Masking) Rules
- Creating a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Deleting a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Querying the Blacklist and Whitelist Rule List
- Creating a Blacklist/Whitelist Rule
- Updating a Blacklist or Whitelist Protection Rule
- Deleting a Blacklist or Whitelist Rule
- Querying a Data Masking Rule
- Creating a Data Masking Rule
- Updating a Data Masking Rule
- Deleting a Data Masking Rule
- Querying the List of Geolocation Access Control Rules
- Creating a Geolocation Access Control Rule
- Updating a Geolocation Access Control Rule
- Deleting a Geolocation Access Control Rule
- Querying the List of Web Tamper Protection Rules
- Creating a Web Tamper Protection Rule
- Deleting a Web Tamper Protection Rule
- Querying the Reference Table List
- Creating a Reference Table
- Modifying a Reference Table
- Deleting a Reference Table
- Certificate Management
- Event Management
- Querying the Domain Name of a Tenant
-
Managing Websites Protected by Dedicated WAF Engines
- Appendix
- Change History
-
API Reference (ME-Abu Dhabi Region)
- Before You Start
- API Calling
-
APIs
-
Managing Websites Protected by Dedicated WAF Engines
- Querying Domain Names Protected by Dedicated WAF Engines
- Adding a Domain Name to a Dedicated WAF Instance
- Modifying a Domain Name Protected by a Dedicated WAF Instance
- Querying Domain Name Settings in Dedicated Mode
- Deleting a Domain Name from a Dedicated WAF Instance
- Modifying the Protection Status of a Domain Name in Dedicated Mode
- Policy Management
-
Rule Management
- Changing the Status of a Rule
- Querying Global Protection Whitelist (Formerly False Alarm Masking) Rules
- Creating a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Deleting a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Querying the Blacklist and Whitelist Rule List
- Creating a Blacklist/Whitelist Rule
- Updating a Blacklist or Whitelist Protection Rule
- Deleting a Blacklist or Whitelist Rule
- Querying a Data Masking Rule
- Creating a Data Masking Rule
- Updating a Data Masking Rule
- Deleting a Data Masking Rule
- Querying the List of Geolocation Access Control Rules
- Creating a Geolocation Access Control Rule
- Updating a Geolocation Access Control Rule
- Deleting a Geolocation Access Control Rule
- Querying the List of Web Tamper Protection Rules
- Creating a Web Tamper Protection Rule
- Deleting a Web Tamper Protection Rule
- Querying the Reference Table List
- Creating a Reference Table
- Modifying a Reference Table
- Deleting a Reference Table
- Certificate Management
- Event Management
- Querying the Domain Name of a Tenant
-
Managing Websites Protected by Dedicated WAF Engines
- Querying Domain Names Protected by Dedicated WAF Engines
- Adding a Domain Name to a Dedicated WAF Instance
- Modifying a Domain Name Protected by a Dedicated WAF Instance
- Querying Domain Name Settings in Dedicated Mode
- Deleting a Domain Name from a Dedicated WAF Instance
- Modifying the Protection Status of a Domain Name in Dedicated Mode
- Policy Management
-
Rule Management
- Changing the Status of a Rule
- Querying Global Protection Whitelist (Formerly False Alarm Masking) Rules
- Creating a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Deleting a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Querying the Blacklist and Whitelist Rule List
- Creating a Blacklist/Whitelist Rule
- Updating a Blacklist or Whitelist Protection Rule
- Deleting a Blacklist or Whitelist Rule
- Querying a Data Masking Rule
- Creating a Data Masking Rule
- Updating a Data Masking Rule
- Deleting a Data Masking Rule
- Querying the List of Geolocation Access Control Rules
- Creating a Geolocation Access Control Rule
- Updating a Geolocation Access Control Rule
- Deleting a Geolocation Access Control Rule
- Querying the List of Web Tamper Protection Rules
- Creating a Web Tamper Protection Rule
- Deleting a Web Tamper Protection Rule
- Querying the Reference Table List
- Creating a Reference Table
- Modifying a Reference Table
- Deleting a Reference Table
- Certificate Management
- Event Management
- Querying the Domain Name of a Tenant
-
Protected Website Management in Cloud Mode
- This API is used to query the list of domain names protected in cloud mode.
- Adding a Domain Name to the Cloud WAF
- Querying Details About a Domain Name by Domain Name ID in Cloud Mode
- Updating Configurations of Domain Names Protected with Cloud WAF
- Deleting a Domain Name from the Cloud WAF
- Changing Protection Status of a Domain Name
- Dedicated Instance Management
-
Managing Websites Protected by Dedicated WAF Engines
- Querying Domain Names Protected by Dedicated WAF Engines
- Adding a Domain Name to a Dedicated WAF Instance
- Modifying a Domain Name Protected by a Dedicated WAF Instance
- Querying Domain Name Settings in Dedicated Mode
- Deleting a Domain Name from a Dedicated WAF Instance
- Modifying the Protection Status of a Domain Name in Dedicated Mode
- Policy Management
-
Rule Management
- Changing the Status of a Rule
- Querying False Alarm Masking Rules
- Creating a Global Protection Whitelist (Formerly False Alarm Masking) Rule
- Deleting a False Alarm Masking Rule
- Querying the Blacklist and Whitelist Rule List
- Creating a Blacklist/Whitelist Rule
- Updating a Blacklist or Whitelist Protection Rule
- Deleting a Blacklist or Whitelist Rule
- Querying a Data Masking Rule
- Creating a Data Masking Rule
- Updating a Data Masking Rule
- Deleting a Data Masking Rule
- Querying the List of Geolocation Access Control Rules
- Creating a Geolocation Access Control Rule
- Updating a Geolocation Access Control Rule
- Deleting a Geolocation Access Control Rule
- Querying the List of Web Tamper Protection Rules
- Creating a Web Tamper Protection Rule
- Deleting a Web Tamper Protection Rule
- Querying the Reference Table List
- Creating a Reference Table
- Modifying a Reference Table
- Deleting a Reference Table
- Certificate Management
- Dashboard
- Event Management
- Querying the Domain Name of a Tenant
-
Managing Websites Protected by Dedicated WAF Engines
- Appendix
- Change History
-
User Guide (Paris)
- General Reference
- Application Scenarios
- Architecture
- Constraints
- Obtaining the Client IP Address from WAF
- How Does Tomcat Obtain the Client IP Address from Access Logs?
- How Does Apache Obtain the Client IP Address from Access Logs?
- How Does Nginx Obtain the Client IP Address from Access Logs?
- How Does IIS 6 Obtain the Client IP Address from Access Logs?
- How Does IIS 7 Obtain the Client IP Address from Access Logs?
- How Does WAF Obtain the Real Client IP Addresses for Services Deployed in CCE?
Show all
Copied.
Obtaining the Real Client IP Addresses
Application Scenarios
A client IP address refers to an IP address of a visitor (or the device a visitor uses to initiate the request). Sometimes, a web application needs to require the client IP address. For example, a voting system needs to obtain the client IP addresses to ensure that each client casts only once.
After your website is connected to WAF, WAF works as a reverse proxy between the client and the server. The real IP address of the server is hidden, and only the IP addresses of WAF are visible to web visitors. In this case, you can obtain the real IP address of the client through WAF or configure the website server to obtain the real IP address of the client.
The following describes how to obtain the client IP address from WAF and how to configure different types of web application servers, including Tomcat, Apache, Nginx, IIS 6, and IIS 7, to obtain the client IP address.
Architecture
Generally, a browser request does not directly reach the web server. Proxy servers, such as CDN, WAF, and advanced anti-DDoS, may be deployed between the browser and the origin server. Using WAF as an example, see Figure 1.
- DNS resolves your domain name to the origin server IP address before your website is connected to WAF. Therefore, web visitors can directly access the server.
- After your website is connected to WAF, DNS resolves your domain name to the CNAME record of WAF. In this way, the traffic passes through WAF. WAF then filters out illegitimate traffic and only routes legitimate traffic back to the origin server.
In this case, the access request may be forwarded by multiple layers of security or acceleration proxies before reaching the origin server. So, how does the server obtain the real IP address of the client that initiates the request?
When forwarding HTTP requests to the downstream server, the transparent proxy server adds an X-Forwarded-For field to the HTTP header to identify the client IP address in the format of X-Forwarded-For: client IP address, proxy 1-IP address, proxy 2-IP address, proxy 3-IP address, ........->....
Then, you can obtain the client IP address from the X-Forwarded-For field, the first IP address in which is the client IP address.
Constraints
- Ensure that Use Layer-7 Proxy is configured correctly when you add a website to the WAF instance, or WAF cannot obtain the real IP address of your website visitors.
To ensure that WAF obtains real client IP addresses and takes protective actions configured in protection policies, select Yes for Use Layer-7 Proxy when your website has a layer-7 proxy server such as CDN and cloud acceleration products deployed in front of WAF. In other cases, select No for Use Layer-7 Proxy.
- In normal cases, the first IP address in the X-Forwarded-For field is the real IP address of the client. If the length of an IPv6 address exceeds the length limit of the X-Forwarded-For field, the IP address cannot be read. In NAT64, the load balancer uses IPv4 listeners, which cannot read IPv6 addresses.
Obtaining the Client IP Address from WAF
After a website is connected to WAF, WAF is deployed between the client and server as a reverse proxy to protect the website. The principles for WAF to obtain the real IP address are as follows:
- If you select Yes for Use Layer-7 Proxy when you add a domain name to WAF, WAF obtains the source IP address in the following sequence:
- The source IP header list configured in upstream is preferentially used, that is, the IP address tag configured on the basic information page of the domain name. For details, see Configuring a Traffic Identifier for a Known Attack Source. If no IP address is available, go to 2.
NOTE:
If you want to use a TCP connection IP address as the client IP address, set IP Tag to remote_addr.
- Obtain the value of the cdn-src-ip field in the source IP header list configured in the config file. If no value is obtained, go to 3.
- Obtain the value of the x-real-ip field. If no value is obtained, go to 4.
- Obtain the first public IP address from the left of the x-forwarded-for field. If no public IP address is obtained, go to 5.
- Obtain the value of the remote_addr field, which includes the IP address used for establishing the TCP connection.
- The source IP header list configured in upstream is preferentially used, that is, the IP address tag configured on the basic information page of the domain name. For details, see Configuring a Traffic Identifier for a Known Attack Source. If no IP address is available, go to 2.
- If no proxy is used, that is, you select No for Use Layer-7 Proxy when adding the domain name to WAF, WAF obtains the source IP address from the remote_ip field.
The following describes how WAF uses the X-Forwarded-For and X-Real-IP variables to obtain the real IP address of a client:
- Using the X-Forwarded-For field to obtain the client IP address
The client IP address is placed in the X-Forwarded-For HTTP header field. The format is as follows:
1
X-Forwarded-For: Client IP address,Proxy 1-IP address,Proxy 2-IP address,...
NOTE:
The first IP address included in the X-Forwarded-For field is the client IP address.
The methods to obtain the X-Forwarded-For field by invoking the SDK interface in different programming languages are as follows:- ASP
Request.ServerVariables("HTTP_X_FORWARDED_FOR")
- ASP.NET(C#)
Request.ServerVariables["HTTP_X_FORWARDED_FOR"]
- PHP
$_SERVER["HTTP_X_FORWARDED_FOR"]
- JSP
request.getHeader("HTTP_X_FORWARDED_FOR")
- ASP
- Using the X-Real-IP field to obtain the client IP address (modifications caused by reverse proxies is considered)
The methods to obtain the X-Real-IP field by invoking the SDK interface in different programming languages are as follows:
- ASP
Request.ServerVariables("HTTP_X_REAL_IP")
- ASP.NET(C#)
Request.ServerVariables["HTTP_X_REAL_IP"]
- PHP
$_SERVER["HTTP_X_REAL_IP"]
- JSP
request.getHeader("HTTP_X_REAL_IP")
- ASP
How Does Tomcat Obtain the Client IP Address from Access Logs?
If Tomcat is deployed on your origin server, you can enable the X-Forwarded-For function of Tomcat to obtain the client IP address.
- Open the server.xml file in the tomcat/conf/ directory. Partial information about the AccessLogValue logging function is as follows:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.values.AccessLogValue" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t "%r" %s %b" />
- Add %{X-Forwarded-For}i to pattern. Part of the modified server.xml file is as follows:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValue" directory="logs" prefix="localhost_access_log." suffix=".txt" pattern="%{X-Forwarded-For}i %h %l %u %t "%r" %s %b" /> </Host>
- View the localhost_access_log file to obtain the client IP address from the X-Forwarded-For field.
How Does Apache Obtain the Client IP Address from Access Logs?
If Apache HTTP Server 2.4 or later is deployed on your origin server, you can use the mod_remoteip.so file under remoteip_module in the Apache installation package to obtain the real client IP address.
- CentOS 7.6
- Add the following content to the httpd.conf file:
LoadModule remoteip_module modules/mod_remoteip.so ##Load the mod_remoteip.so module. RemoteIPHeader X-Forwarded-For ## Set RemoteIPHeader. RemoteIPInternalProxy WAF IP address range##Set the WAF back-to-source IP address range.
For more details, see How Do I Whitelist the WAF Back-to-Source IP Address Ranges?
NOTE:
- File /etc/httpd/conf.modules.d/00-base.conf:46 has been added to the mod_remoteip.so module.
- Use spaces to separate multiple back-to-source IP address ranges.
- Replace %h with %a in the log format file.
LogFormat "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%a %l %u %t \"%r\" %>s %b" common
- Restart the Apache service to make the configuration take effect.
- Add the following content to the httpd.conf file:
- Ubuntu 20.04.2
- Add the following content to the apache2.conf file:
ln -s ../mods-available/remoteip.load /etc/apache2/mods-enabled/remoteip.load ##Load the mod_remoteip.so module. RemoteIPHeader X-Forwarded-For ## Set RemoteIPHeader. RemoteIPInternalProxy WAF IP address range##Set the WAF back-to-source IP address range.
For more details, see How Do I Whitelist the WAF Back-to-Source IP Address Ranges?
NOTE:
- You can also add the following content to load the mod_remoteip.so module:
LoadModule remoteip_module /usr/lib/apache2/modules/mod_remoteip.so
- Use spaces to separate multiple back-to-source IP address ranges.
- You can also add the following content to load the mod_remoteip.so module:
- Replace %h with %a in the log format file.
LogFormat "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%a %l %u %t \"%r\" %>s %b" common
- Restart the Apache service to make the configuration take effect.
- Add the following content to the apache2.conf file:
If Apache 2.2 or earlier is deployed on your origin server, to obtain the real client IP address, you can run commands to install third-party module mod_rpaf of Apache and modify the http.conf file
- Run the following commands to install third-party module mod_rpaf for Apache:
wget https://github.com/gnif/mod_rpaf/archive/v0.6.0.tar.gz tar xvfz mod_rpaf-0.6.tar.gz cd mod_rpaf-0.6 /usr/local/apache/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
- Open the httpd.conf configuration file and modify the file content as follows:
LoadModule rpaf_module modules/mod_rpaf-2.0.so ##Load module mod_rpaf. <IfModule mod_rpaf.c> RPAFenable On RPAFsethostname On RPAFproxy_ips 127.0.0.1 <Reverse proxy IP address> RPAFheader X-Forwarded-For </IfModule>
- Define the log format.
LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" common
- Enable customized logs.
CustomLog"[Apache server directory]/logs/$access.log"common
- Restart the Apache server for the configuration to take effect.
/[Apache server directory]/httpd/bin/apachectl restart
- View the access.log file to obtain the client IP address from the X-Forwarded-For field.
How Does Nginx Obtain the Client IP Address from Access Logs?
If an Nginx reverse proxy is deployed on your origin server, you can configure location information on the Nginx reverse proxy so that the backend web server can use similar functions to obtain the client IP address
- Configure the following information in the corresponding location of the Nginx reverse proxy to obtain the information about the client IP address:
1 2 3 4
Location ^ /<uri> { proxy_pass ....; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
- The backend web server obtains the real IP address of your website visitors by defining the Nginx log parameter $http_x_forwarded_for.
Example
log_format main ' "<$http_Cdn_Src_IP>" "{$http_x_real_ip}" "[$http_x_forwarded_for]" "$remote_addr" ' '$http_user_agent - $remote_user [$time_local] "$request" ' ' $status $body_bytes_sent "$http_referer" ';
How Does IIS 6 Obtain the Client IP Address from Access Logs?
If you have deployed an IIS 6 server on your origin server, you can install the F5XForwardedFor.dll plug-in and obtain the client IP address from the access logs recorded by the IIS 6 server.
- Download the F5XForwardedFor module.
- Copy the F5XForwardedFor.dll file in the x86\Release or x64\Release directory to a specified directory (for example, C:\ISAPIFilters) based on the operating system version of your server. Ensure that the IIS process has the read permission for the directory.
- Open the IIS manager, right-click the website that is currently open, and choose Attribute from the shortcut menu. The Attribute page is displayed.
- On the Attribute page, switch to ISAPI filter and click Add. In the dialog box that is displayed, configure the following information:
- Filter Name: Set this parameter to F5XForwardedFor.
- Executable file: Set this parameter to the full path of F5XForwardedFor.dll, for example, C:\ISAPIFilters\F5XForwardedFor.dll.
- Click OK to restart the IIS 6 server.
- View the access logs recorded by the IIS 6 server (the default log path is C:\WINDOWS\system32\LogFiles\, and the IIS log file name extension is .log). You can obtain client IP address from the X-Forwarded-For field.
How Does IIS 7 Obtain the Client IP Address from Access Logs?
If you have deployed an IIS 7 server on your origin server, you can install the F5XForwardedFor.dll module and obtain the client IP address from the access logs recorded by the IIS 7 server.
- Download the F5XForwardedFor module.
- Copy the F5XFFHttpModule.dll and F5XFFHttpModule.ini files in the x86\Release or x64\Release directory to a specified directory (for example, C:\x_forwarded_for\x86 or C:\x_forwarded_for\x64) based on the operating system version of your server. Ensure that the IIS process has the read permission for the directory.
- On the server home page, double-click Modules to go to the Modules page.
- Click Configure Native Module. In the dialog box displayed, click Register.
- In the displayed dialog box, register the downloaded DLL file according to the operating system, and then click OK.
- x86 operating system: registration module x_forwarded_for_x86
- Name: x_forwarded_for_x86
- Path: C:\x_forwarded_for\x86\F5XFFHttpModule.dll
- x64: Register the module x_forwarded_for_x64.
- Name: x_forwarded_for_x64
- Path: C:\x_forwarded_for\x64\F5XFFHttpModule.dll
- x86 operating system: registration module x_forwarded_for_x86
- After the registration is complete, select the newly registered module (x_forwarded_for_x86 or x_forwarded_for_x64) and click OK.
- In ISAPI and CGI restriction, add the registered DLL files by operating system and change Restriction to Permitting.
- x86 operating system:
- ISAPI or CGI path: C:\x_forwarded_for\x86\F5XFFHttpModule.dll
- Description: x86
- x64 operating system:
- ISAPI or CGI path: C:\x_forwarded_for\x64\F5XFFHttpModule.dll
- Description: x64
- x86 operating system:
- Restart the IIS 7 server and wait for the configuration to take effect.
- View the access logs recorded by the IIS 7 server (the default log path is C:\WINDOWS\system32\LogFiles\, and the IIS log file name extension is .log). You can obtain the client IP address from the X-Forwarded-For field.
How Does WAF Obtain the Real Client IP Addresses for Services Deployed in CCE?
If your service is deployed on Cloud Container Engine (CCE), CCE records the real client IP address in the X-Original-Forwarded-For field and records the WAF back-to-source address in the X-Forwarded-For field. You need to modify the CCE configuration file to enable Ingress to add the real IP address to the X-Forwarded-For field. In this way, WAF can obtain the real client IP address.
To modify the CCE configuration file, take the following steps:
- Run the following command to modify the kube-system/nginx-configuration configuration file:
kubectl -n kube-system edit cm nginx-configuration
- Add the following information to the configuration file:
compute-full-forwarded-for: "true" forwarded-for-header: "X-Forwarded-For" use-forwarded-headers: "true"
- Save the configuration file.
The configuration takes effect after you save the file. Ingress adds the real client IP addresses to the X-Forwarded-For field.
- Modify the field for the service to obtain the real client IP addresses to X-Original-Forwarded-For.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot