랩 04 - 가상 네트워킹 구현
랩 소개
이 랩은 가상 네트워킹에 중점을 둔 세 가지 랩 중 첫 번째입니다. 이 랩에서는 가상 네트워킹 및 서브넷의 기본 사항을 알아봅니다. 네트워크 보안 그룹 및 애플리케이션 보안 그룹을 사용하여 네트워크를 보호하는 방법을 알아봅니다. 또한 DNS 영역 및 레코드에 대해서도 알아봅니다.
이 랩을 수행하려면 Azure 구독이 필요합니다. 구독 유형은 이 랩의 기능 가용성에 영향을 미칠 수 있습니다. 지역을 변경할 수 있지만 단계는 미국 동부를 사용하여 작성됩니다.
예상 소요 시간: 50분
랩 시나리오
글로벌 조직에서는 가상 네트워크를 구현할 계획입니다. 즉각적인 목표는 기존 리소스를 모두 수용하는 것입니다. 그러나 조직은 성장 단계에 있으며 성장을 위한 추가 용량이 있는지 확인하려고 합니다.
CoreServicesVnet 가상 네트워크에는 가장 많은 리소스가 있습니다. 많은 양의 증가가 예상되므로 이 가상 네트워크에는 대용량 주소 공간이 필요합니다.
ManufacturingVnet 가상 네트워크에는 제조 시설 운영을 위한 시스템이 포함되어 있습니다. 조직에서는 시스템에서 데이터를 검색할 내부 연결 디바이스가 많을 것으로 예상하고 있습니다.
대화형 랩 시뮬레이션
이 항목에 유용할 수 있는 몇 가지 대화형 랩 시뮬레이션이 있습니다. 시뮬레이션을 통해 고유의 속도에 맞춰 유사한 시나리오를 클릭할 수 있습니다. 대화형 시뮬레이션과 이 랩에는 차이점이 있지만 핵심 개념은 대부분 동일합니다. Azure 구독은 필요하지 않습니다.
-
네트워크 트래픽을 보호합니다. 가상 머신, 가상 네트워크 및 네트워크 보안 그룹을 만듭니다. 트래픽을 허용하거나 허용하지 않는 네트워크 보안 그룹 규칙을 추가합니다.
-
간단한 가상 네트워크를 만듭니다. 두 개의 가상 머신으로 가상 네트워크를 만듭니다. 가상 머신이 통신할 수 있음을 보여 줍니다.
-
Azure에서 가상 네트워크를 설계 및 구현합니다. 리소스 그룹을 만들고 서브넷이 있는 가상 네트워크를 만듭니다.
-
가상 네트워킹을 구현합니다. 가상 네트워크를 만들어 구성하고, 가상 머신을 배포하고, 네트워크 보안 그룹을 구성하고, Azure DNS를 구성합니다.
아키텍처 다이어그램
이러한 가상 네트워크와 서브넷은 기존 리소스를 허용하는 방식으로 구성되지만 예상된 성장을 허용합니다. 이러한 가상 네트워크 및 서브넷을 만들어 네트워킹 인프라의 기반을 구축해 보겠습니다.
유용한 정보: 문제를 줄이고 문제 해결을 간소화하려면 IP 주소 범위가 겹치지 않도록 하는 것이 좋습니다. 클라우드든 온-프레미스든 전체 네트워크에서 중복이 문제가 됩니다. 많은 조직에서는 중복을 방지하고 향후 성장을 계획하기 위해 전사적 IP 주소 지정 체계를 설계합니다.
작업 기술
- 작업 1: 포털을 사용하여 서브넷이 있는 가상 네트워크를 만듭니다.
- 작업 2: 템플릿을 사용하여 가상 네트워크와 서브넷을 만듭니다.
- 작업 3: 애플리케이션 보안 그룹과 네트워크 보안 그룹 간의 통신을 만들고 구성합니다.
- 작업 4: 공용 및 프라이빗 Azure DNS 영역을 구성합니다.
작업 1: 포털을 사용하여 서브넷이 있는 가상 네트워크 만들기
조직은 핵심 서비스에 대한 대규모 성장을 계획하고 있습니다. 이 작업에서는 기존 리소스와 계획된 증가를 수용하기 위해 가상 네트워크 및 연결된 서브넷을 만듭니다. 이 작업에서는 Azure Portal을 사용합니다.
-
Azure Portal -
https://portal.azure.com
에 로그인합니다. -
Virtual Networks
을 검색하고 선택합니다. -
가상 네트워크 페이지에서 만들기를 선택합니다.
-
CoreServicesVnet에 대한 기본 사항 탭을 완료합니다.
옵션 값 리소스 그룹 az104-rg4
(필요한 경우 새로 만들기)이름 CoreServicesVnet
지역 (미국) 미국 동부 -
IP 주소 탭으로 이동합니다.
옵션 값 IPv4 주소 공간 미리 채워진 IPv4 주소 공간을 10.20.0.0/16
(으)로 바꿉니다(항목 구분). -
+ 서브넷 추가를 선택합니다. 각 서브넷의 이름과 주소 정보를 입력합니다. 각각의 새 서브넷에 대해 추가를 선택해야 합니다. 다른 서브넷을 만들기 전이나 후에 기본 서브넷을 삭제해야 합니다.
서브넷 옵션 값 SharedServicesSubnet 서브넷 이름 SharedServicesSubnet
시작 주소 10.20.10.0
크기 /24
DatabaseSubnet 서브넷 이름 DatabaseSubnet
시작 주소 10.20.20.0
크기 /24
참고: 모든 가상 네트워크에는 하나 이상의 서브넷이 있어야 합니다. 5개의 IP 주소는 항상 예약되므로 계획 시 이를 고려합니다.
-
CoreServicesVnet 및 연결된 서브넷 만들기를 마치려면 검토 + 만들기를 선택합니다.
-
구성이 유효성 검사를 통과했는지 확인한 다음 만들기를 선택합니다.
-
가상 네트워크가 배포될 때까지 기다린 다음 리소스로 이동을 선택합니다.
-
주소 공간과 서브넷을 확인해 보세요. 설정 블레이드에서 다른 선택 사항을 확인합니다.
-
자동화 섹션에서 템플릿 내보내기를 선택한 다음 템플릿이 생성될 때까지 기다립니다.
-
템플릿을 다운로드합니다.
-
로컬 컴퓨터에서 다운로드 폴더로 이동하여 다운로드한 Zip 파일의 파일을 모두 추출합니다.
-
계속하기 전에 template.json 파일이 있는지 확인합니다. 다음 작업에서는 이 템플릿을 사용하여 ManufacturingVnet을 만듭니다.
작업 2: 템플릿을 사용하여 가상 네트워크 및 서브넷 만들기
이 작업에서는 ManufacturingVNet 가상 네트워크 및 연결된 서브넷을 만듭니다. 조직은 제조 사무실이 늘어날 것을 예상하여 성장에 맞게 서브넷 크기를 조정합니다. 이 작업에서는 템플릿을 사용하여 리소스를 만듭니다.
-
이전 작업에서 내보낸 template.json 파일을 찾습니다. 다운로드 폴더에 있어야 합니다.
-
원하는 편집기를 사용하여 파일을 편집합니다. 많은 편집기에는 모든 항목 변경 기능이 있습니다. Visual Studio Code를 사용하는 경우 제한 모드가 아닌 신뢰할 수 있는 창에서 작업해야 합니다. 세부 사항을 확인하려면 아키텍처 다이어그램을 참조하세요.
ManufacturingVNet 가상 네트워크를 변경합니다.
-
모든 CoreServicesVnet 항목을
ManufacturingVnet
으로 바꿉니다. -
모든 10.20.0.0을
10.30.0.0
으로 바꿉니다.
ManufacturingVNet 서브넷을 변경합니다.
-
모든 SharedServicesSubnet 항목을
SensorSubnet1
로 변경합니다. -
모든 10.20.10.0/24 항목을
10.30.20.0/24
로 변경합니다. -
모든 DatabaseSubnet 항목을
SensorSubnet2
로 변경합니다. -
10.20.20.0/24의 모든 항목을
10.30.21.0/24
로 변경합니다. -
파일을 다시 읽어보고 모든 내용이 올바른지 확인합니다. 리소스 이름 및 IP 주소에 아키텍처 다이어그램을 사용합니다.
-
변경 내용을 저장합니다.
참고: 랩 파일 디렉터리에 완료된 템플릿 파일이 있습니다.
매개 변수 파일을 변경합니다.
-
이전 작업에서 내보낸 parameters.json 파일을 찾습니다. 다운로드 폴더에 있어야 합니다.
-
원하는 편집기를 사용하여 파일을 편집합니다.
-
CoreServicesVnet의 한 항목을
ManufacturingVnet
으로 바꿉니다. -
변경 내용을 저장합니다.
사용자 지정 템플릿 배포
-
포털에서
Deploy a custom template
를 검색하여 선택합니다. -
편집기에서 사용자 고유의 템플릿 만들기를 선택한 다음 파일 로드를 선택합니다.
-
제조 변경 내용이 포함된 template.json 파일을 선택한 다음 저장을 선택합니다.
-
매개 변수 편집을 선택한 다음 로드 파일을 선택합니다.
-
제조 변경 사항이 포함된 parameters.json 파일을 선택한 다음 저장을 선택합니다.
-
리소스 그룹인 az104-rg4가 선택되어 있는지 확인합니다.
-
검토 + 만들기를 선택한 다음, 만들기를 선택합니다.
-
템플릿이 배포될 때까지 기다린 다음 포털에서 제조 가상 네트워크 및 서브넷이 만들어졌는지 확인합니다.
참고: 두 번 이상 배포해야 하는 경우 일부 리소스가 성공적으로 완료되어 배포가 실패할 수 있습니다. 해당 리소스를 수동으로 제거하고 다시 시도할 수 있습니다.
작업 3: 애플리케이션 보안 그룹과 네트워크 보안 그룹 간의 통신 만들기 및 구성
이 작업에서는 애플리케이션 보안 그룹과 네트워크 보안 그룹을 만듭니다. NSG에는 ASG의 트래픽을 허용하는 인바운드 보안 규칙이 있습니다. NSG에는 인터넷 액세스를 거부하는 아웃바운드 규칙도 있습니다.
ASG(애플리케이션 보안 그룹) 만들기
-
Azure Portal에서
Application security groups
를 검색하여 선택합니다. -
만들기를 클릭하고 기본 정보를 제공합니다.
설정 값 구독 구독 리소스 그룹 az104-rg4 이름 asg-web
지역 미국 동부 -
검토 + 만들기를 클릭하고 유효성 검사를 수행한 후 만들기를 클릭합니다.
참고: 이 시점에서 ASG를 가상 머신과 연결합니다. 이러한 컴퓨터는 다음 작업에서 만드는 인바운드 NSG 규칙의 영향을 받습니다.
네트워크 보안 그룹을 만들고 이를 CoreServicesVnet과 연결합니다.
-
Azure Portal에서
Network security groups
를 검색하여 선택합니다. -
+ 만들기를 선택하고 기본 사항 탭에 정보를 제공합니다.
설정 값 구독 구독 리소스 그룹 az104-rg4 이름 myNSGSecure
지역 미국 동부 -
검토 + 만들기를 클릭하고 유효성 검사를 수행한 후 만들기를 클릭합니다.
-
NSG가 배포된 후 리소스로 이동을 클릭합니다.
-
설정에서 서브넷을 클릭한 다음 연결을 클릭합니다.
설정 값 가상 네트워크 CoreServicesVnet(az104-rg4) 서브넷 SharedServicesSubnet -
연결을 저장하려면 확인을 클릭합니다.
ASG 트래픽을 허용하도록 인바운드 보안 규칙 구성
-
NSG로 계속 작업합니다. 설정 영역에서 인바운드 보안 규칙을 선택합니다.
-
기본 인바운드 규칙을 검토합니다. 다른 가상 네트워크 및 부하 분산 장치만 액세스가 허용됩니다.
-
+ 추가를 선택합니다.
-
인바운드 보안 규칙 추가 블레이드에서 다음 정보를 사용하여 인바운드 포트 규칙을 추가합니다. 이 규칙은 ASG 트래픽을 허용합니다. 완료되면 추가를 선택합니다.
설정 값 원본 애플리케이션 보안 그룹 원본 애플리케이션 보안 그룹 asg-web 원본 포트 범위 * 대상 임의 서비스 사용자 지정(다른 선택 사항 확인) 대상 포트 범위 80,443 프로토콜 TCP 작업 허용 우선 순위 100 이름 AllowASG
인터넷 액세스를 거부하는 아웃바운드 NSG 규칙 구성
-
인바운드 NSG 규칙을 만든 후 아웃바운드 보안 규칙을 선택합니다.
-
AllowInternetOutboundRule 규칙을 확인합니다. 또한 규칙은 삭제할 수 없으며 우선 순위는 65001입니다.
-
+ 추가를 선택한 다음 인터넷 액세스를 거부하는 아웃바운드 규칙을 구성합니다. 완료되면 추가를 선택합니다.
설정 값 원본 임의 원본 포트 범위 * 대상 Service 태그 대상 서비스 태그 인터넷 서비스 사용자 지정 대상 포트 범위 8080 프로토콜 모두 작업 Deny 우선 순위 4096 이름 DenyAnyCustom8080Outbound
작업 4: 공용 및 프라이빗 Azure DNS 영역 구성
이 작업에서는 공용 및 프라이빗 DNS 영역을 만들고 구성합니다.
공용 DNS 영역 구성
공용 도메인에서 호스트 이름을 확인하기 위한 Azure DNS를 구성할 수 있습니다. 예를 들어 도메인 이름 등록 기관에서 contoso.xyz 도메인 이름을 구입한 경우, Azure DNS에서 contoso.com
도메인을 호스팅하고 www.contoso.xyz 를 웹 서버 또는 웹앱의 IP 주소로 확인하도록 구성할 수 있습니다.
-
포털에서
DNS zones
를 검색하여 선택합니다. -
+ 만들기를 선택합니다.
-
기본 사항 탭을 구성합니다.
속성 값 Subscription 구독 선택 Resource group az-104-rg4 속성 contoso.com
(예약된 경우 이름 조정)지역 미국 동부(정보 아이콘 검토) -
검토 만들기, 만들기를 차례로 선택합니다.
-
DNS 영역이 배포될 때까지 기다린 다음 리소스로 이동을 선택합니다.
-
개요 블레이드에서 영역에 할당된 4개의 Azure DNS 이름 서버 이름을 확인합니다. 이름 서버 주소 중 하나를 복사합니다. 이는 다음 단계에서 필요합니다.
-
DNS 관리 블레이드를 확장하고 레코드 집합을 선택합니다. +추가를 클릭합니다.
속성 값 이름 www 형식 A TTL 1 IP 주소 10.1.1.4
참고: 실제 시나리오에서는 웹 서버의 공용 IP 주소를 입력합니다.
-
추가를 선택하고 도메인에 www라는 이름의 A 레코드 집합이 있는지 확인합니다.
-
명령 프롬프트를 열고 다음 명령을 실행합니다. 도메인 이름을 변경한 경우 조정합니다.
nslookup www.contoso.com <name server name>
-
호스트 이름 www.contoso.com이 제공한 IP 주소로 확인되는지 확인합니다. 이는 이름 확인이 올바르게 작동하고 있음을 확인합니다.
프라이빗 DNS 영역 구성
프라이빗 DNS 영역이 가상 네트워크 내에서 이름 확인 서비스를 제공합니다. 프라이빗 DNS 영역은 연결된 가상 네트워크에서만 액세스할 수 있으며 인터넷에서는 액세스할 수 없습니다.
-
포털에서
Private dns zones
를 검색하여 선택합니다. -
+ 만들기를 선택합니다.
-
프라이빗 DNS 영역 만들기의 기본 사항 탭에서 아래 표에 나열된 정보를 입력합니다.
속성 값 Subscription 구독 선택 Resource group az-104-rg4 속성 private.contoso.com
(이름을 바꿔야 하는 경우 조정)지역 미국 동부 -
검토 만들기, 만들기를 차례로 선택합니다.
-
DNS 영역이 배포될 때까지 기다린 다음 리소스로 이동을 선택합니다.
-
개요 블레이드에 이름 서버 레코드가 없음을 확인합니다.
-
DNS 관리 블레이드를 확장한 다음 가상 네트워크 링크를 선택합니다. 링크를 구성합니다.
속성 값 링크 이름 manufacturing-link
가상 네트워크 ManufacturingVnet
-
만들기를 선택하고 링크가 만들어질 때까지 기다립니다.
-
DNS 관리 블레이드에서 + 레코드 집합을 선택합니다. 이제 프라이빗 이름 확인 지원이 필요한 각 가상 머신에 대한 레코드를 추가합니다.
속성 값 속성 sensorvm Type A TTL 1 IP 주소 10.1.1.4
참고: 실제 시나리오에서는 특정 제조 가상 머신의 IP 주소를 입력합니다.
리소스 정리
고유의 구독으로 작업하는 경우 랩 리소스를 삭제해 보세요. 이렇게 하면 리소스가 확보되고 비용이 최소화됩니다. 랩 리소스를 삭제하려면 랩 리소스 그룹을 삭제하는 것이 가장 쉽습니다.
- Azure Portal에서 리소스 그룹을 선택하고 리소스 그룹 삭제, 리소스 그룹 이름 입력을 선택한 다음 삭제를 클릭합니다.
- Azure PowerShell 사용,
Remove-AzResourceGroup -Name resourceGroupName
. - CLI 사용,
az group delete --name resourceGroupName
.
Copilot을 사용하여 학습 확장
Copilot은 Azure 스크립팅 도구를 사용하는 방법을 익히는 데 도움을 줍니다. 또한 Copilot은 랩에서 다루지 않는 영역이나 추가 정보가 필요한 영역을 지원할 수 있습니다. Edge 브라우저를 열고 Copilot(오른쪽 위)을 선택하거나 copilot.microsoft.com으로 이동하세요. 몇 분 정도 시간을 내어 이러한 프롬프트를 사용해 보세요.
- Azure에서 가상 네트워크를 배포하고 구성할 때 상위 10가지 모범 사례를 공유합니다.
- Azure PowerShell 및 Azure CLI 명령을 사용하여 공용 IP 주소와 하나의 서브넷이 있는 가상 네트워크를 만들려면 어떻게 해야 하나요?
- Azure 네트워크 보안 그룹 인바운드 및 아웃바운드 규칙과 사용 방법을 설명합니다.
- Azure 네트워크 보안 그룹과 Azure 애플리케이션 보안 그룹의 차이점은 무엇인가요? 각 그룹을 언제 사용해야 하는지에 대한 예를 공유합니다.
- Azure에 네트워크를 배포할 때 직면하는 네트워크 문제를 해결하는 방법에 대한 단계별 가이드를 제공합니다. 또한 문제 해결의 모든 단계에 사용되는 사고 과정을 공유합니다.
자기 주도적 학습을 통해 자세히 알아보기
- Azure Virtual Network 소개. 가상 네트워크, 공용 및 개인 IP, DNS, 가상 네트워크 피어링, 라우팅, Azure Virtual NAT 등 핵심 Azure 네트워킹 인프라를 설계하고 구현합니다.
- IP 주소 지정 체계를 설계합니다. Azure 및 온-프레미스 가상 네트워크의 개인 IP 및 공용 IP 주소 지정 기능을 식별합니다.
- 네트워크 보안 그룹 및 서비스 엔드포인트를 사용하여 Azure 리소스에 대한 액세스를 보호 및 격리합니다. 네트워크 보안 그룹과 서비스 엔드포인트를 통해 무단 네트워크 액세스로부터 가상 머신과 Azure 서비스를 보호할 수 있습니다.
- Azure DNS에서 도메인을 호스팅합니다. 도메인 이름에 대한 DNS 영역을 만듭니다. 도메인을 IP 주소에 매핑하는 DNS 레코드를 만듭니다. 도메인 이름이 웹 서버로 확인되는지 테스트합니다.
핵심 내용
축하합니다. 랩을 완료했습니다. 이 랩의 주요 내용은 다음과 같습니다.
- 가상 네트워크는 클라우드의 사용자 네트워크를 나타내는 표현입니다.
- 가상 네트워크를 설계할 때 IP 주소 범위가 겹치지 않도록 하는 것이 좋습니다. 이렇게 하면 문제가 줄어들고 문제 해결이 간소화됩니다.
- 서브넷은 가상 네트워크 내 IP 주소의 범위입니다. 조직 및 보안을 위해 가상 네트워크를 여러 서브넷으로 나눌 수 있습니다.
- 네트워크 보안 그룹에는 네트워크 트래픽을 허용하거나 거부하는 보안 규칙이 포함되어 있습니다. 필요에 따라 사용자 지정할 수 있는 기본 수신 및 발신 규칙이 있습니다.
- 애플리케이션 보안 그룹은 웹 서버 또는 데이터베이스 서버와 같은 공통 함수를 가진 서버 그룹을 보호하는 데 사용됩니다.
- Azure DNS는 이름 확인을 제공하는 DNS 도메인용 호스팅 서비스입니다. 공용 도메인에서 호스트 이름을 확인하기 위한 Azure DNS를 구성할 수 있습니다. 프라이빗 DNS 영역을 사용하여 Azure Virtual Network의 VM(가상 머신)에 DNS 이름을 할당할 수도 있습니다.