英語で読む

次の方法で共有


ネットワーク セキュリティ グループの作成、変更、削除

ネットワーク セキュリティ グループ (NSG) でセキュリティ規則を使用すると、仮想ネットワーク サブネットとネットワーク インターフェイスに出入りするネットワーク トラフィックの種類をフィルター処理できます。 NSG の詳細については、ネットワーク セキュリティ グループの概要に関するページを参照してください。 次に、ネットワーク トラフィックのフィルター処理のチュートリアルを完了して、NSG について少し経験してみてください。

前提条件

Azure アカウントとアクティブなサブスクリプションをお持ちでない場合は、無料で作成できます。 この記事の残りの部分を始める前に、次のタスクのいずれかを完了してください。

  • ポータル ユーザー: Azure アカウントで Azure Portal にサインインします。

  • PowerShell ユーザー: Azure Cloud Shell でコマンドを実行するか、コンピューターからローカルで PowerShell を実行します。 Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールがプレインストールされており、アカウントで使用するように構成されています。 Cloud Shell のブラウザー タブで、[環境の選択] ドロップダウン リストを見つけます。 まだ選択されていない場合は、[PowerShell] を選択します。

    PowerShell をローカルで実行している場合は、Azure PowerShell モジュール バージョン 1.0.0 以降を使用してください。 インストールされているバージョンを確認するには、Get-Module -ListAvailable Az.Network を実行します。 インストールまたはアップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。 Connect-AzAccount を実行して Azure にサインインします。

  • Azure CLI ユーザー: Cloud Shell でコマンドを実行するか、コンピューターからローカルで Azure CLI を実行します。 Cloud Shell は無料のインタラクティブ シェルです。この記事の手順は、Azure Cloud Shell を使って実行することができます。 一般的な Azure ツールがプレインストールされており、アカウントで使用するように構成されています。 Cloud Shell のブラウザー タブで、[環境の選択] ドロップダウン リストを見つけます。 まだ選択されていない場合は、[Bash] を選択します。

    Azure CLI をローカルで実行している場合は、Azure CLI バージョン 2.0.28 以降を使用してください。 インストールされているバージョンを確認するには、az --version を実行します。 インストールまたはアップグレードが必要な場合は、Azure CLI のインストールに関するページを参照してください。 az login を実行して Azure にサインインします。

適切なアクセス許可を持つネットワーク共同作成者ロールまたはカスタム ロールを割り当てます。

ネットワーク セキュリティ グループを操作する

NSG の作成、すべて表示詳細表示変更削除を行うことができます。 また、NSG のネットワーク インターフェイスまたはサブネットへの関連付けや、関連付けの解除をすることもできます。

ネットワーク セキュリティ グループの作成

Azure リージョンおよびサブスクリプションごとに作成できる NSG の数は制限されています。 詳しくは、「Azure サブスクリプションとサービスの制限、クォータ、制約」をご覧ください。

New-AzNetworkSecurityGroup を使用して、米国東部リージョンに myNSG という名前の NSG を作成します。 myNSG という名前の NSG は、既存の myResourceGroup リソース グループに作成されます。

New-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup  -Location  eastus

すべてのネットワーク セキュリティ グループを表示する

Get-AzNetworkSecurityGroup を使用して、サブスクリプション内のすべての NSG を一覧表示します。

Get-AzNetworkSecurityGroup | format-table Name, Location, ResourceGroupName, ProvisioningState, ResourceGuid

ネットワーク セキュリティ グループの詳細を表示する

Get-AzNetworkSecurityGroup を使用して、NSG の詳細を表示します。

Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup

記載されている一般的な Azure 設定の詳細については、次の記事を参照してください。

ネットワーク セキュリティ グループを変更する

NSG に対する最も一般的な変更は次のとおりです。

ネットワーク インターフェイスに対してネットワーク セキュリティ グループを関連付ける、または関連付けを解除する

NSG の関連付けと関連付けの解除の詳細については、「ネットワーク セキュリティ グループを関連付けるか関連付けを解除する」を参照してください。

サブネットに対してネットワーク セキュリティ グループを関連付ける、または関連付けを解除する

Set-AzVirtualNetworkSubnetConfig を使用して、サブネットに対する NSG の関連付けまたは関連付け解除を行います。

## Place the virtual network configuration into a variable. ##
$virtualNetwork = Get-AzVirtualNetwork -Name myVNet -ResourceGroupName myResourceGroup
## Place the network security group configuration into a variable. ##
$networkSecurityGroup = Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup
## Update the subnet configuration. ##
Set-AzVirtualNetworkSubnetConfig -Name mySubnet -VirtualNetwork $virtualNetwork -AddressPrefix 10.0.0.0/24 -NetworkSecurityGroup $networkSecurityGroup
## Update the virtual network. ##
Set-AzVirtualNetwork -VirtualNetwork $virtualNetwork

ネットワーク セキュリティ グループを削除する

NSG がサブネットまたはネットワーク インターフェイスに関連付けられている場合は、削除できません。 NSG を削除する前に、すべてのサブネットおよびネットワーク インターフェイスから NSG の関連付けを解除します。

Remove-AzNetworkSecurityGroup を使用して、NSG を削除します。

Remove-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup

セキュリティ規則を操作する

NSG には 0 個以上のセキュリティ規則が含まれます。 セキュリティ規則の作成すべて表示詳細の表示変更削除を行うことができます。

セキュリティ規則を作成する

各 Azure の場所とサブスクリプションに対して作成できる NSG ごとの規則の数は制限されています。 詳しくは、「Azure サブスクリプションとサービスの制限、クォータ、制約」をご覧ください。

Add-AzNetworkSecurityRuleConfig を使用して、NSG 規則を作成します。

## Place the network security group configuration into a variable. ##
$networkSecurityGroup = Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup
## Create the security rule. ##
Add-AzNetworkSecurityRuleConfig -Name RDP-rule -NetworkSecurityGroup $networkSecurityGroup `
-Description "Allow RDP" -Access Allow -Protocol Tcp -Direction Inbound -Priority 300 `
-SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389
## Updates the network security group. ##
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $networkSecurityGroup

すべてのセキュリティ規則を表示する

NSG には 0 個以上の規則が含まれます。 規則を表示するときの情報の一覧の詳細については、「セキュリティ規則」を参照してください。

Get-AzNetworkSecurityRuleConfig を使用して、NSG のセキュリティ規則を表示します。

## Place the network security group configuration into a variable. ##
$networkSecurityGroup = Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup
## List security rules of the network security group in a table. ##
Get-AzNetworkSecurityRuleConfig -NetworkSecurityGroup $networkSecurityGroup | format-table Name, Protocol, Access, Priority, Direction, SourcePortRange, DestinationPortRange, SourceAddressPrefix, DestinationAddressPrefix

セキュリティ規則の詳細を表示する

Get-AzNetworkSecurityRuleConfig を使用して、セキュリティ規則の詳細を表示します。

## Place the network security group configuration into a variable. ##
$networkSecurityGroup = Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup
## View details of the security rule. ##
Get-AzNetworkSecurityRuleConfig -Name RDP-rule -NetworkSecurityGroup $networkSecurityGroup

注意

この手順は、カスタム セキュリティ規則にのみ適用されます。 既定のセキュリティ規則を選択した場合は機能しません。

セキュリティ規則を変更する

Set-AzNetworkSecurityRuleConfig を使用して、NSG 規則を更新します。

## Place the network security group configuration into a variable. ##
$networkSecurityGroup = Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup
## Make changes to the security rule. ##
Set-AzNetworkSecurityRuleConfig -Name RDP-rule -NetworkSecurityGroup $networkSecurityGroup `
-Description "Allow RDP" -Access Allow -Protocol Tcp -Direction Inbound -Priority 200 `
-SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389
## Updates the network security group. ##
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $networkSecurityGroup

注意

この手順は、カスタム セキュリティ規則にのみ適用されます。 既定のセキュリティ規則を変更することは許可されていません。

セキュリティ規則を削除する

Remove-AzNetworkSecurityRuleConfig を使用して、NSG からセキュリティ規則を削除します。

## Place the network security group configuration into a variable. ##
$networkSecurityGroup = Get-AzNetworkSecurityGroup -Name myNSG -ResourceGroupName myResourceGroup
## Remove the security rule. ##
Remove-AzNetworkSecurityRuleConfig -Name RDP-rule -NetworkSecurityGroup $networkSecurityGroup
## Updates the network security group. ##
Set-AzNetworkSecurityGroup -NetworkSecurityGroup $networkSecurityGroup

注意

この手順は、カスタム セキュリティ規則にのみ適用されます。 既定のセキュリティ規則を変更することは許可されていません。

アプリケーション セキュリティ グループを操作する

アプリケーション セキュリティ グループには、0 個または複数個のネットワーク インターフェイスが含まれます。 詳細については、「アプリケーション セキュリティ グループ」を参照してください。 アプリケーション セキュリティ グループ内のすべてのネットワーク インターフェイスは、同じ仮想ネットワークに存在している必要があります。 アプリケーション セキュリティ グループにネットワーク インターフェイスを追加する方法については、「アプリケーション セキュリティ グループにネットワーク インターフェイスを追加する」を参照してください。

アプリケーション セキュリティ グループを作成する

New-AzApplicationSecurityGroup を使用して、アプリケーション セキュリティ グループを作成します。

New-AzApplicationSecurityGroup -ResourceGroupName myResourceGroup -Name myASG -Location eastus

すべてのアプリケーション セキュリティ グループを表示する

Get-AzApplicationSecurityGroup を使用して、Azure サブスクリプション内のすべてのアプリケーション セキュリティ グループを一覧表示します。

Get-AzApplicationSecurityGroup | format-table Name, ResourceGroupName, Location

特定のアプリケーション セキュリティ グループの詳細を表示する

Get-AzApplicationSecurityGroup を使用して、アプリケーション セキュリティ グループの詳細を表示します。

Get-AzApplicationSecurityGroup -Name myASG

アプリケーション セキュリティ グループを変更する

PowerShell を使用してアプリケーション セキュリティ グループを変更することはできません。

アプリケーション セキュリティ グループを削除する

アプリケーションのセキュリティ グループにネットワーク インターフェイスが含まれる場合は、アプリケーションのセキュリティ グループを削除できません。 アプリケーションのセキュリティ グループからすべてのネットワーク インターフェイスを削除するには、ネットワーク インターフェイスの設定を変更するか、ネットワーク インターフェイスを削除します。 詳細については、「アプリケーション セキュリティ グループに対して追加または削除を実行する」または「ネットワーク インターフェイスの削除」を参照してください。

Remove-AzApplicationSecurityGroup を使って、アプリケーションのセキュリティ グループを削除します。

Remove-AzApplicationSecurityGroup -ResourceGroupName myResourceGroup -Name myASG

アクセス許可

NSG、セキュリティ規則、アプリケーション セキュリティ グループを管理するには、アカウントにネットワーク共同作成者ロールを割り当てる必要があります。 次の表に示すように、適切なアクセス許可が割り当てられたカスタム ロールを使用することもできます。

注意

ネットワーク共同作成者ロールがリソース グループ レベルで割り当てられている場合、サービス タグの完全な一覧が表示され "ない" ことがあります。 完全な一覧を表示するには、代わりにサブスクリプション スコープでこのロールを割り当てます。 リソース グループに対してネットワーク共同作成者ロールのみを許可できる場合は、アクセス許可 Microsoft.Network/locations/serviceTags/read および Microsoft.Network/locations/serviceTagDetails/read のカスタム ロールを作成することもできます。 これらをサブスクリプション スコープで割り当て、リソース グループ スコープでネットワーク共同作成者ロールを割り当てます。

ネットワーク セキュリティ グループ

アクション Name
Microsoft.Network/networkSecurityGroups/read NSG を取得します。
Microsoft.Network/networkSecurityGroups/write NSG を作成または更新します。
Microsoft.Network/networkSecurityGroups/delete NSG を削除します。
Microsoft.Network/networkSecurityGroups/join/action NSG をサブネットまたはネットワーク インターフェイスに関連付けます。

注意

NSG に対して write 操作を実行するには、サブスクリプション アカウントに、Microsoft.Network/networkSecurityGroups/write アクセス許可に加えて、少なくともリソース グループに対する read アクセス許可が必要です。

ネットワーク セキュリティ グループの規則

アクション Name
Microsoft.Network/networkSecurityGroups/securityRules/read 規則を取得します。
Microsoft.Network/networkSecurityGroups/securityRules/write 規則を作成または更新します。
Microsoft.Network/networkSecurityGroups/securityRules/delete 規則を削除します。

アプリケーション セキュリティ グループ

アクション Name
Microsoft.Network/applicationSecurityGroups/joinIpConfiguration/action IP 構成をアプリケーション セキュリティ グループに結合します。
Microsoft.Network/applicationSecurityGroups/joinNetworkSecurityRule/action セキュリティ規則をアプリケーション セキュリティ グループに結合します。
Microsoft.Network/applicationSecurityGroups/read アプリケーションのセキュリティ グループを取得します。
Microsoft.Network/applicationSecurityGroups/write アプリケーション セキュリティ グループを作成または更新します。
Microsoft.Network/applicationSecurityGroups/delete アプリケーション セキュリティ グループを削除します。