📖 Executive Summary

This project implements a Secure Hub-and-Spoke network topology, a standard pattern for organizing workloads in Azure. Ideally suited for enterprises requiring shared services, centralized security, and effective connectivity.

The architecture features a central Hub VNet hosting shared resources like Azure Firewall and VPN Gateway, and multiple Spoke VNets for isolated workload environments. Traffic is governed by User Defined Routes (UDRs) and VNet Peering.

🏗️ Architecture

graph TB subgraph AzureCloud [Azure Cloud] subgraph HubVNet ["Hub VNet (10.0.0.0/16)"] direction TB FW[Azure Firewall] VPNGW[VPN Gateway] DNS[Private DNS] end subgraph Spoke1VNet ["Spoke 1 VNet (10.1.0.0/16)"] direction TB VM1[Workload VM] end subgraph Spoke2VNet ["Spoke 2 VNet (10.2.0.0/16)"] direction TB VM2[Workload VM] end %% Traffic Flow VM1 -->|UDR 0.0.0.0/0| FW VM2 -->|UDR 0.0.0.0/0| FW %% Gateway Transit VPNGW -.->|Gateway Transit| VM1 VPNGW -.->|Gateway Transit| VM2 end OnPrem[On-Premises Network] <-->|Site-to-Site VPN| VPNGW

>> Read: Deep Dive into the Architecture

🛠️ Technology Stack

🚀 Key Features

1. Centralized Security Control

2. Workload Isolation

>> Guide: Understanding Isolation

3. Hybrid Connectivity

📂 Repository Structure

/
├── main.bicep               # Orchestrator Deployment
├── modules/
│   ├── vnet.bicep           # VNet & Subnet Definitions
│   ├── firewall.bicep       # Azure Firewall & Policies
│   ├── vpngateway.bicep     # Virtual Network Gateway
│   ├── peering.bicep        # VNet Peering Logic
│   ├── routetable.bicep     # UDRs for Traffic Shaping
│   └── dns.bicep            # Private DNS Zones
└── README.md                # Documentation

💻 Getting Started

Prerequisites

Deployment Instructions

# Login to Azure
az login

# Create a Resource Group
az group create --name SecureHubSpokeRG --location eastus

# Deploy the Bicep Template
az deployment group create \
  --resource-group SecureHubSpokeRG \
  --template-file main.bicep

Verification

After deployment, use Network Watcher to verify the effective routes on a test VM in the Spoke VNet. Ensue next hop is the Azure Firewall.