Visual Studio 、Azure PowerShell などで 仮想マシンV2 を作成してみましたが、とくにネットワークセキュリティについて設定していませんでした。このままですとPingも通ってしまってあまりよろしくありません。
これらはネットワークセキュリティグループで、制御するのが一般的です。ネットワークセキュリティグループはFirewallそのものと思ってもらえれば。
Azure PowerShellでの例
以下は、上記スクリプトの差分的な感じです。
ARM Azure PowerShellでは、
- New-AzureNetworkSecurityRuleConfig
- New-AzureNetworkSecurityGroup
を使います。その名の通り、New-AzureNetworkSecurityRuleConfigでルールを定義し、New-AzureNetworkSecurityGroup でネットワークセキュリティグループを作成します。
ルールを複数作って、一括して設定することもできます。
$rule = New-AzureNetworkSecurityRuleConfig -Name "allow-ssh" ` -Protocol Tcp -Direction Inbound -Access Allow -Priority 100 ` -SourcePortRange * -SourceAddressPrefix * ` -DestinationPortRange 22 -DestinationAddressPrefix * $nsg = New-AzureNetworkSecurityGroup -ResourceGroupName $rg ` -Name "myNetworkSecurity" -Location japanwest ` -SecurityRules $rule
作ったルールは、ネットワークインタフェースに設定できるほか、サブネットに対しても指定できるみたいです。
New-AzureNetworkInterface コマンドのNetworkSecurityGroup 引数に渡せばOKです。
$nic = New-AzureNetworkInterface -ResourceGroupName $rg -Location $loc ` -Name $nicName -PrivateIpAddress $privateIpAddress -Subnet $subnet ` -PublicIpAddress $ip -NetworkSecurityGroup $nsg
以上