
はじめに
Azure CLIを利用して、ネットワークセキュリティーグループを作成する方法をご紹介いたします。前回と前々回はAzule CLIを利用して、リソースグループと仮想ネットワーク、その仮想ネットワーク内にサブネットを作成しました。シリーズ3回目である今回はNSG(Network Security Group)についてご紹介いたします。
ネットワーク セキュリティ グループ
NSG(Network Security Group)はパケットフィルタリングを束てたもので, IP アドレス, ポート番号やプロトコルで制限をかけることができます。
NSGは、サブネットやサブネット内のVMに関連づけることができます。サブネット内に関連付けた場合サブネット内の全てのVMにその制限が適応されます。
注意事項として以下のようなものがあります。
- NSG名はリージョン内で一意で有る必要がある。
- NSGはNSGが作成されたリージョン内のみ適応可能。
- リージョン内であれば他のリソースグループのリソースにも適応できる。
参考 : ネットワーク セキュリティ グループ (NSG) について
ネットワークセキュリティーグループの作成
次のNSG(Network Security Group)を作成することができます。
# azure network nsg create -g -n -l
※ NSG名はリージョン内で一意である必要があります。
※ locationは# azure location list
で一覧を表示することができます。
リソースグループ名 : TestResourceGroup
NSG名 : TestNSG
ロケーション : japaneast
[code]
# azure network nsg create -g TestResourceGroup -n TestNSG -l japaneast
info: Executing command network nsg create
+ Looking up the network security group “TestNSG”
+ Creating a network security group “TestNSG”
data: Id : /subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/TestResourceGroup/providers/Microsoft.Network/networkSecurityGroups/TestNSG
data: Name : TestNSG
data: Type : Microsoft.Network/networkSecurityGroups
data: Location : japaneast
data: Provisioning state : Succeeded
data: Security rules:
data: Name Source IP Source Port Destination IP Destination Port Protocol Direction Access Priority
data: —————————– —————– ———– ————– —————- ——– ——— —— ——–
data: AllowVnetInBound VirtualNetwork * VirtualNetwork * * Inbound Allow 65000
data: AllowAzureLoadBalancerInBound AzureLoadBalancer * * * * Inbound Allow 65001
data: DenyAllInBound * * * * * Inbound Deny 65500
data: AllowVnetOutBound VirtualNetwork * VirtualNetwork * * Outbound Allow 65000
data: AllowInternetOutBound * * Internet * * Outbound Allow 65001
data: DenyAllOutBound * * * * * Outbound Deny 65500
info: network nsg create command OK
[/code]
ネットワークセキュリティーグループの確認
次のコマンドで、リソースグループ内のネットワークセキュリティグループのリストを表示することができます。
# azure network nsg list -g
[code]
# azure network nsg list -g TestResourceGroup
info: Executing command network nsg list
+ Getting the network security groups
data: Name Location Resource group Provisioning state Rules number
data: ——- ——— —————– —————— ————
data: TestNSG japaneast TestResourceGroup Succeeded 6
info: network nsg list command OK
[/code]
TestResourceGroupというリソースグループにTestNSGというネットワークセキュリティグループが追加されました。
ネットワークセキュリティーグループルール
作成したネットワーク セキュリティ グループに受信セキュリティ規則を追加します。今回はSSH接続を許可する設定をします。
ネットワークセキュリティーグループルールの作成
azure network nsg rule create -g -a -n --source-port-range --destination-port-range --access Allow --priority
[code]
# azure network nsg rule create -g TestResourceGroup -a TestNSG -n NSGssh –source-port-range ‘*’ –destination-port-range 22 –access Allow –priority 100
info: Executing command network nsg rule create
warn: Using default –protocol *
warn: Using default –source-address-prefix *
warn: Using default –destination-address-prefix *
warn: Using default –direction Inbound
+ Looking up the network security group “TestNSG”
+ Looking up the network security rule “NSGssh”
+ Creating a network security rule “NSGssh”
data: Id : /subscriptions/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/resourceGroups/TestResourceGroup/providers/Microsoft.Network/networkSecurityGroups/TestNSG/securityRules/NSGssh
data: Name : NSGssh
data: Type : Microsoft.Network/networkSecurityGroups/securityRules
data: Provisioning state : Succeeded
data: Source IP : *
data: Source Port : *
data: Destination IP : *
data: Destination Port : 22
data: Protocol : *
data: Direction : Inbound
data: Access : Allow
data: Priority : 100
info: network nsg rule create command OK
[/code]
ネットワークセキュリティーグループルールの確認
[code]
# azure network nsg rule list -g TestResourceGroup -a TestNSG
info: Executing command network nsg rule list
+ Looking up the network security group “TestNSG”
data: Security rules:
data: Name Source IP Source Port Destination IP Destination Port Protocol Direction Access Priority
data: —————————– —————– ———– ————– —————- ——– ——— —— ——–
data: NSGssh * * * 22 * Inbound Allow 100
data: AllowVnetInBound VirtualNetwork * VirtualNetwork * * Inbound Allow 65000
data: AllowAzureLoadBalancerInBound AzureLoadBalancer * * * * Inbound Allow 65001
data: DenyAllInBound * * * * * Inbound Deny 65500
data: AllowVnetOutBound VirtualNetwork * VirtualNetwork * * Outbound Allow 65000
data: AllowInternetOutBound * * Internet * * Outbound Allow 65001
data: DenyAllOutBound * * * * * Outbound Deny 65500
info: network nsg rule list command OK
[/code]
次回
今回は、セキュリティグループを作成し、そこにルールを追加して、そのセキュリティグループをサブネットに適用することまで行いました。
次回は、インターネット経由でssh接続するために、パブリックIPの作成と仮想マシンOS兼データ用ストレージアカウントを作成します。


コメント投稿