1. 사용자 VPC 생성
이번 실습은 AWS 관리 콘솔에서 사용자 VPC를 생성해서 진행합니다.
VPC 서비스에 VPC 메뉴 진입
•
AWS 관리 콘솔 로그인
•
서비스 → VPC 서비스
◦
VPC (메뉴 진입) → VPC 생성 (버튼 클릭)
기본 VPC 확인
•
VPC 메뉴 → 기본 VPC (선택)
◦
세부 정보 (탭 확인)
◦
리소스 맵 (탭 확인)
◦
CIDR (탭 확인)
사용자 VPC 생성
•
생성할 리소스: VPC만 (선택)
•
이름 태그: MY-VPC (입력)
•
IPv4 CIDR: 10.2.0.0/16 (입력)
•
VPC 생성 (버튼 클릭)
사용자 VPC 확인
•
VPC 메뉴 → 사용자 VPC (선택)
◦
세부 정보 (탭 확인)
▪
기본 라우팅 테이블 (대상 클릭)
•
대상 라우팅 테이블 (선택)
•
라우팅 탭 (클릭)
▪
기본 네트워크 ACL (대상 클릭)
•
대상 네트워크 ACL (선택)
•
인바운드 규칙 탭 (클릭)
•
아웃바운드 규칙 탭 (클릭)
◦
리소스 맵 (탭 확인)
◦
CIDR (탭 확인)
2. 퍼블릭 용도의 서브넷 구성
앞서 생성한 사용자 VPC에 퍼블릭 용도의 서브넷 환경을 구성합니다.
신규 서브넷 생성
•
서브넷 (메뉴 진입) → 서브넷 생성 (버튼 클릭)
◦
VPC ID: MY-VPC (선택)
◦
서브넷 이름: PUBLIC-SUBNET (입력)
◦
가용 영역: 아시아 태평양 (서울) / ap-northeast-2a (선택)
◦
IPv4 서브넷 CIDR 블록: 10.2.1.0/24 (입력)
◦
서브넷 생성 (버튼 클릭)
사용자 라우팅 테이블 생성
•
라우팅 테이블 (메뉴 진입) → 라우팅 테이블 생성 (버튼 클릭)
◦
이름: Public-RT (입력)
◦
VPC: MY-VPC (선택)
◦
라우팅 테이블 생성 (버튼 클릭)
라우팅 테이블 - 서브넷 연결
•
서브넷 연결 (탭 클릭)
◦
명시적 서브넷 연결 → 서브넷 연결 편집 (버튼 클릭)
▪
이용 가능한 서브넷: PUBLIC-SUBNET (선택)
▪
연결 저장 (버튼 클릭)
인터넷 게이트웨이 생성 및 연결
•
인터넷 게이트웨이 (메뉴 진입) → 인터넷 게이트웨이 생성 (버튼 클릭)
◦
이름: MY-IGW (입력)
◦
인터넷 게이트웨이 생성 (버튼 클릭)
•
작업 (버튼 클릭) → VPC에 연결 (선택)
◦
사용 가능한 VPC: MY-VPC (선택)
◦
인터넷 게이트웨이 연결 (버튼 클릭)
라우팅 경로 추가
•
라우팅 테이블 (메뉴 진입) → 대상 라우팅 테이블 (선택)
◦
라우팅 (탭 진입) → 라우팅 편집 (버튼 클릭)
▪
라우팅 추가 (버튼 클릭)
▪
대상: 0.0.0.0/0 (선택)
▪
대상: 인터넷 게이트웨이 (선택) → MY-IGW (선택)
▪
변경 사항 저장 (버튼 클릭)
VPC 리소스 맵 확인
•
VPC (메뉴 진입) → 대상 VPC (선택)
◦
리소스 맵 (탭 선택)
3. EC2 인스턴스 생성
생성한 퍼블릭 용도의 서브넷에 EC2 인스턴스를 생성합니다.
인스턴스 생성 설정
•
EC2 서비스 → 인스턴스 (메뉴 진입) → 인스턴스 시작 (버튼 클릭)
◦
이름: PUBLIC-EC2
◦
Quick Start: Amazon Linux
◦
Amazon Machine Image(AMI): Amazon Linux 2023 AMI
◦
인스턴스 유형: t2.micro or t2.nano
◦
키 페어 이름 - 필수: 생성한 키 페어 선택
기존 프리 티어 사용자는 t2.micro를 선택해야 일정 시간동안 무료 사용이 가능합니다. (t2.nano X)
신규 프리 티어 사용자는 별도의 프리 티어 대상이 없습니다.
그래서 가장 저렴한 t2.nano를 선택하는 것이 유리합니다.
네트워크 설정
•
편집 (버튼 클릭)
◦
VPC: MY-VPC (선택)
◦
서브넷: PUBLIC-SUBNET (선택)
◦
퍼블릭 IP 자동 할당: 활성화 (선택)
◦
네트워크, 서브넷, 퍼블릭 IP 자동 할당: 기본 값 유지
◦
방화벽(보안 그룹): 보안 그룹 생성 (선택)
▪
인바운드 보안 그룹 규칙
•
유형: ssh
•
소스 유형: 내 IP (선택)
▪
보안 그룹 규칙 추가 (버튼 클릭)
•
유형: HTTP (선택)
•
소스 유형: 위치 무관 (선택)
•
인스턴스 시작 (버튼 클릭)
다음 단계를 진행하기 위해 세부 정보 → 퍼블릭 IPv4 주소를 확인하고 복사해 둡니다.
대상 EC2 인스턴스에 SSH로 접근한 후 아래 명령을 입력합니다.
(ec2-user@퍼블릭 IP)
인스턴스 접속 및 웹 서비스 설치
sudo -i
Bash
복사
# Root 계정으로 전환
dnf install httpd -y
Bash
복사
# httpd 설치
systemctl start httpd
systemctl enable httpd
systemctl status httpd
Bash
복사
# httpd 시작 및 활성화 및 상태 확인
echo "<h1>[인프런] AWS Networking - 2장 실습 웹 서버</h1>" > /var/www/html/index.html
Bash
복사
# 웹 페이지 구성 (/var/www/html/index.html)
4. 통신 검증
통신 검증은 두 가지 방향으로 진행합니다.
1.
인스턴스(퍼블릭 서브넷) → 외부 인터넷
2.
외부 인터넷 → 인스턴스(퍼블릭 서브넷)
인스턴스에서 인터넷 구간으로 통신
curl wttr.in/seoul
Bash
복사
# curl 명령으로 서울 날씨 확인
ping -c 3 8.8.8.8
Bash
복사
# 구글 dns 주소로 ping 테스트 (3회)
인터넷 구간에서 인스턴스로 통신
•
인터넷 브라우저 → 인스턴스 퍼블릭 IP주소 (접속)
다음 실습은 현재 구성 환경에서 이어서 진행할 것입니다. 그런 측면에서 실습 자원은 삭제하지 않고 유지합니다.
만약에 실습을 그만 둘 경우 실습 자원은 꼭! 삭제해 주세요. (아래 토글 확인)
자원 삭제 정리
여기까지 2장 - Amazon VPC로 퍼블릭 서브넷 구성 실습을 마칩니다.
수고하셨습니다 :)