Advanced · Azure Firewall · 28 of 32

Inspect on-premises traffic with Azure Firewall

Problem

srv-onprem can't reach vm-spoke1 on 443.

Your job
  • Get srv-onprem reaching vm-spoke1 on 443 through azfw-hub
Without breaking
  • Keep SSH from on-premises to vm-spoke1 blockedbroken
Background

Security wants all traffic between vm-spoke1 and on-premises inspected by azfw-hub at 10.0.1.4. rt-spoke1 already sends 192.168.0.0/16 to the firewall. Traffic from on-premises enters Azure at vgw-hub, in the hub's GatewaySubnet. srv-onprem needs to reach vm-spoke1 on 443, and nothing works yet. SSH from on-premises must stay blocked.

How to work it
  1. 1See it fail

    Prove the problem yourself before you change anything. Reports are often wrong.

    VM commands forVMs
    1. ssh srv-onprem
      What's this?

      Opens a shell on srv-onprem, so the next commands run on that VM. In this lab it's a shortcut. In real Azure you'd connect through something like Azure Bastion, or SSH to an address you can reach.

    2. nc -zv 10.1.1.4 443
      What's this?

      netcat, a standard Linux tool. Tries to open a TCP connection and reports whether it worked.

      • -z only check whether the port answers. Send no data
      • -v print the result in words
      • 10.1.1.4 where to connect
      • 443 the port to try

    Ticks off when the test runs on srv-onprem.

  2. 2Find where it stops
  3. 3Name the cause
  4. 4Fix it and test again
  5. 5Explain it
Sources on Microsoft Learn (3)
0/4 changes
Network map
?
  • Resource group, the outer dashed frame
  • Virtual network, with its address space top right
  • Subnet, with range and usable IPs (5 reserved)
  • Network security group. A small shield on a VM's NIC means the NIC has one too
  • Route table on the subnet
  • NICVM Appliance Private endpoint
  • Peering Connected Initiated or access off
  • Goal working Goal broken, X marks where it stops
  • Private DNS zone, dotted lines go to linked VNets
  • Orange pulse: what your last command changed. Drag to pan, Ctrl and scroll to zoom.
Resource grouprg-labvnet-spoke1: tap to inspectVirtual networkvnet-spoke110.1.0.0/16subnet-app: tap to inspectsubnet-app10.1.1.0/24 · 251 usablert-spoke1vm-spoke1 10.1.1.4: tap to inspectNICvm-spoke110.1.1.4vnet-hub: tap to inspectVirtual networkvnet-hub10.0.0.0/16GatewaySubnet: tap to inspectGatewaySubnet10.0.255.0/27 · 27 usablevgw-hub 10.0.255.4: tap to inspectVPNvgw-hub10.0.255.4AzureFirewallSubnet: tap to inspectAzureFirewallSubnet10.0.1.0/26 · 59 usableazfw-hub 10.0.1.4: tap to inspectFWazfw-hub10.0.1.4onprem-dc: tap to inspectOn-premises networkonprem-dc192.168.0.0/16subnet-servers: tap to inspectsubnet-servers192.168.10.0/24 · 251 usablesrv-onprem 192.168.10.5: tap to inspectNICsrv-onprem192.168.10.5Connected: tap to inspectpeeredVPN connection from vgw-hub to onprem-dcVPN:443 ✗
  • srv-onprem → vm-spoke1:443should work: not working
  • srv-onprem → vm-spoke1:22should stay blocked: blocked
Goals 0/3
Cloud Shell · bashVMsrg-lab · eastus2
cloudshell:~$