Skip to content

Commit 80a31a7

Browse files
authored
Merge pull request #311963 from AbdullahBell/ddos-best-practices
Comprehensive update to DDoS Protection fundamental best practices
2 parents 588559e + 1edbf70 commit 80a31a7

1 file changed

Lines changed: 101 additions & 16 deletions

File tree

Lines changed: 101 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,129 @@
11
---
22
title: Azure DDoS Protection fundamental best practices
3-
description: Learn the best security practices using Azure DDoS Protection.
3+
description: Learn fundamental best practices for Azure DDoS Protection, including tier selection, security design, scalability, multi-layered defense, monitoring, and response planning.
44
services: ddos-protection
55
author: AbdullahBell
66
ms.service: azure-ddos-protection
77
ms.topic: concept-article
8-
ms.date: 10/13/2025
8+
ms.date: 03/05/2026
99
ms.author: abell
1010
# Customer intent: As a security architect, I want to implement best practices for Azure DDoS Protection, so that I can ensure my applications are resilient and secure against denial-of-service attacks while optimizing scalability and minimizing risk.
1111
---
12+
1213
# Azure DDoS Protection fundamental best practices
1314

14-
The following sections give prescriptive guidance to build DDoS-resilient services on Azure.
15+
This article provides best practices for building DDoS-resilient services on Azure. Use this guidance to protect your applications with Azure DDoS Protection across the areas of tier selection, security design, scalability, multi-layered defense, monitoring, testing, and response planning.
1516

16-
## Design for security
17+
## Choose the right protection tier
18+
19+
Azure DDoS Protection offers two tiers to match different protection needs:
20+
21+
- **DDoS IP Protection**: Per-IP protection for a small number of public IP addresses. Best for small deployments that need core DDoS protection without advanced features.
22+
- **DDoS Network Protection**: Enhanced protection for virtual network resources with additional features including DDoS Rapid Response (DRR) support, cost protection guarantees, and web application firewall (WAF) discounts.
1723

18-
Ensure that security is a priority throughout the entire lifecycle of an application, from design and implementation to deployment and operations. Applications can have bugs that allow a relatively low volume of requests to use an inordinate amount of resources, resulting in a service outage.
24+
Evaluate your requirements based on the number of public IP resources, the need for DDoS Rapid Response support, and cost protection needs. For a detailed comparison of features, limitations, and pricing between the two tiers, see [About Azure DDoS Protection tier comparison](ddos-protection-sku-comparison.md).
1925

20-
To help protect a service running on Microsoft Azure, you should have a good understanding of your application architecture and focus on the [five pillars of software quality](/azure/architecture/guide/pillars).
21-
You should know typical traffic volumes, the connectivity model between the application and other applications, and the service endpoints that are exposed to the public internet.
26+
## Design for security
2227

23-
Ensuring that an application is resilient enough to handle a denial of service that's targeted at the application itself is most important. Security and privacy are built into the Azure platform, beginning with the [Security Development Lifecycle (SDL)](https://www.microsoft.com/sdl/default.aspx). The SDL addresses security at every development phase and ensures that Azure is continually updated to make it even more secure. To learn more about maximizing your effectiveness using DDoS Protection, see [Maximizing Effectiveness: Best Practices for Azure DDoS Protection and Application Resilience](https://techcommunity.microsoft.com/t5/azure-network-security-blog/maximizing-effectiveness-best-practices-for-azure-ddos/ba-p/3914324).
28+
Ensure that security is a priority throughout the entire lifecycle of an application, from design and implementation to deployment and operations. Applications can have bugs that allow a relatively low volume of requests to use an excessive amount of resources, resulting in a service outage.
2429

30+
To protect your service on Azure:
2531

32+
- **Understand your application architecture**: Focus on the [five pillars of software quality](/azure/architecture/guide/pillars). Know your typical traffic volumes, the connectivity model between your application and other applications, and the service endpoints exposed to the public internet.
33+
- **Plan for denial of service**: Ensure that an application is resilient enough to handle a denial of service targeted at the application layer, such as HTTP floods.
34+
- **Apply security development practices**: Security and privacy are built into the Azure platform, beginning with the [Security Development Lifecycle (SDL)](https://www.microsoft.com/sdl). The SDL addresses security at every development phase and ensures that Azure is continually updated to make it even more secure.
35+
- **Follow Azure security baselines**: Review the [Azure security baseline for DDoS Protection](/security/benchmark/azure/baselines/azure-ddos-protection-security-baseline) to align your configuration with the [Microsoft cloud security benchmark](/security/benchmark/azure/overview).
2636

2737
## Design for scalability
2838

2939
Scalability is how well a system can handle increased load. Design your applications to [scale horizontally](/azure/architecture/guide/design-principles/scale-out) to meet the demand of an amplified load, specifically in the event of a DDoS attack. If your application depends on a single instance of a service, it creates a single point of failure. Provisioning multiple instances makes your system more resilient and more scalable.
3040

31-
For [Azure App Service](../app-service/overview.md), select an [App Service plan](../app-service/overview-hosting-plans.md) that offers multiple instances. For Azure Cloud Services, configure each of your roles to use [multiple instances](../cloud-services/cloud-services-choose-me.md).
32-
For [Azure Virtual Machines](/azure/virtual-machines/), ensure that your virtual machine (VM) architecture includes more than one VM and that each VM is included in an [availability set](/azure/virtual-machines/windows/tutorial-availability-sets). We recommend using [virtual machine scale sets](/azure/virtual-machine-scale-sets/overview) for autoscaling capabilities.
41+
Consider the following scalability strategies:
42+
43+
- **[Azure App Service](../app-service/overview.md)**: Select an [App Service plan](../app-service/overview-hosting-plans.md) that offers multiple instances. Configure autoscale rules to automatically scale out based on metrics like CPU usage or request count.
44+
- **[Azure Virtual Machines](/azure/virtual-machines/)**: Ensure that your virtual machine architecture includes more than one virtual machine and that each virtual machine is included in an [availability set](/azure/virtual-machines/windows/tutorial-availability-sets). Use [Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/overview) for autoscaling capabilities.
45+
- **Caching and load distribution**: Use [Azure Front Door](../frontdoor/front-door-overview.md) for global load balancing, SSL offloading, and caching of static content. Caching reduces the load on backend resources and minimizes the impact of traffic spikes.
46+
- **[Azure Load Balancer](../load-balancer/quickstart-load-balancer-standard-public-portal.md)**: Distribute traffic across multiple instances to prevent any single resource from being overwhelmed.
47+
48+
For recommended DDoS protection architectures for common workload types, see [DDoS Protection reference architectures](ddos-protection-reference-architectures.md).
49+
50+
## Implement multi-layered defense
51+
52+
A defense in depth strategy uses multiple layers of security to reduce the risk of a successful attack. Use the built-in capabilities of the Azure platform to implement secure designs for your applications.
53+
54+
### Reduce the attack surface
55+
56+
Reduce your exposure by minimizing the publicly accessible surface area:
57+
58+
- Use [Azure Private Link](../private-link/private-link-overview.md) to access Azure PaaS services over a private endpoint in your virtual network, eliminating exposure to the public internet.
59+
- Use an allow list to restrict the exposed IP address space and listening ports that aren't needed on load balancers ([Azure Load Balancer](../load-balancer/quickstart-load-balancer-standard-public-portal.md) and [Azure Application Gateway](../application-gateway/application-gateway-create-probe-portal.md)).
60+
- Use [network security groups (NSGs)](../virtual-network/network-security-groups-overview.md) to restrict traffic.
61+
- Use [service tags](../virtual-network/network-security-groups-overview.md#service-tags) and [application security groups](../virtual-network/network-security-groups-overview.md#application-security-groups) to simplify creating security rules and configure network security as a natural extension of an application's structure.
62+
- Deploy Azure services in a [virtual network](../virtual-network/virtual-networks-overview.md) whenever possible so that service resources communicate through private IP addresses. Use [service endpoints](../virtual-network/virtual-network-service-endpoints-overview.md) to switch service traffic to use virtual network private addresses as source IP addresses.
63+
64+
### Protect the network layer (L3/L4)
65+
66+
Azure DDoS Protection provides automatic protection against network-layer (L3/L4) volumetric, protocol, and resource-layer attacks. Key capabilities include:
67+
68+
- **Always-on traffic monitoring**: DDoS Protection monitors your application traffic patterns to detect anomalies. Protection activates automatically when traffic exceeds thresholds.
69+
- **Adaptive real-time tuning**: DDoS Protection profiles your application traffic over time and selects the mitigation profile best suited for your service.
70+
- **Azure Firewall integration**: Combine [Azure Firewall](../firewall/overview.md) with DDoS Protection in a virtual network to provide additional network-layer filtering and threat intelligence. For architecture guidance, see [Azure Firewall and DDoS Protection reference architectures](ddos-protection-reference-architectures.md).
71+
72+
### Protect the application layer (L7)
73+
74+
Azure DDoS Protection focuses on network-layer (L3/L4) attacks. For application-layer (L7) attacks like HTTP floods and slowloris, combine DDoS Protection with a web application firewall (WAF):
75+
76+
- Deploy [Azure Web Application Firewall on Azure Front Door](../web-application-firewall/afds/afds-overview.md) or [Azure Application Gateway](../web-application-firewall/ag/ag-overview.md) to protect against L7 attacks.
77+
- Use WAF custom rules for rate limiting to detect and block malicious traffic automatically.
78+
- Enable [bot protection](../web-application-firewall/afds/waf-front-door-policy-configure-bot-protection.md) to block known malicious bots.
79+
- Use [geo-filtering](../web-application-firewall/afds/waf-front-door-geo-filtering.md) to restrict traffic from regions where you don't expect legitimate users.
80+
81+
For detailed guidance on application-layer DDoS defense strategies, see [Application DDoS protection](../web-application-firewall/shared/application-ddos-protection.md).
82+
83+
### Integrate with Microsoft Sentinel
84+
85+
Use the [Azure DDoS Solution for Microsoft Sentinel](https://techcommunity.microsoft.com/t5/azure-network-security-blog/new-azure-ddos-solution-for-microsoft-sentinel/ba-p/3732013) to identify offending DDoS sources, correlate attack data with other security events, and prevent attackers from pivoting to other attack types, such as data exfiltration.
86+
87+
### Protect hybrid environments
88+
89+
If you're connecting an on-premises environment to Azure, minimize exposure of on-premises resources to the public internet. Use the scale and advanced DDoS protection capabilities of Azure by deploying your well-known public entities in Azure. Because these publicly accessible entities are often a target for DDoS attacks, putting them in Azure reduces the impact on your on-premises resources.
90+
91+
## Configure monitoring and alerting
92+
93+
Set up monitoring and alerting to detect DDoS attacks quickly and understand your protection status:
94+
95+
- **Configure metric alerts**: Create alerts on key DDoS Protection metrics, such as *Under DDoS attack or not*, *Inbound packets dropped DDoS*, and *Inbound SYN packets to trigger DDoS mitigation*. Alerts notify you immediately when an attack is detected. For step-by-step instructions, see [Configure Azure DDoS Protection metric alerts](alerts.md).
96+
- **View alerts in Microsoft Defender for Cloud**: DDoS Protection automatically sends mitigation alerts to Microsoft Defender for Cloud when an attack is detected. Use Defender for Cloud to get a unified view of DDoS alerts alongside other security alerts. For more information, see [View Azure DDoS Protection alerts in Microsoft Defender for Cloud](ddos-view-alerts-defender-for-cloud.md).
97+
- **Enable diagnostic logging**: Enable diagnostic logs to capture DDoS mitigation reports, flow logs, and notifications. Use these logs for post-attack analysis and compliance auditing.
98+
- **Review DDoS Protection telemetry**: Use the metrics and diagnostic logs to understand traffic patterns during attacks and evaluate the effectiveness of mitigation. For detailed monitoring guidance, see [Monitor Azure DDoS Protection](monitor-ddos-protection.md).
99+
- **Monitor application performance**: Use [Azure Application Insights](/azure/azure-monitor/app/app-insights-overview) to monitor your web application and detect performance anomalies. Understanding your application's normal behavior helps you identify degradation during a DDoS attack. For detailed guidance, see [DDoS response strategy](ddos-response-strategy.md).
100+
101+
## Test and validate your protection
102+
103+
Regularly test your DDoS protection to validate that your applications and alerting work as expected during an attack:
104+
105+
- **Run simulation tests**: Use Microsoft-approved testing partners to simulate DDoS attacks against your Azure endpoints. Simulations help validate your protection configuration, alerting setup, and response procedures.
106+
- **Review test results**: After simulation, review DDoS Protection metrics and diagnostic logs to confirm that mitigation policies triggered correctly.
107+
108+
For testing partners, prerequisites, and step-by-step instructions, see [Test through simulations](test-through-simulations.md).
33109

34-
## Defense in depth
110+
## Plan your DDoS response strategy
35111

36-
The idea behind defense in depth is to manage risk by using diverse defensive strategies. Layering security defenses in an application reduces the chance of a successful attack. We recommend that you implement secure designs for your applications by using the built-in capabilities of the Azure platform.
112+
Establish a clear response plan before an attack occurs to ensure a fast and effective response:
37113

38-
For example, the risk of attack increases with the size (*surface area*) of the application. You can reduce the surface area by using an approval list to close down the exposed IP address space and listening ports that aren't needed on the load balancers ([Azure Load Balancer](../load-balancer/quickstart-load-balancer-standard-public-portal.md) and [Azure Application Gateway](../application-gateway/application-gateway-create-probe-portal.md)). [Network security groups (NSGs)](../virtual-network/network-security-groups-overview.md) are another way to reduce the attack surface.
39-
You can use [service tags](../virtual-network/network-security-groups-overview.md#service-tags) and [application security groups](../virtual-network/network-security-groups-overview.md#application-security-groups) to minimize complexity for creating security rules and configuring network security, as a natural extension of an application’s structure. Additionally, you can use [Azure DDoS Solution for Microsoft Sentinel](https://techcommunity.microsoft.com/t5/azure-network-security-blog/new-azure-ddos-solution-for-microsoft-sentinel/ba-p/3732013) to pinpoint offending DDoS sources and to block them from launching other, sophisticated attacks, such as data theft.
114+
- **Build a DDoS response team**: Assign team members responsible for coordinating the response to an attack. Include members from networking, application, and operations teams.
115+
- **Engage DDoS Rapid Response (DRR)**: With [DDoS Network Protection](manage-ddos-protection.md), you can engage the [DDoS Rapid Response team](ddos-rapid-response.md) during an active attack for investigation and post-attack analysis.
116+
- **Document and rehearse**: Create runbooks, define escalation paths, and rehearse your response to DDoS attacks. Review and update your response plan regularly.
40117

41-
You should deploy Azure services in a [virtual network](../virtual-network/virtual-networks-overview.md) whenever possible. This practice allows service resources to communicate through private IP addresses. Azure service traffic from a virtual network uses public IP addresses as source IP addresses by default. Using [service endpoints](../virtual-network/virtual-network-service-endpoints-overview.md) will switch service traffic to use virtual network private addresses as the source IP addresses when they're accessing the Azure service from a virtual network.
118+
For detailed guidance on building your response strategy, see [DDoS response strategy](ddos-response-strategy.md).
42119

43-
We often see customers' on-premises resources getting attacked along with their resources in Azure. If you're connecting an on-premises environment to Azure, we recommend that you minimize exposure of on-premises resources to the public internet. You can use the scale and advanced DDoS protection capabilities of Azure by deploying your well-known public entities in Azure. Because these publicly accessible entities are often a target for DDoS attacks, putting them in Azure reduces the impact on your on-premises resources.
120+
## Next steps
44121

122+
- [About Azure DDoS Protection tier comparison](ddos-protection-sku-comparison.md)
123+
- [DDoS Protection reference architectures](ddos-protection-reference-architectures.md)
124+
- [Monitor Azure DDoS Protection](monitor-ddos-protection.md)
125+
- [Configure Azure DDoS Protection metric alerts](alerts.md)
126+
- [Test through simulations](test-through-simulations.md)
127+
- [DDoS response strategy](ddos-response-strategy.md)
128+
- [Application DDoS protection](../web-application-firewall/shared/application-ddos-protection.md)
129+
- [DDoS Protection cost optimization](ddos-optimization-guide.md)

0 commit comments

Comments
 (0)