티스토리 뷰

강의 들으면서 하나하나 정리하기에 효율이 떨어짐

우선 쭉 들으면서 언제든 쉽게 찾아볼 수 있을 거 같은 정보는 스킵하고,

개념이나 중요한 내용들만 정리하기 (+ 타이핑 하면서 복습)


Amazon EC2

- EC2 = Elastic Compute Cloud = Infrastructure as a Service

- It mainly consists in the capability of :

  • Renting virtual machines (EC2)

  • Storing data on virtual drives (EBS)

  • Distributing load across machines (ELB)

  • Scaling the services using an auto-scaling group (ASG)

 

EC2 인스턴스를 만들 때 선택/구성하는 항목

OS, CPU, RAM, Network-attached (EBS & EFS), hardware (EC2 Instance Store),

Network card(speed of the card), Public IP address, Firewall rules: security group,

Bootstrap script (configure at first launch): EC2 User Data 등

 

-> 원하는 대로 가상머신을 선택하여 AWS에서 빌릴 수 있다!

 

// bootstrapping : EC2 User Data 스크립트가 인스턴스 최초 부팅 시 root 권한으로 한 번만 실행됨

(인스턴스가 처음 실행될 때, 인스턴스의 전체 수명주기 중 단 한번만 실행됨 // 코드나 명령어 알 필요는 없음)

EC2 User Data를 활용한 bootstrapping 예시


실습 1) Amazon Linux에서 실행되는 EC2 생성

(알토르 6주차 과제에서 Ubuntu Linux로 실행되는 EC2 실습하고 정리했음 - 참고)

 

Key pair는 EC2 인스턴스에 SSH로 접속할 때 사용하는 인증 수단

-> Key pair 생성할 때 Private key file format에서

Mac, Linux, Windows 10 이상이면 .pem 형식 사용

Windows 10 미만(Windows 7,8)이면, .ppk 사용(PuTTY 함께 사용)

 

인스턴스 실행하면 몇 초 걸림, 서버를 하나도 소유할 필요 없이

클라우드 덕분에 인스턴스 100개여도 몇 초안에 빠르게 만들 수 있음!!

 

Public IPv4 address 복사해서 http://랑 같이 주소창에 붙여넣기

결과(Private IPv4를 포함한 호스트명이 뜸)

인스턴스는 Instance state에서 시작,중지,삭제(terminate) 가능

중지하고 재시작하면 Public IPv4 주소 바뀜(Private IP는 그대로)

 

AWS 명명 규칙(예시)

m4.2xlarge

m: instance class

5: generationm (AWS improves them over time)

2xlarge: size within the instance class

(small -> large -> 2xlarge -> 4xlarge...//우측으로 갈수록 더 많은 메모리와 CPU)

 

EC2 Instance Types

- General Purpose

- Compute Optimized

- Memory Optimized

- Storage Optimized

EC2 Instance Types

 

(※ 인스턴스 이름은 외울 필요 없음. "어떤 작업에 어떤 유형이 적합한가"만 이해하면 됨)

 

전체 EC2 인스턴스 비교 가능한 웹사이트 : instances.vantage.sh


 

AWS 보안 그룹 (Security Groups) 정리

1. 보안 그룹이란?

EC2 인스턴스 주변의 방화벽. AWS 클라우드에서 네트워크 보안의 기본이며, EC2 인스턴스로 들어오고 나가는 트래픽을 제어한다.

  • EC2 외부에 위치한다 — EC2에서 실행되는 애플리케이션이 아님
  • 트래픽이 차단되면 EC2 인스턴스는 트래픽을 인지조차 못 함

2. 핵심 특성

  • 허용 규칙(Allow rules)만 포함 — 무엇이 들어오고 나갈 수 있는지 명시
  • 규칙은 IP 주소 또는 다른 보안 그룹을 참조하여 설정 가능
  • 인바운드: 외부 → EC2 인스턴스로 들어오는 트래픽
  • 아웃바운드: EC2 인스턴스 → 외부로 나가는 트래픽
  • 기본값: 모든 인바운드 차단, 모든 아웃바운드 허용

3. 규칙 구성 요소

  • Type: 트래픽 유형
  • Protocol: TCP 등
  • Port: 통과를 허용할 포트
  • Source: IP 주소 범위 또는 보안 그룹
    • 0.0.0.0/0 → 모든 IP
    • 단일 IP 지정 가능

4. 보안 그룹 적용 범위

  • 하나의 보안 그룹은 여러 인스턴스에 연결 가능 (1:1 관계 아님)
  • 하나의 인스턴스가 여러 보안 그룹을 가질 수 있음
  • 특정 리전 + VPC 조합에 종속
    • 다른 리전으로 전환 시 새로 생성해야 함
    • 다른 VPC에서도 다시 생성해야 함

5. 보안 그룹 참조 (다른 SG를 소스로 지정)

로드 밸런서를 사용할 때 유용한 패턴.

시나리오

  • EC2 인스턴스 A 에 SG-1 연결
  • SG-1 의 인바운드 규칙: "SG-2 허용"

결과

  • EC2-B → EC2-A: EC2-B 에 연결된 SG-2 가 SG-1 의 인바운드 허용 목록에 있음 → 통신 성공
  • EC2-C → EC2-A: EC2-C 에 연결된 SG-3 는 SG-1 의 허용 목록에 없음 → 연결 거부

장점

EC2 인스턴스의 IP에 관계없이, 올바른 보안 그룹만 연결되어 있으면 다른 인스턴스와 직접 통신 가능. IP를 일일이 신경 쓰지 않아도 된다.

6. 트러블슈팅 — 에러 메시지로 원인 구분

증상원인
Timeout (타임아웃) 보안 그룹 문제 (트래픽 차단됨)
Connection refused (연결 거부) 보안 그룹은 통과, 애플리케이션 문제 (오류 또는 미실행)
  • 임의 포트 연결 시도했는데 컴퓨터가 정지하고 대기 → 보안 그룹 문제일 가능성 높음
  • 연결 거부 응답 → 보안 그룹은 작동하고 트래픽 통과, 애플리케이션 쪽 문제

7. 실무 팁 (강의자 권장)

  • SSH 액세스 전용 보안 그룹을 별도로 분리해서 관리할 것
    • 이유: SSH 액세스는 가장 복잡한 작업이므로, 제대로 설정되었는지 확인하기 위함

8. 시험 대비 — 알아둬야 할 포트

포트프로토콜용도
22 SSH Linux 인스턴스 로그인
22 SFTP 보안 파일 전송 (SSH 사용)
21 FTP 파일을 파일 공유에 업로드
80 HTTP 비보안 웹사이트 접속
443 HTTPS 보안 웹사이트 접속 (요즘 표준)
3389 RDP Windows 인스턴스 로그인

핵심 구분: 22 = Linux SSH, 3389 = Windows RDP


참고: 원문에 없지만 일반적으로 알려진 사실

아래 내용은 강의 원문에는 없지만 AWS 공식 문서/일반 지식 기반으로 알아두면 도움이 되는 것들입니다.

  • 보안 그룹은 Stateful — 인바운드로 허용된 연결의 응답은 아웃바운드 규칙과 무관하게 자동 허용됨 (NACL은 Stateless)
  • 보안 그룹은 명시적 Deny 규칙을 만들 수 없음 — Allow만 가능 (이건 원문의 "허용 규칙만 포함"과 같은 얘기)

한 줄 요약

보안 그룹은 EC2 외부에 붙는 방화벽이며, Allow 규칙만 가지고, IP뿐 아니라 다른 보안 그룹도 소스로 참조할 수 있다.
기본값은 인바운드 차단 / 아웃바운드 허용.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/05   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함