Create a sandbox setup of Azure Firewall with Linux VMs

Last updated: 10/17/2019

This template creates a virtual network with 3 subnets (server subnet, jumpbox subet and AzureFirewall subnet), a jumpbox VM with public IP, A server VM, UDR route to point to Azure Firewall for the Server Subnet and an Azure Firewall with 1 or more Public IP addresses, 1 sample application rule and 1 sample network rule

This Azure Resource Manager template was created by a member of the community and not by Microsoft. Each Resource Manager template is licensed to you under a license agreement by its owner, not Microsoft. Microsoft is not responsible for Resource Manager templates provided and licensed by community members and does not screen for security, compatibility, or performance. Community Resource Manager templates are not supported under any Microsoft support program or service, and are made available AS IS without warranty of any kind.

Parameters

Parameter Name Description
virtualNetworkName virtual network name
adminUsername Username for the Virtual Machine.
location Location for all resources, the location must support Availability Zones if required.
availabilityZones Zone numbers e.g. 1,2,3.
vmSize Zone numbers e.g. 1,2,3.
numberOfFirewallPublicIPAddresses Number of public IP addresses for the Azure Firewall
authenticationType Type of authentication to use on the Virtual Machine. SSH key is recommended.
adminPasswordOrKey SSH Key or password for the Virtual Machine. SSH key is recommended.

Use the template

PowerShell

New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-azurefirewall-sandbox-linux/azuredeploy.json
Install and configure Azure PowerShell

Command line

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-azurefirewall-sandbox-linux/azuredeploy.json
Install and Configure the Azure Cross-Platform Command-Line Interface