- About the web interface controls
- Always-on DDoS mitigation
- Browser recommendations when using the Fastly web interface
- Content and its delivery
- Fastly POP locations
- Getting started with Fastly
- How caching and CDNs work
- How Fastly's CDN Service works
- HTTP status codes cached by default
- Self-provisioned Fastly services
- Sign up and create your first service
- Working with services
Domains & Origins
Domains & Origins
- Changing origins based on user location
- Connecting to origins
- Enabling global POPs
- Failover configuration
- IPv6 support
- Maintaining separate HTTP and HTTPS requests to origin servers
- Routing assets to different origins
- Setting up redundant origin servers
- Specifying an override host
- Using Fastly with apex domains
- Accept-Language header VCL features
- Authenticating before returning a request
- Basic authentication
- Creating location-based tagging
- Custom responses that don't hit origin servers
- Delivering different content to different devices
- Enabling URL token validation
- Guide to VCL
- Isolating header values without regular expressions
- Manipulating the cache key
- IP geolocation variables: Migrating to the new dataset
- Overriding which IP address the geolocation features use
- Response Cookie handling
- Support for the Edge-Control header
- Understanding the different PASS action behaviors
- Using edge side includes (ESI)
- VCL regular expression cheat sheet
Access Control Lists
Monitoring and testing
- Domain validation for TLS certificates
- Enabling HSTS through Fastly
- Forcing a TLS redirect
- Managing domains on TLS certificates
- Serving HTTPS traffic using certificates you manage
- Serving HTTPS traffic using Fastly-managed certificates
- Setting up free TLS
- TLS key and certificate replacement
- TLS termination
Web Application Firewall
- Log streaming: Amazon S3
- Log streaming: Microsoft Azure Blob Storage
- Log streaming: Cloud Files
- Log streaming: Datadog
- Log streaming: DigitalOcean Spaces
- Log streaming: Elasticsearch
- Log streaming: FTP
- Log streaming: Google BigQuery
- Log streaming: Google Cloud Storage
- Log streaming: Honeycomb
- Log streaming: Kafka
- Log streaming: Log Shuttle
- Log streaming: LogDNA
- Log streaming: Logentries
- Log streaming: Loggly
- Log streaming: Heroku's Logplex
- Log streaming: OpenStack
- Log streaming: Papertrail
- Log streaming: Scalyr
- Log streaming: SFTP
- Log streaming: Splunk
- Log streaming: Sumo Logic
- Log streaming: Syslog
User access and control
About the Fastly WAF dashboard
Last updated August 23, 2019
The Fastly WAF dashboard allows you to monitor the Fastly WAF deployed within your Fastly service. If you've been assigned the role of engineer or superuser, you can use the information in the Fastly WAF dashboard to determine whether or not the WAF is active, see how many requests the WAF is currently processing, and review recent configuration changes.
The Fastly WAF dashboard consists of the following pages:
IMPORTANT: This information is part of a limited availability release. For more information, see our product and feature lifecycle descriptions.
Accessing the Fastly WAF dashboard
To access the Fastly WAF dashboard, follow the steps below:
Log in to the Fastly web interface. The All services page appears.
Find your Fastly service in the list, and then click the WAF link. The WAF summary page appears.
If you have hundreds of services, you might want to jump to the All WAF services page for an overview of all your WAFs.
About the WAF summary page
The WAF status section indicates whether the WAF is currently active. To be considered active, the WAF must not be disabled and must have at least one rule status set in either logging or blocking mode. You can see the total number of active rules. This number includes OWASP rules set to "active" and strict match rules set to blocking or logging. The charts show the number of active and disabled OWASP rules, application-specific rules, and Fastly-created rules. Sample charts are shown below.
The Requests graph displays how many requests are served from cache and how many requests are processed by the WAF. Of the requests that are processed by the WAF, the WAF Process graph displays how many requests were blocked by the WAF, logged by the WAF and sent to the origin server, and were passed (not blocked or logged) and sent to the origin server.
You can exclude certain data from the graphs by clicking the hide link next to a data label. Clicking this link will hide that value in the graph's display.
TIP: The Fastly WAF only executes on traffic sent to the origin server.
About the WAF audit log page
The WAF audit log page displays all configuration changes made to your WAF. You can use this page to determine who made certain types of configuration changes to the WAF, and when the changes were made. The line items indicate when rules were set to log or block, when they were updated, and whether they were disabled.
Some line items include changes for multiple rules. Click Show rule IDs to see all of the changes.
TIP: You can use the Fastly WAF rule statuses API endpoint to view the state of an individual rule.
Some entries contain information about the WAF's OWASP properties. To learn more about the OWASP properties, refer to the OWASP properties section.
You may see OWASP properties referenced on the WAF audit log page. The table below contains a list of all available properties and their descriptions. The properties shown here reflect changes made by altering the settings in the OWASP object.
|Allowed HTTP versions||HTTP versions that a client is allowed to use.|
|Allowed HTTP methods||HTTP methods that a client is allowed to use.|
|Allowed client content types||HTTP Content-Types that a client is allowed to use.|
|Maximum length for parameter names||Maximum length of any parameter names passed in the query string and request body.|
|Maximum length for parameter values||Maximum length of any parameter values passed in the query string and request body.|
|Combined file sizes||Total size of MIME bodies in the request.|
|Critical anomaly score||Configured critical anomaly score. Rules using the critical severity will increment scores using this value.|
|Validate UTF8 encoding||Validates the client request as UTF-8 prior to the execution of WAF rules.|
|Error anomaly score||Configured error anomaly score. Rules using the error severity will increment scores using this value.|
|High risk countries||Block clients from high risk countries based on their IP address.|
|HTTP violation threshold||Configured HTTP violation threshold. Action is taken when rules that trigger HTTP violations exceed the threshold.|
|Inbound anomaly threshold||Configured inbound anomaly threshold. Action is taken when the sum of the individual category scores exceed the threshold.|
|LFI threshold||Configured LFI threshold. Action is taken when rules that trigger Local File Inclusion (LFI) rules exceed the threshold.|
|Maximum file size (bytes)||Maximum size of any MIME body in the request.|
|Maximum argument count||Maximum number of parameters in the query string and request body.|
|Notice anomaly score||Configured notice anomaly score. Rules using the notice severity will increment scores using this value.|
|Paranoia level||The paranoia level setting can be set from 1 through 4 and determines the number of rules to include by default. Higher levels indicate higher levels of security but potentially a larger number of false positives.|
|PHP injection threshold||Configured PHP injection score threshold. Action is taken when rules that trigger PHP related violations exceed the threshold.|
|RCE threshold||Configured RCE injection score threshold. Action is taken when rules that trigger Remote Code Execution (RCE) violations exceed the threshold.|
|Restricted extensions||Control on restricted file extensions in the client request.|
|Restricted headers||Control on restricted HTTP headers in the client request.|
|RFI threshold||Configured RFI violation threshold. Action is taken when rules that trigger Remote File Inclusion (RFI) violations exceed the threshold.|
|Session fixation threshold||Configured Session Fixation violation threshold. Action is taken when rules that trigger Session Fixation violations exceed the threshold.|
|SQLi threshold||Configured SQLi threshold. Action is taken when rules that trigger SQL Injection (SQLi) violations exceed the threshold.|
|Total parameter length||Maximum length of all parameters passed in the query string and request body.|
|Warning anomaly score||Configured warning anomaly score. Rules using the warning severity will increment scores using this value.|
|XSS threshold||Configured XSS threshold. Action is taken when rules that trigger Cross-Site Scripting (XSS) violations exceed the threshold.|
About the All WAF services page
You can use the All WAF services page to monitor all of the WAFs deployed within your services. This page shows which of your services have WAFs, which WAFs are enabled, how many rules are enabled and disabled per WAF, and which configuration sets the WAFs are using. If a configuration set is out of date, a message is displayed alerting you it's time to update to the latest rule set.
About the WAF stats
The WAF stats graph appears on the Stats page. For the selected service, this graph shows blocked traffic that was stopped by the WAF based on rules, logged traffic that triggered rules but was sent to the origin, and passed traffic that didn't trigger rules and was sent to the origin.
Back to Top