728x90
728x90
가상 네트워크(Virtual Network) 생성 후, 네트워크 보안 그룹(NSG)을 통한 네트워크 트래픽 필터링 (NIC 연결)
들어가며
- 가상 네트워크(Virtual Network)를 생성한 후, 네트워크 보안 그룹(NSG)을 가상 머신의 네트워크 인터페이스 카드(NIC)에 연결해서 사용해보자.
- 동일한 가상 네트워크(VNet)에 포함된 가상 머신은 모든 포트를 통해 서로 통신할 수 있다.
- 네트워크 보안 그룹(NSG)은 가상 머신의 네트워크 인터페이스 카드(NIC)에 직접 연결하거나 서브넷에 연결해서 사용할 수 있다.
실습하기
가상 네트워크 만들기
- 애저(Azure) 포털에서 @Virtual Network@를 검색하고 선택한다.
- <가상 네트워크> 페이지에서 가상 네트워크 만들기 작업을 수행한다.
- <가상 네트워크 만들기> 화면
- [기본 사항] 탭
- 다음 정보를 입력하거나 선택한다.
- 리소스 그룹 이름 : 선택
- 가상 네트워크 이름 : VNet
- 다음 정보를 입력하거나 선택한다.
- [IP 주소] 탭
- IPv4 주소 공간에서 @10.0.0.0/16@을 입력한다.
- 주소 공간이 변경되면 기본 설정된 서브넷이 삭제된다.
- [서브넷 추가] 버튼을 클릭하고, <서브넷 추가> 화면에서 다음과 같이 입력한다.
- 서브넷 이름 : @default@
- 서브넷 주소 범위 : @10.0.0.0/24@
- IPv4 주소 공간에서 @10.0.0.0/16@을 입력한다.
- [기본 사항] 탭
- <가상 네트워크 만들기> 화면
가상 머신 만들기
- 가상 네트워크(VNet)에 @myVMWeb@ 및 @myVMMgmt@라는 2개의 VM을 만든다.
- <가상 네트워크 만들기> 화면
- [기본 사항] 탭
- 리소스 그룹 : 가상 네트워크(VNet)와 동일하게 선택
- 가상 머신 이름 : @myVMWeb@
- 가용성 옵션 : 인프라 중복이 필요하지 않음 선택
- 이미지 : Windows Server 2022 Datacenter - x64 Gen2
- 크기 : 기본값 or 선택
- 사용자 이름, 암호 및 암호 확인 : VM에 대한 관리자 사용자 이름 및 암호 입력
- 공용 인바운드 포트 : HTTP(80)
- [네트워킹] 탭
- 가상 네트워크 : 이전에 생성한 @VNet@ 선택
- @VNet@이 여러 개일 경우 리소스 그룹 이름도 같이 확인한다.
- 서브넷 : @default@ 선택
- 공용 IP : 자동으로 생성된 IP를 그대로 사용 (@(새로 만드는 중) myVMWeb-ip@)
- NIC 네트워크 보안 그룹 : 기본
- @없음@으로 선택할 경우, 현재 구성으로는 가상 머신은 인터넷으로 연결할 수 없다.
- 가상 네트워크 : 이전에 생성한 @VNet@ 선택
- [기본 사항] 탭
- <가상 네트워크 만들기> 화면
- @myVMWeb@ VM을 생성한 후, 이어서 @myVMMgmt@ VM을 만든다.
- <가상 네트워크 만들기> 화면
- [기본 사항] 탭
- 리소스 그룹 : 이전에 생성한 리소스 그룹 선택
- 가상 머신 이름 : @myVMMgmt@
- 공용 인바운드 포트 : RDP(3389)
- [네트워킹] 탭
- @myVMWeb@ VM을 만들었을 때와 동일하게 설정한다.
- [기본 사항] 탭
- <가상 네트워크 만들기> 화면
리소스 그룹에 생성된 리소스 확인
- 가상 머신 생성 시, NIC 네트워크 보안 그룹을 기본으로 선택했으므로, 네트워크 보안 그룹(NSG)이 각각 1개씩 생성됐다.
- 고급으로 변경해서 기존 네트워크 보안 그룹을 선택할 수도 있다.
- 가상 네트워크인 @VNet@ 리소스 페이지로 이동하여 주소 공간과 서브넷을 확인한다.
- 가상 머신의 <설정> 메뉴에서 [네트워킹] 탭으로 들어가면 연결된 가상 네트워크/서브넷, 네트워크 인터페이스, 네트워크 보안 그룹을 볼 수 있다.
- 인바운드/아웃바운드 포트는 연결된 네트워크 보안 그룹(NSG)의 설정된 정보이다.
- 각 가상 머신에서 확인해보면 각각 @80@과 @3389@가 인바운드 포트로 설정되어 있다.
- 현재 설정은 네트워크 인터페이스 카드(Network Interface Card, NIC)에 네트워크 보안 그룹(NSG)이 연결된 상태이다.
- @myvmmgmt@ 네트워크 인터페이스를 선택하고 <설정>에서 [네트워크 보안 그룹]으로 이동하면 @myVMMgmt-nsg@가 선택되어 있는 것을 확인할 수 있다.
- @myVMWeb@도 동일하게 확인 가능하다.
관리 서버로 접속하여 웹서버에 @IIS@ 설치하기
- @myVMMgmt@ VM의 RDP 파일을 다운로드 받고 실행한다.
- 그리고 @myVMMgmt@ 가상 머신에서 PowerShell을 실행한다. 그리고 다음 명령을 입력하여 @myVMWeb@에 연결한다.
- @myVMWeb@ VM을 만들었을 때 입력했던 관리자 계정의 아이디와 비밀번호를 입력하여 접속한다.
> mstsc /v:myVmWeb
@mstsc@
- @mstsc@는 원격 데스크톱 연결 프로그램의 실행 파일 이름이다.
- @myVMMgmt@ VM 안에서 @myVMWeb@ VM을 원격으로 연결하였다.
💡 기본적으로 동일한 네트워크의 가상 머신은 모든 포트로 연결할 수 있으므로 @myVMMgmt@에서 @myVMWeb@으로의 RDP 연결이 성공한다. 인터넷에서 모든 리소스로의 인바운드 트래픽은 기본적으로 거부된다.
- Microsoft IIS를 @myVMWeb@ 가상 머신에 설치하려면, @myVMWeb@ 가상 머신에서 PowerShell을 실행하여 다음 명령을 입력하면 된다. 명령을 입력하면 IIS 서버가 활성화 된다.
> Install-WindowsFeature -name Web-Server -IncludeManagementTools
- @mvVMMgmt@ VM에서 웹 브라우저를 실행한 후, @myVMWeb@의 공용 IP 주소를 입력하여 접속해본다.
VM 간 통신하기
- @myVMMgmt@ VM에서 PowerShell을 실행한다.
- 다음의 명령을 입력한다.
> ping myVMWeb
💡@ping@은 ICMP(인터넷 제어 메시지 프로토콜)를 사용하기 때문에 실패한다. 기본적으로 ICMP는 Windows 방화벽으로 인하여 허용되지 않는다.
- ICMP가 이 VM의 Windows 방화벽을 통해 인바운드 되도록 허용하려면 다음 명령을 입력하면 된다.
> New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4
- @mvVMWeb@에도 동일하게 연결하여 PowerShell에서 @ping myVMMgmt@를 입력한다.
> ping myVMMgmt
- 이번에는 @myVMMgmt@의 방화벽을 통해 ICMP를 허용했기 때문에, 성공 회신이 표시되게 된다.
- 반대로 @myVMWeb@에서도 다음 명령을 입력하여 ICMP를 허용하도록 설정한다.
> New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4
- 그리고 @myVMMgmt@ VM에서 @ping myVMWeb@ 명령을 입력해본다.
> ping myVMWeb
728x90
728x90
'DevOps > Azure' 카테고리의 다른 글
[Azure] SSMS/VS Code를 사용하여 연결 및 쿼리 실습하기 (0) | 2023.05.23 |
---|---|
[Azure] 단일 데이터베이스 만들기 (0) | 2023.05.23 |
[Azure] WebApp 생성 및 Flask 배포하기 (0) | 2023.05.23 |
[Azure] 워드프레스(WordPress) 사이트 만들기 (7) | 2023.05.21 |
[Azure] 가상 네트워크(Virtual Network) 배포 및 실습 (1) | 2023.05.19 |
[Azure] 비주얼 스튜디오 코드(VS Code)와 애저(Azure) 연동하기 (0) | 2023.05.19 |
[Azure] 애저(Azure) 테넌트(Tenant) ID 찾는 방법 (0) | 2023.05.18 |
[Azure] 스토리지 계정(Storage Account) Blob Service/File Service/Queue Service 연동 및 실습 (0) | 2023.05.15 |