랩: 네트워크 보안 그룹

가상 네트워크 서브넷의 인바운드 및 아웃바운드 트래픽을 필터링할 수 있습니다. 네트워크 보안 그룹은 IP 주소, Port, 프로토콜을 기반으로 네트워크 트래픽을 필터링하는 보안 규칙을 포함합니다. 보안 규칙은 서브넷에 배포한 리소스에 적용됩니다.

  • 네트워크 보안 그룹 및 보안 규칙 생성
  • 가상 네트워크 생성 및 서브넷에 네트워크 보안 그룹 연결
  • 서브넷에 가상 머신 배포
  • 트래픽 필터링 테스트

연습 1: Azure 포털을 사용하여 네트워크 보안 그룹으로 네트워크 트래픽 필터링

작업 1: 가상 네트워크 생성

  1. Azure 포털에서 + 리소스 만들기를 선택한다.

  2. Virtual network를 탐색하여 만들기를 클릭한다.

  3. 다음 정보를 입력하고, 만들기를 선택한다.

    설정
    이름 az5000205vnet
    구독 이 랩에서 사용할 구독의 이름
    리소스 그룹 새로 만들기 : az5000205
    지역 (아시아 태평양)한국 중부

    IP 주소 탭을 선택하고 다음 값을 사용한다.

    설정
    주소 공간 10.0.0.0/16
    서브넷 이름 default 서브넷 이름을 mySubnet으로 바꾸고 저장을 클릭한다.
    서브넷 주소 범위 10.0.0.0/24

작업 2: 애플리케이션 보안 그룹 생성

애플리케이션 보안 그룹은 웹 서버 같은 비슷한 기능을 가진 서버를 그룹화합니다.

  1. + 리소스 만들기를 선택한다.

  2. Application security group을 검색하여 만들기를 클릭한다.

  3. 다음 정보를 입력하여 만들기를 클릭한다.

    설정
    이름 myAsgWebServers
    구독 이 랩에서 사용할 구독
    리소스 그룹 az5000205
    지역 (아시아 태평양)한국 중부
  4. 다음 정보를 입력하여 애플리케이션 보안 그룹을 추가 생성한다.

    설정
    이름 myAsgMgmtServers
    구독 이 랩에서 사용할 구독
    리소스 그룹 az5000205
    지역 (아시아 태평양)한국 중부

작업 3: 네트워크 보안 그룹 생성

  1. + 리소스 만들기 를 선택한다.

  2. Network security group을 탐색하여 클릭한다.

  3. 다음 설정을 입력하고, 만들기를 클릭한다.

    설정
    이름 myNsg
    구독 이 랩에서 사용할 구독의 이름
    리소스 그룹 az5000205
    지역 (아시아 태평양)한국 중부

작업 4: 서브넷에 네트워크 보안 그룹 연결

  1. Azure 포털에서 방금 배포한 myNsg를 탐색하여 클릭한다.

  2. 설정 섹션 아래 서브넷을 선택하고, + 연결을 클릭한다.

  3. 서브넷 연결 아래 az5000205vnetmySubnet을 선택한 후, 확인을 클릭한다.

작업 5: 보안 규칙 생성

  1. 설정 섹션 아래 인바운드 보안 규칙을 선택하고, + 추가를 클릭한다.

  2. 다음 값을 사용하여 myAsgWebServers 애플리케이션 보안 그룹에 80 및 443 포트를 허용하는 보안 규칙을 생성한다.

    설정
    대상 주소 Application security group 선택한 후, 대상 애플리케이션 보안 그룹으로 myAsgWebServers 선택
    대상 포트 범위 80, 443 입력
    프로토콜 TCP 선택
    이름 Allow-Web-All
  3. 다음 값을 사용하여 이전 단계를 반복한다.

    설정
    대상 주소 Application security group 선택한 후, 대상 애플리케이션 보안 그룹으로 myAsgMgmtServers 선택
    대상 포트 범위 3389 입력
    프로토콜 TCP 선택
    우선 순위 110 입력
    이름 Allow-RDP-All

    이 튜토리얼에서는 myAsgMgmtServers 애플리케이션 보안 그룹에 할당된 VM의 RDP(Port 3389)가 인터넷에 노출되어 있습니다. 프로덕션 환경의 경우 인터넷에 포트 3389를 노출하는 대신 VPN 또는 전용 네트워크 연결을 사용하여 관리할 Azure 리소스에 연결하는 것이 좋습니다.

작업 6: 가상 머신 생성

  1. + 리소스 만들기를 선택한다.

  2. Windows Server 2016 Datacenter를 탐색하여 선택한다.

  3. 다음 값을 설정한다. (다른 값은 기본 설정을 사용한다)

    설정
    구독 이 랩에서 사용할 구독의 이름
    리소스 그룹 az5000205
    가상 머신 이름 myVmWeb
    지역 (아시아 태평양)한국 중부
    사용자 이름 Student
    암호 Pa55w.rd1234
    크기 Standard_DS2_v2
  4. 네트워킹 탭에 다음 설정을 사용한다.

    설정
    가상 네트워크 Select az5000205vnet.
    NIC 네트워크 보안 그룹 없음
  5. 관리 탭의 부트 진단끄기로 설정한다.

  6. 만들기 를 선택한다.

작업 7: VM 추가 배포

작업 6의 과정을 반복하여 가상 머신 myVmMgmt을 추가 배포한다. (3번 과정에서 가상 머신 이름을 myVmMgmt으로 변경)VM 배포가 완료되면 다음 작업을 진행한다.

작업 8: 애플리케이션 보안 그룹에 네트워크 인터페이스 연결

VM을 생성할 때 각 VM에 대한 네트워크 인터페이스를 생성하고 네트워크 인터페이스를 VM에 연결합니다. 이전 단계에서 생성한 애플리케이션 보안 그룹 중 하나에 각 VM의 네트워크 인터페이스를 추가하십시오.

  1. 이전에 배포한 myVMWeb을 탐색하여 클릭한다.

  2. 설정 섹션의 네트워킹을 선택한다. 애플리케이션 보안 그룹 탭을 선택하고, 애플리케이션 보안 그룹 구성을 클릭한다.목록에서 myAsgWebServers을 선택하고, 저장을 클릭한다.

  3. 앞의 두 단계를 반복하여 myVmMgmt 가상 머신에 대해서도 myAsgMgmtServers 애플리케이션 보안 그룹을 구성한다.

작업 9: 트래픽 필터링 테스트

  1. myVmMgmt를 탐색하여 클릭한다. 연결을 선택한다.

  2. RDP 파일 다운로드를 선택한다.

  3. 다운로드한 RDP 파일을 열고 Connect를 선택한다. VM을 생성할 때 지정한 사용자 이름과 암호를 입력한다. VM을 생성할 때 입력한 자격 증명을 지정하려면 추가 선택을 선택한 다음 *다른 계정 사용을 선택해야 할 수 있다.

  4. 로그인 과정 중에 인증서 경고를 받을 수 있다. 경고가 표시되면 또는 계속을 선택하여 연결을 계속한다.

    3389 포트는 myVmMgmt VM에 연결된 네트워크 인터페이스가 있는 myAsgMgmtServers 애플리케이션 보안 그룹으로 인바운드될 수 있기 때문에 연결에 성공합니다.

  5. myVmMgmt의 PowerShell 세션에 다음 명령을 입력하여 myVmWeb에 연결한다.

    mstsc /v:myVmWeb
    

    myVmMgmt VM에서 myVmWeb VM에 연결할 수 있습니다. 동일한 가상 네트워크의 VM이 기본적으로 모든 포트를 통해 서로 통신할 수 있기 때문입니다. 그러나 myAsgWebServers에 대한 보안 규칙은 인터넷으로부터의 3389 포트 인바운드 및 인터넷으로부터의 인바운드 트래픽을 기본적으로 모두 거부합니다. 따라서 인터넷에서 myVmWeb VM에 대한 원격 데스크톱 연결을 생성할 수는 없습니다.

  6. myVmWeb 가상 머신에 Microsoft IIS를 설치하기 위해 myVmWeb 가상 머신 PowerShell에 다음 명령을 입력한다.

    Install-WindowsFeature -name Web-Server -IncludeManagementTools
    
  7. IIS 설치가 완료되면 myVmWeb과의 연결을 종료한다.

  8. myVmMgmt 가상 머신과의 연결을 종료한다.

  9. myVmWeb을 탐색하여 클릭한다. 공용 IP 주소를 기록한다. 아래 그림에서는 137.135.84.74에 해당하지만 IP 주소는 다를 수 있다.

    Screenshot

  10. 인터넷에서 myVmWeb 웹 서버에 접근할 수 있는지 확인하려면 컴퓨터에서 인터넷 브라우저를 열고 ‘http://<공용 IP="" 주소="">'로 접속한다. 포트 80이 *myVmWeb* VM에 연결된 네트워크 인터페이스가 있는 *myAsgWebServers* 애플리케이션 보안 그룹으로 인바운드될 수 있으므로 IIS welcome 화면이 표시된다.

연습 2: 랩 리소스 삭제

작업 1: Cloud Shell 열기

  1. Azure 포털 상단에서 Cloud Shell 아이콘을 클릭하여 Cloud Shell 창을 시작한다.

  2. Cloud Shell 인터페이스에서 Bash를 선택한다.

  3. Cloud Shell 명령 프롬프트에서 다음 명령을 입력하고 Enter를 눌러 이 랩에서 생성한 모든 리소스 그룹을 나열한다.

     az group list --query "[?starts_with(name,'az500')].name" --output tsv
    
  4. 출력된 결과가 이 랩에서 생성한 리소스 그룹만 포함되어 있는지 확인한다. 이 그룹은 다음 작업에서 삭제된다.

작업 2: 리소스 그룹 삭제하기

  1. Cloud Shell 명령 프롬프트에서 다음 명령을 입력하고 Enter를 눌러 이 랩에서 생성한 모든 리소스 그룹을 삭제한다.

     az group list --query "[?starts_with(name,'az500')].name" --output tsv | xargs -L1 bash -c 'az group delete --name $0 --no-wait --yes'
    
  2. Cloud Shell 명령 프롬프트를 닫는다.

결과: 이 연습을 완료한 후 이 랩에서 사용된 리소스 그룹을 제거했습니다.