Create a Site-to-Site VPN Connection

Last updated: 8/15/2018

This template allows you to create a Site-to-Site VPN Connection using Virtual Network Gateways

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.


Parameter Name Description
vpnType Route based (Dynamic Gateway) or Policy based (Static Gateway)
localGatewayName Arbitrary name for gateway resource representing your local/on-prem gateway
localGatewayIpAddress Public IP of your local/on-prem gateway
localAddressPrefix CIDR block representing the address space of your local/on-prem network's Subnet
virtualNetworkName Arbitrary name for the Azure Virtual Network
azureVNetAddressPrefix CIDR block representing the address space of the Azure VNet
subnetName Arbitrary name for the Azure Subnet
subnetPrefix CIDR block for VM subnet, subset of azureVNetAddressPrefix address space
gatewaySubnetPrefix CIDR block for gateway subnet, subset of azureVNetAddressPrefix address space
gatewayPublicIPName Arbitrary name for public IP resource used for the new azure gateway
gatewayName Arbitrary name for the new gateway
gatewaySku The Sku of the Gateway. This must be one of Basic, Standard or HighPerformance.
connectionName Arbitrary name for the new connection between Azure VNet and other network
sharedKey Shared key (PSK) for IPSec tunnel
vmName Name of the sample VM to create
vmImageSKU VM Image SKU
vmSize Size of the Virtual Machine.
adminUsername Username for sample VM
adminPassword User password for sample VM

Use the template


New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri
Install and configure Azure PowerShell

Command line

azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri
Install and Configure the Azure Cross-Platform Command-Line Interface