{Azure Firewall}Azure CLI を使用して Azure Firewall をデプロイして構成する

 

https://learn.microsoft.com/ja-jp/azure/firewall/deploy-cli

 

 

-- 1. 前作業

az login --use-device-code
az account show

az version

az configure --list-defaults
az configure --defaults location=japaneast
az configure --list-defaults

az group create \
--name rg9999999 \
--location japaneast


az group list
az upgrade

 


-- 2. VNet を作成する

az network vnet create \
--name vnet01 \
--resource-group rg9999999 \
--location japaneast \
--address-prefix 10.0.0.0/16


az network vnet subnet create \
--name AzureFirewallSubnet \
--resource-group rg9999999 \
--vnet-name vnet01   \
--address-prefix 10.0.0.0/26


az network vnet subnet create \
--name subnet01 \
--resource-group rg9999999 \
--vnet-name vnet01   \
--address-prefix 10.0.1.0/24

az network vnet subnet create \
--name subnet02 \
--resource-group rg9999999 \
--vnet-name vnet01   \
--address-prefix 10.0.2.0/24


-- 3. 仮想マシンを作成する


az vm create \
--resource-group rg9999999 \
--name vm02 \
--location japaneast \
--image win2016datacenter \
--vnet-name vnet01 \
--subnet subnet02 \
--admin-username azureuser \
--admin-password 'passwordpassword' \
--size Standard_B1s \

az vm open-port --port 3389 --resource-group rg9999999 --name vm02

 

az network nic create \
--resource-group rg9999999 \
--name nic01 \
--vnet-name vnet01 \
--subnet subnet01 \
--dns-servers 209.244.0.3 209.244.0.4

 


az vm create \
--resource-group rg9999999 \
--name vm01 \
--location japaneast \
--image win2016datacenter \
--nics nic01 \
--admin-username azureuser \
--admin-password 'passwordpassword' \
--size Standard_B1s \

 


-- 4. ファイアウォールをデプロイする

az network firewall create \
--name fw01 \
--resource-group rg9999999 \
--location japaneast \
--sku AZFW_VNet \
--tier Standard

 


az network public-ip create \
--name fw01pip \
--resource-group rg9999999 \
--location japaneast \
--allocation-method static \
--sku standard

az network firewall ip-config create \
--firewall-name fw01 \
--name fw01config \
--public-ip-address fw01pip \
--resource-group rg9999999 \
--vnet-name vnet01


az network firewall update \
--name fw01 \
--resource-group rg9999999 

az network public-ip show \
--name fw01pip \
--resource-group rg9999999

fwprivaddr="$(az network firewall ip-config list \
--resource-group rg9999999 \
--firewall-name fw01 \
--query "[?name=='fw01config'].privateIpAddress" \
--output tsv)"

echo $fwprivaddr


-- 5. 既定のルートを作成する

az network route-table create \
--name fw01rt \
--resource-group rg9999999 \
--location japaneast \
--disable-bgp-route-propagation true

az network route-table route create \
--resource-group rg9999999 \
--name fw01rtr \
--route-table-name fw01rt \
--address-prefix 0.0.0.0/0 \
--next-hop-type VirtualAppliance \
--next-hop-ip-address $fwprivaddr


az network vnet subnet update \
--name subnet01 \
--resource-group rg9999999 \
--vnet-name vnet01 \
--route-table fw01rt

 

-- 6. アプリケーション ルールを構成する

az network firewall application-rule create \
--collection-name rule01 \
--firewall-name fw01 \
--name allowgoogle \
--protocols Http=80 Https=443 \
--resource-group rg9999999 \
--target-fqdns www.google.com \
--source-addresses 10.0.1.0/24 \
--priority 200 \
--action Allow


-- 7. ネットワーク ルールを構成する


az network firewall network-rule create \
--collection-name rule02 \
--destination-addresses 209.244.0.3 209.244.0.4 \
--destination-ports 53 \
--firewall-name fw01 \
--name allowdns \
--protocols UDP \
--resource-group rg9999999 \
--priority 200 \
--source-addresses 10.0.1.0/24 \
--action Allow


-- 8. ファイアウォールをテストする

az vm list-ip-addresses \
--resource-group rg9999999 \
--name vm01

az vm list-ip-addresses \
--resource-group rg9999999 \
--name vm02

リモート デスクトップで vm02 仮想マシンに接続し、サインインします。 
そこから vm01 のプライベート IP アドレスへのリモート デスクトップ接続を開いて、サインインします。


nslookup www.google.com
nslookup www.microsoft.com

Invoke-WebRequest -Uri https://www.google.com

Invoke-WebRequest -Uri https://www.microsoft.com

 

 

-- 9. クリーンアップ

 

 

az group list

az group delete \
--name rg9999999 \
--yes

az group delete \
--name NetworkWatcherRG \
--yes