🔷 사용자와 그룹, 역할이 무엇을 할 수 있는지에 관한 문서
JSON 형식으로 정의
그룹, 역할, 유저 등에 부여되어 각 주체가 행동 가능한 권한을 정의
🔷 구성
🔷 예시
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": "arn:aws:s3:::example-bucket-name/*"
}
]
}
🔷 사용자의 AWS 계정 전용 가상 네트워크
🔷 VPC 구조
🔷 VPC의 사용 사례
EC2
, RDS
, Lambda
등의 AWS의 컴퓨팅 서비스 실행
다양한 서브넷 구성
보안 설정 (IP Block
, 인터넷에 노출되지 않는 EC2 등 구성)
🔷 기본 VPC
AWS 계정 생성 시 자동으로 생성되어 있음
기본적으로 각 AZ(가용 영역)마다 서브넷을 생성
다양한 AWS 서비스가 기본 VPC를 이용하기 때문에, 삭제 시 여러 AWS 서비스의 사용에 제약
🔷 커스텀 VPC
직접 생성
기본적으로 인터넷에 연결되어 있지 않음
인터넷 게이트웨이와 라우팅 설정 없이 퍼블릭 서브넷 생성 불가능
즉, 별도의 조치 없이 인터넷으로 연결 가능한 EC2 생성 불가
🔷 CIDR(Classless Inter-Domain Routing)
기존의 A/B/C 클래스 네트워크 구조(클래스풀 방식)의 한계를 극복하고, IP 주소 공간을 유연하게 할당·분할할 수 있도록 도입
IP주소/Prefix(접두 비트 수) 형태로 표기 (예: 192.168.0.0/24)
🔷 CIDR
표기법 구성
예를 들어, 192.168.0.0/24
라는 IP 블록이 있다면,
CIDR 표기에서 뒤의 숫자 24는 "네트워크 부분의 비트 수"를 의미
IP 전체 비트(32비트) 중 앞의 24비트는 네트워크 주소, 뒤의 8비트는 호스트 주소에 해당
따라서, 실제 사용할 수 있는 IP 주소 개수는 2⁸(호스트 비트 수) 로 계산됨
❗ 단, 실제 사용 가능한 IP는 일반적으로 2개(네트워크/브로드캐스트)를 제외
👉 2⁸ - 2 = 254 (실제 사용 가능 수: 254개)
CIDR | 호스트 비트 | IP 주소 개수 | 실제 사용 가능한 IP 개수 |
---|---|---|---|
/24 | 8 | 256 | 254 |
/23 | 9 | 512 | 510 |
/22 | 10 | 1024 | 1022 |
📱 CIDR 계산 사이트
✅ cidr.xyz, jodies.de/ipcalc
1. VPC 생성
2. 퍼블릭 서브넷 생성
인터넷 게이트웨이 생성 및 VPC에 부착
라우팅 테이블 생성 및 연결
보안그룹 생성 및 규칙 추가
인스턴스 생성 (nginx)
nginx 설치, 웹 접속 확인
3. 프라이빗 서브넷 생성
엘라스틱 IP 생성
NAT 게이트웨이 생성 및 퍼블릭 서브넷에 부착
라우팅 테이블 생성 및 연결
보안그룹 생성 및 규칙 추가
인스턴스 생성 (mariadb)
nginx 인스턴스에서 mariadb 인스턴스로 접속
mariadb 설치, root 접속 확인
clouds 계정 생성 및 접속 확인
4. IP 대역 설계
VPC CIDR : 172.16.160.0/20
⇒ 4094개 IP
VPC 가용영역 CIDR : 172.16.160.0/22
⇒ 1022개 IP
가용영역 A : 172.16.160.0/22
가용영역 내 서브넷 CIDR : 172.16.160.0/24
퍼블릭 서브넷 A : 172.16.160.0/24
퍼블릭 서브넷 B : 172.16.161.0/24
프라이빗 서브넷 A : 172.16.162.0/24
프라이빗 서브넷 B : 172.16.163.0/24
가용영역 B : 172.16.164.0/22
가용영역 C : 172.16.168.0/22
가용영역 D : 172.16.172.0/22
🔷 VPC의 하위 단위로 VPC에 할당된 IP를 더 작은 단위로 분할한 개념
🔷 하나의 서브넷은 하나의 가용영역(AZ) 안에 위치
🔷 별도의 설정이 없다면 동일한 서브넷 IP 끼리만 통신 가능
🔷 CIDR block range
로 IP 주소 지정
🔷 서브넷의 종류
퍼블릭 서브넷: 외부에서 인터넷을 통해 연결할 수 있는 서브넷,
인터넷 게이트웨이(IGW)를 통해 외부의 인터넷과 연결되어 있음
안에 위치한 인스턴스에 퍼블릭 IP 부여 가능
웹서버, 어플리케이션 서버 등 유저에게 노출되어야 하는 인프라
프라이빗 서브넷: 외부에서 인터넷을 통해 연결할 수 없는 서브넷
외부 인터넷으로 경로가 없음
퍼블릭 IP 부여 불가능
데이터베이스, 로직 서버 등 외부에 노출될 필요가 없는 인프라
🔷 VPC가 외부의 인터넷과 통신할 수 있도록 경로를 만들어주는 리소스
기본적으로 확장성과 고가용성이 확보되어 있음
IPv4, IPv6 지원
IPv4의 경우 NAT 역할
Route Table에서 경로 설정 후에 접근 가능
무료
🔷 Private 인스턴스가 외부의 인터넷과 통신하기 위한 통로
NAT Instance
: 단일 EC2 인스턴스
NAT Gateway
: AWS에서 제공하는 매니지드 서비스
NAT Gateway
/ NAT Instance
는 모두 서브넷 단위로 존재
❗ NAT Gateway를 만들기 전 엘라스틱 IP 생성이 우선임을 기억하자.