다음을 통해 공유


New-AzureRmFirewall

리소스 그룹에 새 방화벽을 만듭니다.

Warning

AzureRM PowerShell 모듈은 2024년 2월 29일부터 공식적으로 사용되지 않습니다. 사용자는 지속적인 지원 및 업데이트를 보장하기 위해 AzureRM에서 Az PowerShell 모듈로 마이그레이션하는 것이 좋습니다.

AzureRM 모듈은 여전히 작동할 수 있지만 더 이상 기본 또는 지원되지 않으므로 사용자의 재량에 따라 계속 사용할 수 있습니다. Az 모듈로 전환하는 방법에 대한 지침은 마이그레이션 리소스를 참조하세요.

구문

New-AzureRmFirewall
   -Name <String>
   -ResourceGroupName <String>
   -Location <String>
   [-VirtualNetworkName <String>]
   [-PublicIpName <String>]
   [-ApplicationRuleCollection <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSAzureFirewallApplicationRuleCollection]>]
   [-NatRuleCollection <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSAzureFirewallNatRuleCollection]>]
   [-NetworkRuleCollection <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSAzureFirewallNetworkRuleCollection]>]
   [-Tag <Hashtable>]
   [-Force]
   [-AsJob]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

New-AzureRmFirewall cmdlet은 Azure Firewall을 만듭니다.

예제

1: 가상 네트워크에 연결된 방화벽 만들기

New-AzureRmFirewall -Name "azFw" -ResourceGroupName "rg" -Location centralus -VirtualNetworkName "vnet" -PublicIpName "pip-name"

이 예제에서는 방화벽과 동일한 리소스 그룹에 가상 네트워크 "vnet"에 연결된 방화벽을 만듭니다. 규칙이 지정되지 않으므로 방화벽은 모든 트래픽(기본 동작)을 차단합니다.

2: 모든 HTTPS 트래픽을 허용하는 방화벽 만들기

$rule = New-AzureRmFirewallApplicationRule -Name R1 -Protocol "https:443" -TargetFqdn "*" 
$ruleCollection = New-AzureRmFirewallApplicationRuleCollection -Name RC1 -Priority 100 -Rule $rule -ActionType "Allow"
New-AzureRmFirewall -Name "azFw" -ResourceGroupName "rg" -Location centralus -VirtualNetworkName "vnet" -PublicIpName "pip-name" -ApplicationRuleCollection $ruleCollection

이 예제에서는 포트 443에서 모든 HTTPS 트래픽을 허용하는 방화벽을 만듭니다.

3: DNAT - 10.1.2.3:80에서 10.2.3.4:8080으로 향하는 트래픽 리디렉션

$rule = New-AzureRmFirewallNatRule -Name "natRule" -Protocol "TCP" -SourceAddress "*" -DestinationAddress "10.1.2.3" -DestinationPort "80" -TranslatedAddress "10.2.3.4" -TranslatedPort "8080"
$ruleCollection = New-AzureRmFirewallNatRuleCollection -Name "NatRuleCollection" -Priority 1000 -Rule $rule
New-AzureRmFirewall -Name "azFw" -ResourceGroupName "rg" -Location centralus -NatRuleCollection $ruleCollection

이 예제에서는 10.1.2.3:80에서 10.2.3.4:8080으로 향하는 모든 패킷의 대상 IP 및 포트를 변환하는 방화벽을 만들었습니다.

매개 변수

-ApplicationRuleCollection

새 방화벽에 대한 애플리케이션 규칙의 컬렉션을 지정합니다.

형식:List<T>[PSAzureFirewallApplicationRuleCollection]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-AsJob

백그라운드에서 cmdlet 실행

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Confirm

cmdlet을 실행하기 전에 확인 메시지가 표시됩니다.

형식:SwitchParameter
별칭:cf
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-DefaultProfile

Azure와의 통신에 사용되는 자격 증명, 계정, 테넌트 및 구독입니다.

형식:IAzureContextContainer
별칭:AzureRmContext, AzureCredential
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Force

사용자 확인을 요청하지 않고 명령을 강제 실행합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Location

방화벽의 지역을 지정합니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Name

이 cmdlet이 만드는 Azure Firewall의 이름을 지정합니다.

형식:String
별칭:ResourceName
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-NatRuleCollection

AzureFirewallNatRuleCollections 목록

형식:List<T>[PSAzureFirewallNatRuleCollection]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-NetworkRuleCollection

AzureFirewallNetworkRuleCollections 목록

형식:List<T>[PSAzureFirewallNetworkRuleCollection]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-PublicIpName

공용 IP 이름입니다. 공용 IP는 표준 SKU를 사용해야 하며 방화벽과 동일한 리소스 그룹에 속해야 합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-ResourceGroupName

방화벽을 포함할 리소스 그룹의 이름을 지정합니다.

형식:String
Position:Named
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-Tag

해시 테이블 형식의 키-값 쌍입니다. 예시:

@{key0="value0"; key1=$null; key2="value2"}

형식:Hashtable
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-VirtualNetworkName

방화벽을 배포할 가상 네트워크의 이름을 지정합니다. 가상 네트워크 및 방화벽은 동일한 리소스 그룹에 속해야 합니다.

형식:String
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-WhatIf

cmdlet이 실행될 경우 결과 동작을 표시합니다. cmdlet이 실행되지 않습니다.

형식:SwitchParameter
별칭:wi
Position:Named
Default value:False
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

None

이 cmdlet은 입력을 허용하지 않습니다.

출력

Microsoft.Azure.Commands.Network.Models.PSFirewall