자습서: Azure DDoS Protection으로 공용 부하 분산 장치 보호
Azure DDoS Protection을 사용하면 적응형 튜닝, 공격 경고 알림 및 모니터링 같이 향상된 DDoS 완화 기능을 통해 대규모 DDoS 공격으로부터 공용 부하 분산 장치를 보호할 수 있습니다.
Important
Azure DDoS Protection은 네트워크 보호 SKU를 사용할 때 비용이 발생합니다. 초과분 요금은 테넌트에서 보호되는 ID가 100개를 초과하는 경우에만 적용됩니다. 나중에 리소스를 사용하지 않는 경우 이 자습서에서 리소스를 삭제해야 합니다. 가격 책정에 대한 자세한 내용은 Azure DDoS Protection 가격 책정을 참조하세요. Azure DDoS Protection에 대한 자세한 내용은 Azure DDoS Protection이란?을 참조하세요.
이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.
- DDoS 보호 계획을 만듭니다.
- DDoS 보호 및 Bastion 서비스가 사용하도록 설정된 가상 네트워크를 만듭니다.
- 프런트 엔드 IP, 상태 프로브, 백 엔드 구성 및 부하 분산 규칙을 사용하여 표준 SKU 공용 부하 분산 장치를 만듭니다.
- 백 엔드 풀에 대한 아웃바운드 인터넷 액세스를 위한 NAT 게이트웨이를 만듭니다.
- 가상 머신을 만든 다음 VM에 IIS를 설치 및 구성하여 포트 전달 및 부하 분산 규칙을 시연합니다.
Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.
필수 조건
- 활성 구독이 있는 Azure 계정.
DDoS 보호 계획 만들기
Azure Portal에 로그인합니다.
포털 위쪽의 검색 상자에 DDoS 보호를 입력합니다. 검색 결과에서 DDoS 보호 계획을 선택한 다음 + 만들기를 선택합니다.
DDoS 보호 계획 만들기 페이지의 기본 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 Azure 구독을 선택합니다. Resource group 새로 만들기를 선택합니다.
TutorLoadBalancer-rg를 입력합니다.
확인을 선택합니다.인스턴스 세부 정보 이름 myDDoSProtectionPlan을 입력합니다. 지역 (미국) 미국 동부를 선택합니다. 검토 + 만들기을 선택한 다음 만들기를 선택하여 DDoS 보호 계획을 배포합니다.
가상 네트워크 만들기
이 섹션에서는 가상 네트워크, 서브넷, Azure Bastion 호스트를 만들고 DDoS Protection 계획을 연결합니다. 가상 네트워크 및 서브넷에는 부하 분산 장치 및 가상 머신이 포함됩니다. 베스천 호스트는 가상 머신을 안전하게 관리하고 IIS를 설치하여 부하 분산 장치를 테스트하는 데 사용됩니다. DDoS 보호 계획은 가상 네트워크의 모든 공용 IP 리소스를 보호합니다.
Important
시간당 가격 책정은 아웃바운드 데이터 사용량에 관계없이 Bastion이 배포되는 순간부터 시작됩니다. 자세한 내용은 가격 책정 및 SKU를 참조하세요. 자습서를 보거나 테스트 중에 Bastion을 배포하는 경우 이 리소스 사용을 마친 후 삭제하는 것이 좋습니다.
포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
가상 네트워크에서 + 만들기를 선택합니다.
가상 네트워크 만들기의 기본 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 Azure 구독을 선택합니다. 리소스 그룹 TutorLoadBalancer-rg를 선택합니다. 인스턴스 세부 정보 이름 myVNet 입력 지역 미국 동부를 선택합니다. IP 주소 탭을 선택하거나 페이지 하단의 다음: IP 주소를 선택합니다.
IP 주소 탭에서 다음 정보를 입력합니다.
설정 값 IPv4 주소 공간 10.1.0.0/16 입력 서브넷 이름 아래에서 기본값이라는 단어를 선택합니다. 서브넷이 없으면 + 서브넷 추가를 선택합니다.
서브넷 편집에서 다음 정보를 입력합니다.
설정 값 서브넷 이름 myBackendSubnet 입력 서브넷 주소 범위 10.1.0.0/24 입력 저장 또는 추가를 선택합니다.
보안 탭을 선택합니다.
BastionHost에서 사용을 선택합니다. 다음 정보를 입력합니다.
설정 값 Bastion 이름 myBastionHost 입력 AzureBastionSubnet 주소 공간 10.1.1.0/26을 입력합니다. 공용 IP 주소 새로 만들기를 선택합니다.
이름에 myBastionIP를 입력합니다.
확인을 선택합니다.DDoS 네트워크 보호에서 사용을 선택합니다. 그런 다음 드롭다운 메뉴에서 myDDoSProtectionPlan을 선택합니다.
검토 + 만들기 탭을 선택하거나 검토 + 만들기 단추를 선택합니다.
만들기를 선택합니다.
참고 항목
가상 네트워크와 서브넷이 즉시 만들어집니다. 베스천 호스트 만들기는 작업으로 제출되며 10분 이내에 완료됩니다. 베스천 호스트가 만들어지는 동안 다음 단계를 진행할 수 있습니다.
부하 분산 장치 만들기
이 섹션에서는 가상 머신의 부하를 분산하는 영역 중복 부하 분산 장치를 만듭니다. 영역 중복에서 하나 이상의 가용성 영역이 실패할 수 있고 지역에서 한 영역이 정상으로 유지되는 한 데이터 경로는 유효합니다.
부하 분산 장치를 만드는 동안 다음을 구성합니다.
- 프런트 엔드 IP 주소
- 백 엔드 풀
- 인바운드 부하 분산 규칙
- 상태 프로브
포털 맨 위에 있는 검색 상자에 부하 분산 장치를 입력합니다. 검색 결과에서 부하 분산 장치를 선택합니다.
부하 분산 장치 페이지에서 + 만들기를 선택합니다.
부하 분산 장치 만들기 페이지의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 Subscription 구독을 선택합니다. Resource group TutorLoadBalancer-rg를 선택합니다. 인스턴스 세부 정보 이름 myLoadBalancer를 입력합니다. 지역 미국 동부를 선택합니다. SKU 기본값인 표준을 그대로 둡니다. Type 퍼블릭을 선택합니다. 계층 기본 지역을 그대로 둡니다. 페이지 하단에서 다음: 프런트 엔드 IP 구성을 선택합니다.
프런트 엔드 IP 구성에서 + 프런트 엔드 IP 구성 추가를 선택합니다.
이름에 myFrontend를 입력합니다.
IP 버전으로 IPv4를 선택합니다.
IP 형식으로 IP 주소를 선택합니다.
참고 항목
IP 접두사에 대한 자세한 내용은 Azure 공용 IP 주소 접두사를 참조하세요.
공용 IP 주소에서 새로 만들기를 선택합니다.
공용 IP 주소 추가에서 이름에 myPublicIP를 입력합니다.
가용성 영역에서 영역 중복을 선택합니다.
라우팅 기본 설정에는 Microsoft 네트워크의 기본값을 그대로 둡니다.
확인을 선택합니다.
추가를 선택합니다.
페이지 하단에서 다음: 백 엔드 풀을 선택합니다.
백 엔드 풀 탭에서 + 백 엔드 풀 추가를 선택합니다.
백 엔드 풀 추가의 이름에 myBackendPool을 입력합니다.
가상 네트워크에서 myVNet을 선택합니다.
백 엔드 풀 구성에 IP 주소를 선택합니다.
저장을 선택합니다.
페이지 하단에서 다음: 수신 규칙을 선택합니다.
인바운드 규칙 탭의 부하 분산 규칙에서 + 부하 분산 규칙 추가를 선택합니다.
부하 분산 규칙 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 속성 myHTTPRule 입력 IP 버전 요구 사항에 따라 IPv4 또는 IPv6를 선택합니다. 프런트 엔드 IP 주소 myFrontend(만들기 예정)를 선택합니다. 백 엔드 풀 myBackendPool을 선택합니다. 프로토콜 TCP를 선택합니다. 포트 80을 입력합니다. 백 엔드 포트 80을 입력합니다. 상태 프로브 새로 만들기를 선택합니다.
이름에 myHealthProbe를 입력합니다.
프로토콜에서 TCP를 선택합니다.
나머지는 기본값으로 두고 확인을 선택합니다.세션 지속성 없음을 선택합니다. 유휴 제한 시간(분) 15를 입력하거나 선택합니다. TCP 재설정 사용을 선택합니다. 부동 IP 사용 안 함을 선택합니다. 아웃바운드 SNAT(Source Network Address Translation) (권장) 아웃바운드 규칙을 사용하여 백 엔드 풀 멤버에 인터넷 액세스 권한을 제공합니다.(기본값)를 그대로 둡니다. 추가를 선택합니다.
페이지 하단에 있는 파란색 검토 + 만들기 단추를 선택합니다.
만들기를 선택합니다.
참고 항목
이 예에서는 아웃바운드 인터넷 액세스를 제공하기 위해 NAT Gateway를 만듭니다. 구성의 아웃바운드 규칙 탭은 NAT 게이트웨이에서 필수가 아닌 선택 사항이므로 무시됩니다. Azure NAT Gateway에 대한 자세한 내용은 Azure Virtual Network NAT란 무엇인가요?를 참조하세요. Azure의 아웃바운드 연결에 대한 자세한 내용은 아웃바운드 연결을 위한 SNAT(Source Network Address Translation)를 참조하세요.
NAT 게이트웨이 만들기
이 섹션에서는 가상 네트워크의 리소스에 대한 아웃바운드 인터넷 액세스를 위한 NAT 게이트웨이를 만듭니다. 아웃바운드 규칙에 대한 다른 옵션은 아웃바운드 연결을 위한 SNAT(Network Address Translation)를 확인합니다.
포털 맨 위에 있는 검색 상자에 NAT 게이트웨이를 입력합니다. 검색 결과에서 NAT 게이트웨이를 선택합니다.
NAT 게이트웨이에서 + 만들기를 선택합니다.
NAT(Network Address Translation) 게이트웨이 만들기에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 Subscription 구독을 선택합니다. Resource group TutorLoadBalancer-rg를 선택합니다. 인스턴스 세부 정보 NAT Gateway 이름 myNATgateway를 입력합니다. 지역 미국 동부를 선택합니다. 가용성 영역 없음을 선택합니다. 유휴 제한 시간(분) 15를 입력합니다. 아웃바운드 IP 탭을 선택하거나 페이지 하단에 있는 다음: 아웃바운드 IP를 선택합니다.
아웃바운드 IP에서 공용 IP 주소 옆에 있는 새 공용 IP 주소 만들기를 선택합니다.
이름에 myNATgatewayIP를 입력합니다.
확인을 선택합니다.
서브넷 탭을 선택하거나 페이지 하단에 있는 다음: 서브넷 단추를 선택합니다.
가상 네트워크의 서브넷 탭에서 myVNet을 선택합니다.
서브넷 이름 아래에서 myBackendSubnet을 선택합니다.
페이지 하단에서 파란색 검토 + 만들기 단추를 선택하거나 검토 + 만들기 탭을 선택합니다.
만들기를 실행합니다.
가상 머신 만들기
이 섹션에서는 두 개의 다른 영역(영역 1 및 영역 2)에서 두 개의 VM(myVM1 및 myVM2)을 만듭니다.
이러한 VM은 이전에 만든 부하 분산 장치의 백 엔드 풀에 추가됩니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
가상 머신에서 + 만들기>Azure Virtual Machines를 선택합니다.
가상 머신 만들기의 기본 탭에서 다음 값을 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 Azure 구독 선택 리소스 그룹 TutorLoadBalancer-rg를 선택합니다. 인스턴스 세부 정보 가상 머신 이름 myVM1을 입력합니다. 지역 ((미국) 미국 동부)를 선택합니다. 가용성 옵션 가용성 영역을 선택합니다. 가용성 영역 영역 1을 선택합니다. 보안 유형 표준을 선택합니다. 이미지 Windows Server 2022 Datacenter: Azure Edition - Gen2를 선택합니다. Azure Spot 인스턴스 기본값을 선택하지 않은 상태로 둡니다. 크기 VM 크기를 선택하거나 기본 설정을 사용합니다. 관리자 계정 사용자 이름 사용자 이름을 입력합니다. 암호 암호를 입력합니다. 암호 확인 암호 다시 입력 인바운드 포트 규칙 공용 인바운드 포트 없음을 선택합니다. 네트워킹 탭을 선택하거나 다음: 디스크, 다음: 네트워킹을 차례로 선택합니다.
네트워킹 탭에서 다음 정보를 선택하거나 입력합니다.
설정 값 네트워크 인터페이스 가상 네트워크 myVNet을 선택합니다. 서브넷 myBackendSubnet 선택 공용 IP 없음을 선택합니다. NIC 네트워크 보안 그룹 추가 고급을 선택합니다. 네트워크 보안 그룹 구성 나머지 설정이 완료될 때까지 이 설정을 건너뜁니다. 백 엔드 풀 선택 후에 완료합니다. VM 삭제 시 NIC 삭제 선택 안 한 상태(기본값)를 그대로 둡니다. 가속된 네트워킹 선택한 상태(기본값)를 그대로 둡니다. 부하 분산 부하 분산 옵션 부하 분산 옵션 Azure 부하 분산 장치 선택 부하 분산 장치 선택 myLoadBalancer를 선택합니다. 백 엔드 풀 선택 myBackendPool을 선택합니다. 네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
네트워크 보안 그룹 만들기에서 이름에 myNSG를 입력합니다.
인바운드 규칙에서 + 인바운드 규칙 추가를 선택합니다.
서비스에서 HTTP를 선택합니다.
우선 순위에 100을 입력합니다.
이름에 myNSGRule
을 입력하고 추가
를 선택한 후 확인을 선택합니다.검토 + 만들기를 선택합니다.
설정을 검토한 다음, 만들기를 선택합니다.
1~7단계에 따라 다음 값 및 myVM1과 동일한 다른 모든 설정을 사용하여 또 다른 VM을 만듭니다.
설정 VM 2 이름 myVM2 가용성 영역 영역 2 네트워크 보안 그룹 기존 myNSG를 선택합니다.
참고 항목
Azure는 공용 IP 주소가 할당되지 않았거나 내부 기본 Azure Load Balancer의 백 엔드 풀에 있는 VM에 대한 기본 아웃바운드 액세스 IP를 제공합니다. 기본 아웃바운드 액세스 IP 메커니즘은 구성할 수 없는 아웃바운드 IP 주소를 제공합니다.
다음 이벤트 중 하나가 발생하면 기본 아웃바운드 액세스 IP가 사용하지 않도록 설정됩니다.
- 공용 IP 주소가 VM에 할당됩니다.
- VM은 아웃바운드 규칙 유무에 관계없이 표준 Load Balancer의 백 엔드 풀에 배치됩니다.
- Azure NAT Gateway 리소스는 VM의 서브넷에 할당됩니다.
유연한 오케스트레이션 모드에서 가상 머신 확장 집합을 사용하여 만드는 VM에는 기본 아웃바운드 액세스 권한이 없습니다.
Azure의 아웃바운드 연결에 대한 자세한 내용은 Azure의 기본 아웃바운드 액세스 및 아웃바운드 연결에 SNAT(원본 네트워크 주소 변환) 사용을 참조하세요.
IIS 설치
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
myVM1을 선택합니다.
개요 페이지에서 연결을 선택한 다음, Bastion을 선택합니다.
VM을 만드는 동안 입력한 사용자 이름과 암호를 입력합니다.
연결을 선택합니다.
서버 데스크톱에서 시작>Windows PowerShell>Windows PowerShell로 이동합니다.
PowerShell 창에서 아래 명령을 실행하여 다음을 수행합니다.
- IIS 서버를 설치합니다.
- 기본 iisstart.htm 파일을 제거합니다.
- VM 이름을 표시하는 새 iisstart.htm 파일을 추가합니다.
# Install IIS server role Install-WindowsFeature -name Web-Server -IncludeManagementTools # Remove default htm file Remove-Item C:\inetpub\wwwroot\iisstart.htm # Add a new htm file that displays server name Add-Content -Path "C:\inetpub\wwwroot\iisstart.htm" -Value $("Hello World from " + $env:computername)
myVM1이 포함된 Bastion 세션을 닫습니다.
1~8단계를 반복하여 myVM2에 IIS 및 업데이트된 iisstart.htm 파일을 설치합니다.
부하 분산 장치 테스트
페이지 맨 위에 있는 검색 상자에 공용 IP를 입력합니다. 검색 결과에서 공용 IP 주소를 선택합니다.
공용 IP 주소에서 myPublicIP를 선택합니다.
IP 주소로 항목을 복사합니다. 브라우저의 주소 표시줄에 공용 IP를 붙여넣습니다. IIS 웹 서버의 사용자 지정 VM 페이지가 브라우저에 표시됩니다.
리소스 정리
더 이상 필요하지 않으면 리소스 그룹, 부하 분산 장치 및 모든 관련 리소스를 삭제합니다. 이렇게 하려면 리소스가 포함된 TutorLoadBalancer-rg 리소스 그룹을 선택한 다음 삭제를 선택합니다.
다음 단계
방법을 알아보려면 다음 문서를 진행하세요.