Deploy Azure Firewall

This guide walks you through the process of deploying Azure Firewall to secure your virtual network resources. Azure Firewall is a managed, cloud-based network security service that protects your Azure Virtual Network resources. It's a fully stateful firewall as a service with built-in high availability and unrestricted cloud scalability.

Prerequisites

Before you begin, ensure you have:

Deployment Steps

Using the Azure Portal

The Azure portal provides a user-friendly interface for deploying Azure Firewall.

  1. Sign in to the Azure portal.
  2. Navigate to the Azure Firewall service. You can search for "Firewall" in the search bar at the top and select "Firewalls".
  3. Click "Create firewall".
  4. On the "Basics" tab:
    • Subscription: Select your Azure subscription.
    • Resource group: Choose an existing resource group or create a new one.
    • Name: Provide a unique name for your firewall.
    • Region: Select the Azure region where you want to deploy the firewall.
    • Firewall name: This is automatically populated with the name you provided.
    • Tier: Choose between Standard or Premium (for advanced features).
  5. On the "IP Configuration" tab:
    • Virtual network: Select the virtual network where the firewall will be deployed. Ensure it contains an AzureFirewallSubnet.
    • Private IP address: A private IP address will be assigned automatically from the AzureFirewallSubnet.
  6. On the "Tags" tab (optional): Add any tags to help organize your resources.
  7. Click "Review + create".
  8. Review your configuration and click "Create".
Tip: The deployment can take several minutes. You can monitor the deployment progress in the Azure portal notifications.

Using Azure CLI

You can also deploy Azure Firewall programmatically using the Azure Command-Line Interface (CLI).

First, ensure you have the Azure CLI installed and are logged in:

az login

Create a resource group:

az group create --name MyResourceGroup --location eastus

Create a virtual network and subnet (if they don't exist):

az network vnet create \
  --resource-group MyResourceGroup \
  --name MyVnet \
  --address-prefix 10.0.0.0/16

az network vnet subnet create \
  --resource-group MyResourceGroup \
  --vnet-name MyVnet \
  --name AzureFirewallSubnet \
  --address-prefix 10.0.1.0/24

Deploy the Azure Firewall:

az network firewall create \
  --resource-group MyResourceGroup \
  --name MyAzureFirewall \
  --location eastus \
  --vnet-name MyVnet \
  --public-ip-address MyFirewallPublicIp \
  --firewall-policy MyFirewallPolicy

Note: For the above command, you might need to create a public IP address and a firewall policy separately or specify existing ones.

Note: The Azure CLI commands are illustrative. Refer to the official Azure CLI documentation for the most up-to-date syntax and parameters.

Post-Deployment Configuration

After successful deployment, you'll need to configure routing and firewall rules to enforce your security policies.

Configure Network Routes

You need to configure route tables to direct traffic through the firewall. Create a route table and add a default route (0.0.0.0/0) that points to the Azure Firewall's private IP address.

Configure Firewall Rules

Define Network Rules (for IP addresses, ports, and protocols) and Application Rules (for FQDNs) to control inbound and outbound traffic. This is typically done via Firewall Policies.

For detailed configuration of firewall rules and policies, refer to the Azure Firewall Policy Management section.

Deploying Azure Firewall is a critical step in securing your cloud environment. By following these steps, you can establish a robust network security perimeter for your Azure resources.