次の方法で共有


Azure PowerShell を使用して複数の Azure Firewall 規則を追加または変更する

Azure Firewall または Azure Firewall ポリシーに新しい規則を追加する場合は、次の手順を使用して、更新時間の合計を減らす必要があります。

  1. Azure Firewall または Azure Firewall ポリシー オブジェクトを取得します。
  2. すべての新しい規則を追加し、その他の必要な変更をローカル オブジェクトで実行します。 既存の規則コレクションに追加することも、必要に応じて新しい規則コレクションを作成することもできます。
  3. すべての変更が行われた場合にのみ、ファイアウォールまたはファイアウォール ポリシーの更新をプッシュします。

次の例では、Azure PowerShell を使用して、既存のファイアウォール ポリシーに複数の新しい DNAT 規則を追加する方法を示します。 次の場合も同じ原則に従う必要があります。

  • アプリケーションまたはネットワーク規則を更新する。
  • クラシック ルールで管理されているファイアウォールを更新する。

次の手順を慎重に確認してください。 まず、テスト ポリシーでそれを試し、ニーズに合わせて正常に動作することを確認する必要があります。

Azure アカウントに接続し、サブスクリプションにコンテキストを設定する

Connect-AzAccount
Set-AzContext -Subscription "<Subscription ID>"

ファイアウォール ポリシー、規則コレクション グループ、および規則コレクションのローカル オブジェクトを作成する

$policy = Get-AzFirewallPolicy -Name "<Policy Name>" -ResourceGroupName "<Resource Group Name>"
$natrulecollectiongroup = Get-AzFirewallPolicyRuleCollectionGroup -Name "<Rule Collection Group Name>" -ResourceGroupName "<Resource Group Name>" -AzureFirewallPolicyName "<Firewall Policy Name>"
$existingrulecollection = $natrulecollectiongroup.Properties.RuleCollection | where {$_.Name -eq "<rule collection name"}

追加する新しい規則を定義する

$newrule1 = New-AzFirewallPolicyNatRule -Name "dnat-rule1" -Protocol "TCP" -SourceAddress "<Source Address>" -DestinationAddress "<Destination>" -DestinationPort "<Destination Port>" -TranslatedAddress "<Translated Address>" -TranslatedPort "<Translated Port>"
$newrule2 = New-AzFirewallPolicyNatRule -Name "dnat-rule1" -Protocol "TCP" -SourceAddress "<Source Address>" -DestinationAddress "<Destination>" -DestinationPort "<Destination Port>" -TranslatedAddress "<Translated Address>" -TranslatedPort "<Translated Port>"

新しい規則をローカル規則コレクション オブジェクトに追加する

$existingrulecollection.Rules.Add($newrule1)
$existingrulecollection.Rules.Add($newrule2)

この手順を使用して、さらに規則を追加したり、同じ規則コレクション グループ内の既存の規則を変更したりします。

Azure で規則コレクションを更新する

Set-AzFirewallPolicyRuleCollectionGroup -Name " <Rule Collection Group Name> " -FirewallPolicyObject $policy -Priority 200 -RuleCollection $natrulecollectiongroup.Properties.rulecollection

次のステップ