多くの場合、組織では、新しいアプリケーションやワークロードのオンボード、セキュリティの脆弱性への対処、メンテナンスの実行、未使用のルールのマージまたは削除によるポリシーの最適化など、さまざまな理由で Azure Firewall ポリシーを更新する必要があります。 これらの更新プログラムには複数の共同作成者が関与する場合があり、各変更のデプロイには数分かかる場合があります。
Azure Firewall Policy Draft + Deployment を使用すると、次の 2 段階のアプローチを使用してこのプロセスを合理化できます。
サポートされているシナリオと制限事項
下書きおよび展開機能は、特定のユース ケース向けに設計されており、特定の制約があります。
サポートされているシナリオ
- この機能は、Azure Firewall ポリシーでのみ使用できます。 クラシック ルールで構成されたファイアウォールはサポートされていません。
制限事項
- ドラフトは、現在適用されているポリシーの複製として作成されます。 下書きの作成後に適用されたポリシーに加えられた変更は、手動で更新されない限り、下書きには反映されません。
- 下書きを展開すると、適用されたポリシー全体が置き換えられます。 下書きが作成された後に適用されたポリシーに加えられた変更は、下書きにも追加されない限り保持されません。
- 新しいルール コレクション グループ (RCG) の作成は、ポリシードラフト内で直接サポートされていません。
- 任意の時点において存在できるポリシーのドラフトは 1 つだけです。
[前提条件]
- Azure サブスクリプションをお持ちでない場合は、 無料アカウント を作成して開始できます。
- Azure CLI でこの機能を使用するには、Azure Firewall 拡張機能がインストールされ、バージョン 1.2.3 以降に更新されていることを確認します。
注
Azure PowerShell または Azure REST API を使用してこの機能を使用する場合は、最初に現在のポリシーをダウンロードし、それに基づいて下書きを手動で作成する必要があります。 これに対し、Azure portal または CLI を使用すると、既存のポリシーからドラフトが自動的に生成されます。
ドラフト + デプロイを使用する
Azure Firewall Draft + Deployment を使用すると、運用環境に適用する前にファイアウォール ポリシーを一括更新できます。
Azure portal で、既存のファイアウォール ポリシーに移動するか、新しいファイアウォール ポリシーを作成します。
[Azure Firewall Policy] ページの [管理] セクションで、[下書き] と [デプロイ] を選択し、[新しい下書きの作成] を選択します。 これにより、現在適用されているポリシーの正確なコピーである下書きが作成されます。
下書きページで、ルールまたは設定を変更または追加します。 これらのページは、展開されたポリシーのページと同じです。 変更は、下書きを展開した場合にのみ有効になります。
変更を確認するには、[ 展開 ] 画面に戻り、更新されたルールまたは設定を確認します。 変更を適用するには、[ 下書きのデプロイ] を選択します。 デプロイされると、ドラフトによって現在のポリシーが置き換えられ、最新バージョンになります。 下書きはデプロイ後に削除されます。
必要に応じてこのプロセスを繰り返して、ファイアウォール ポリシーをさらに更新します。
az login コマンドを実行して、Azure アカウントにログインします。
az login
az network firewall policy draft create コマンドを使用して下書きを作成します。 このコマンドは、現在適用されているポリシーの下書きを作成します。
--policy-nameパラメーターと--resource-group パラメーターを使用して、ファイアウォール ポリシーの名前とリソース グループを指定できます。
az network firewall policy draft create --policy-name fw-policy --resource-group test-rg
az network firewall policy draft update コマンドを使用して、下書きの設定を更新します。 このコマンドを使用すると、ドラフトの脅威インテリジェンス モードと IDPS モードを変更できます。
--threat-intel-mode パラメーターを使用して、目的の脅威インテリジェンス モードを設定し、--idps-mode パラメーターを設定して侵入検出および防止システム (IDPS) モードを構成します。
az network firewall policy draft update --policy-name fw-policy --resource-group test-rg --threat-intel-mode Off --idps-mode Deny
ドラフト ルールを更新する
az network firewall policy rule-collection-group draft create コマンドを使用して新しい規則コレクション グループ (RCG) を作成します。
az network firewall policy rule-collection-group draft create --rule-collection-group-name rcg-b --policy-name fw-policy --resource-group test-rg --priority 303
ドラフトの既存の RCG に NAT 規則コレクションを追加する
az network firewall policy rule-collection-group draft collection add-nat-collection \
--name nat_collection_1 \
--collection-priority 10003 \
--policy-name fw-policy \
--resource-group test-rg \
--rule-collection-group-name rcg-c \
--action DNAT \
--rule-name network_rule_21 \
--description "test" \
--destination-addresses "202.120.36.15" \
--source-addresses "202.120.36.13" "202.120.36.14" \
--translated-address 128.1.1.1 \
--translated-port 1234 \
--destination-ports 12000 12001 \
--ip-protocols TCP UDP
az network firewall policy draft show コマンドを使用して下書きの詳細を表示します。
az network firewall policy draft show --policy-name fw-policy --resource-group test-rg
az network firewall policy deploy コマンドを使用して、下書きをデプロイして変更を適用します。
az network firewall policy deploy --name fw-policy --resource-group test-rg
az network firewall policy draft delete コマンドを使用してドラフトが不要になった場合は、下書きを破棄します。
az network firewall policy draft delete --policy-name fw-policy --resource-group test-rg
New-AzFirewallPolicyDraft コマンドレットを使用して、現在適用されているポリシーのドラフトを作成します。 ポリシー名とリソース グループを指定します。
New-AzFirewallPolicyDraft -AzureFirewallPolicyName fw-policy -ResourceGroupName test-rg
Set-AzFirewallPolicyDraft コマンドレットを使用して、下書きの設定を更新します。 たとえば、脅威インテリジェンス モードと IDPS モードを更新できます。
Set-AzFirewallPolicyDraft -AzureFirewallPolicyName fw-policy -ResourceGroupName test-rg -ThreatIntelWhitelist $threatIntelWhitelist
次のコマンドレットを使用して下書きルールを更新します。
New-AzFirewallPolicyRuleCollectionGroupDraft -AzureFirewallPolicyRuleCollectionGroupName rcg-a -ResourceGroupName test-rg -AzureFirewallPolicyName fw-policy -Priority 200
$rule1 = New-AzFirewallPolicyApplicationRule -Name "Allow-HTTP" -Protocol "Http:80" -SourceAddress "10.0.0.0/24" -TargetFqdn www.example.com
$rule2 = New-AzFirewallPolicyApplicationRule -Name "Allow-HTTPS-2" -Protocol "Https:443" -SourceAddress "10.0.0.0/24" -TargetFqdn "www.secureexample.com"
$ruleCollection = New-AzFirewallPolicyFilterRuleCollection -Name "Allow-Rules" -Priority 100 -Rule $rule1, $rule2 -ActionType Allow
Set-AzFirewallPolicyRuleCollectionGroupDraft -AzureFirewallPolicyRuleCollectionGroupName rcg-b -ResourceGroupName test-rg -AzureFirewallPolicyName fw-policy -Priority 400 -RuleCollection $ruleCollection
Get-AzFirewallPolicyDraft コマンドレットを使用して、ドラフトの詳細を表示します。
Get-AzFirewallPolicyDraft -AzureFirewallPolicyName fw-policy -ResourceGroupName test-rg
Deploy-AzFirewallPolicy コマンドレットを使用して、ドラフトの変更をライブ ポリシーに適用します。
Deploy-AzFirewallPolicy -Name fw-policy -ResourceGroupName test-rg
変更を適用せずに下書きを破棄する場合は、 Remove-AzFirewallPolicyDraft コマンドレットを使用します。
Remove-AzFirewallPolicyDraft -AzureFirewallPolicyName fw-policy -ResourceGroupName test-rg
次のステップ