이번 글에서는 AWS EC2 인스턴스를 임대하고, 방화벽(보안 그룹) 설정과 Shell 개념을 정리한다.
앞선 네트워크 기본기(패킷, IP, 포트)에 이어 실습으로 연결되는 부분이다.
1. EC2 서버 임대하기
- AWS에서 서버를 임대한다는 것은 곧 운영체제(OS)가 설치된 가상 컴퓨터를 빌린다는 의미다.
- 예: Ubuntu 운영체제를 선택 → EC2 위에 Ubuntu OS 설치됨.
- 사용자는 인터넷을 통해 퍼블릭 IP로 접속한다.
👉 이때 보안 그룹(Security Group)이 일종의 방화벽 역할을 한다.
2. 방화벽(보안 그룹)의 역할

- AWS의 EC2 인스턴스는 보안 그룹(Security Group)을 통해 네트워크 포트를 관리한다.
- 원칙: 모든 포트(0~65535)는 기본적으로 차단.
- 필요할 때만 특정 포트를 열어준다.
- 예:
22번 포트(SSH)
→ 원격 접속 허용 - 예:
80번 포트(HTTP)
→ 웹 서비스 접속 허용 - 예:
443번 포트(HTTPS)
→ 보안 웹 접속 허용
✅ 즉, 내 로컬 컴퓨터에서 EC2 서버로 SSH 접속하려면 22번 포트를 보안 그룹에서 열어야 한다.
3. SSH와 22번 포트
- SSH (Secure Shell): 서버 원격 접속을 위한 프로토콜.
- 기본 포트:
22
- 명령 예시:
ssh -i doythan-aws-key.pem ubuntu@<EC2_PUBLIC_IP>
- 보안 그룹에서 22번 포트를 열어두지 않으면 접속 자체가 차단된다.
👉 보안 원칙상, 22번 포트는 “내 IP만 허용”으로 제한하는 것이 안전하다. (0.0.0.0/0 전체 오픈은 위험)
4. Shell의 개념

- 사람 ↔ 운영체제 ↔ 하드웨어 구조
- 사람은 명령어(Command)를 입력한다.
- OS가 이를 해석하고 CPU, RAM 같은 하드웨어 자원에 전달한다.
- 결과를 다시 사용자에게 보여준다.
- 이때 OS와 사용자 사이에서 다리 역할을 하는 것이 바로 Shell이다.
자주 쓰는 Shell 명령어
cd
: 폴더 이동
mkdir
: 폴더 생성
ls
(리눅스) /dir
(윈도우): 파일 목록 조회
👉 AWS EC2에 접속하면 결국 Shell 환경에서 서버를 조작하게 된다.
5. 정리
- AWS EC2 인스턴스를 띄우면, 기본적으로 보안 그룹(방화벽)이 모든 포트를 막는다.
- 필요한 포트(SSH 22, HTTP 80, HTTPS 443 등)만 선택적으로 열어야 한다.
- EC2 접속은 SSH(22번 포트)로 하며, Shell을 통해 명령어로 서버를 다룬다.
- 결국 “서버 임대 → 방화벽 설정 → SSH 접속 → Shell에서 제어” 흐름이 기본기다.
Share article