


AWS EC2 ์ธ์คํด์ค๋ฅผ ์์ํ ๋ ์ด์์ฒด์ (Operating System)๋ฅผ ์ ํํ๋ ๋จ๊ณ์ด๋ค.
์ฌ๊ธฐ์ ์ ํํ๋ ํญ๋ชฉ์ AMI (Amazon Machine Image)๋ผ๊ณ ๋ถ๋ฅด๋ฉฐ,
์ด๊ฑด ์ฝ๊ฒ ๋งํด “EC2 ์ธ์คํด์ค์ ์ค์นํ OS ํ ํ๋ฆฟ“์ด๋ค.
AMI ์ ํ
์๋จ ์นดํ ๊ณ ๋ฆฌ
- Amazon Linux, macOS, Ubuntu, Windows, Red Hat, SUSE Linux, Debian ๋ฑ ๋ค์ํ ์ด์์ฒด์ ๋ฅผ ์ ํํ ์ ์๋ ๋ฉ๋ด์ด๋ค.
ํ์ฌ ์ ํ๋ AMI
- Amazon Linux 2023 AMI
- ์ต์ ๋ฒ์ ์ Amazon Linux ์ด์์ฒด์ .
- AWS์์ ์ต์ ํ๋ ๊ฒฝ๋ ๋ฆฌ๋ ์ค OS.
- ๋ฌด๋ฃ(ํ๋ฆฌ ํฐ์ด) ์ฌ์ฉ ๊ฐ๋ฅ.
- ๋ณด์ ์ ๋ฐ์ดํธ ๋ฐ ์ฑ๋ฅ ์ต์ ํ๊ฐ ์ ๋์ด ์์.
ํญ๋ชฉ ์ค๋ช
| AMI ์ด๋ฆ | Amazon Linux 2023 AMI |
| AMI ID | ami-0e967ff96936c0c0c (AWS์์ ์ด AMI๋ฅผ ๊ตฌ๋ณํ๋ ๊ณ ์ ID) |
| ๋ถํธ ๋ชจ๋ | uefi-preferred (๋ถํ ๋ฐฉ์) |
| ์ํคํ ์ฒ | 64๋นํธ(x86) – ์ผ๋ฐ์ ์ธ PC ์๋ฒ ํ๊ฒฝ์์ ์ฌ์ฉ |
| ๋ฃจํธ ๋๋ฐ์ด์ค ์ ํ | EBS (Elastic Block Store, ๋์คํฌ ์ ์ฅ ๋ฐฉ์) |
| ์ค๋ช | 5๋ ์ง์, AWS ์ต์ ํ, ์์ ์ฑ ๋ฐ์ด๋จ |
๋ด๊ฐ ์ ํํ ๊ฒ์?
Spring Boot, Java, ๋ฐฐํฌ ํ์ต์ ํ๊ณ ์์ด์ ์๋์ ๊ฐ์ ๊ฒ์ ์ ํํ๋ค.
Amazon Linux 2023 AMI
- ์ด์ :
- ํ๋ฆฌ ํฐ์ด๋ก ์ฌ์ฉ ๊ฐ๋ฅ (๊ณผ๊ธ ์์)
- ๋ฆฌ์์ค ํจ์จ์ ์ด๊ณ AWS์์ ๊ณต์ ์ง์
- EC2 ์ ๋ฌธ์ ๋ฐ ํ์ต์์๊ฒ ๊ฐ์ฅ ์ ํฉ
- Java, Spring, Git, Docker, Nginx ๋ฑ ์ค์น๊ฐ ์ฉ์ดํจ
- ์ฃผ์์ฌํญ:
- ์ฐ๋ถํฌ๋ณด๋ค ๋ช ๋ น์ด ํ๊ฒฝ์ด ์ฝ๊ฐ ๋ค๋ฅผ ์ ์์ง๋ง, ํ์ต์ ํฐ ๋ฌธ์ ์์
๋ชฉ์ ์ถ์ฒ AMI
| AWS ์ ๋ฌธ + Spring ๋ฐฑ์๋ ๋ฐฐํฌ ํ์ต | โ Amazon Linux 2023 AMI (๊ธฐ๋ณธ ์ ํ๋ ๊ฒ) |
| ๋ฆฌ๋ ์ค ์ต์ํ๊ณ ๋ค์ํ ์๋ฃ ์ฐธ๊ณ ์ํ ๋ | Ubuntu 20.04 or 22.04 LTS AMI |


์ด ํ๋ฉด์ EC2 ์ธ์คํด์ค์ SSH๋ก ์์ ํ๊ฒ ์ ์ํ๊ธฐ ์ํด ํ์ํ ํค ํ์ด(key pair) ๋ฅผ ์์ฑํ๋ ๋จ๊ณ์ด๋ค.
ํค ํ์ด(Key Pair)๋?
- ๊ณต๊ฐ ํค(Public Key) ์ ๋น๋ฐ ํค(Private Key) ๋ก ์ด๋ฃจ์ด์ง ํ ์์ ์ํธํ ํค
- AWS์์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค ๋ ์ด ํค ํ์ด๋ฅผ ๋ฑ๋กํด ๋๊ณ , ์ฌ์ฉ์๋ ๋น๋ฐ ํค(.pem ๋๋ .ppk)๋ฅผ ์ด์ฉํด SSH ์ ์์ ์ํํ๋ค.
์ด ๊ณผ์ ์ ํตํด ๋น๋ฐ๋ฒํธ ์์ด๋ ์์ ํ๊ฒ ์ธ์คํด์ค์ ๋ก๊ทธ์ธํ ์ ์๋ค.
ํญ๋ชฉ ์ค๋ช
| ํค ํ์ด ์ด๋ฆ | ์์ฑํ ํค ํ์ด๋ฅผ ๊ตฌ๋ถ์ง๋ ์๋ณ์(์: yeonbi-ec2-key) |
| ํค ํ์ด ์ ํ | - RSA: ์ ํต์ ์ธ ๊ณต๊ฐํค ์ํธ ๋ฐฉ์- ED25519: ์ต์ ํ ์ปค๋ธ ๊ธฐ๋ฐ ๋ฐฉ์ (๋ ์งง์ ํค ๊ธธ์ด·๋์ ๋ณด์) |
| ํ๋ผ์ด๋น ํค ํ์ผ ํ์ | - .pem: Mac/Linux(OpenSSH)์์ ์ฌ์ฉ- .ppk: Windows(PuTTY)์์ ์ฌ์ฉ |
์ด ์์ ์ ํ๋ฉด…
- ๋น๋ฐ ํค(.pem ๋๋ .ppk) ํ์ผ์ด ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ๋ค์ด๋ก๋๋๋ค.
- EC2 ์ธ์คํด์ค๋ฅผ ์์ํ ๋ AWS๋ ์ด ํค์ ๊ณต๊ฐ ํค๋ฅผ ์ธ์คํด์ค์ ์ฌ์ด๋๋ค.
- ์ดํ SSH ํด๋ผ์ด์ธํธ์์
ssh -i /path/to/your-key.pem ec2-user@EC2-ํผ๋ธ๋ฆญIP
- ์ ๊ฐ์ด ๋ช ๋ น์ ๋ด๋ ค ๋น๋ฐ ํค๊ฐ ๊ณต๊ฐ ํค์ ์ผ์นํ๋ฉด ๋ก๊ทธ์ธ ํ์ฉ!
→ ๋น๋ฐ๋ฒํธ ์์ด, ์ค๊ฐ ๊ฐ๋ก์ฑ๊ธฐ ์ํ ์์ด,์์ ํ๊ฒ ์ธ์คํด์ค ์ฝ์์ ์ ์ํ ์ ์๋ค
์ธ์ , ์ ํ์ํ๊ฐ?
- SSH ์ ์ ์ฐ์ต: ํฐ๋ฏธ๋์ ํตํด ๋ฆฌ๋ ์ค ์๋ฒ ์ปค๋งจ๋๋ฅผ ์ง์ ์คํํ ๋
- ๋ฐฐํฌ ์๋ํ: CI/CD(์: GitHub Actions)์์ EC2์ ์ฝ๋ ๋ฐฐํฌ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ ๋
- ๋ณด์ ๊ฐํ: ํจ์ค์๋ ๋์ ํค ๊ธฐ๋ฐ ์ธ์ฆ์ผ๋ก ๋ฌด์ฐจ๋ณ ๋์ ๊ณต๊ฒฉ(๋ธ๋ฃจํธํฌ์ค)์ ๋ฐฉ์ด
์์ฝ
ํค ํ์ด ์์ฑ → ๋น๋ฐ ํค ํ์ผ(.pem/.ppk) ๋ค์ด๋ก๋์ธ์คํด์ค์ ๊ณต๊ฐ ํค ์ฌ๊ธฐSSH ํด๋ผ์ด์ธํธ์์ ํค๋ก ๋ก๊ทธ์ธ์์ ํ๊ณ ํธ๋ฆฌํ๊ฒ EC2 ์ฝ์ ์ ๊ทผ ๊ฐ๋ฅ
Tip. ์์ฑํ .pem ํ์ผ์ ๋ถ์ค ๋ถ๊ฐ·์ ๋ ๋ ธ์ถ ๊ธ์ง!
์์ ํ ๊ณณ(์: ~/.ssh/)์ ์ ์ฅํ๊ณ , ํผ๋ฏธ์ ์ chmod 400 your-key.pem์ผ๋ก ์ ๊ฐ์ผ ํ๋ค..



1. ๋ณด์ ๊ทธ๋ฃน(Security Group)์ด๋?
- AWS ํด๋ผ์ฐ๋์์ ์ธ์คํด์ค(์๋ฒ) ๋ ๋ฒจ์ ๊ฐ์ ๋ฐฉํ๋ฒฝ(Virtual Firewall) ์ญํ ์ ํจ
- ์ธ๋ฐ์ด๋(Inbound): ์ธ๋ถ์์ ์ธ์คํด์ค๋ก ๋ค์ด์ค๋ ํธ๋ํฝ์ ์ ์ด
- ์์๋ฐ์ด๋(Outbound): ์ธ์คํด์ค์์ ์ธ๋ถ๋ก ๋๊ฐ๋ ํธ๋ํฝ์ ์ ์ด
EC2 ์ธ์คํด์ค๋ฅผ ์ง, ๋ณด์ ๊ทธ๋ฃน์ ์ธํ๋ฆฌ์ ๋๋ฌธ, ๊ท์น์ ๊ทธ ๋๋ฌธ์ ์ธ์์ง ๋ณด์ ์์์ด๋ผ๊ณ ์๊ฐํ๋ฉด ์ดํดํ๊ธฐ ์ฝ๋ค.
2. ๋ณด์ ๊ทธ๋ฃน์ ์ฃผ์ ํน์ง
๊ตฌ๋ถ ์ค๋ช
| ์ ์ฉ ๋จ์ | ์ธ์คํด์ค ๋จ์๋ก ์ฌ๋ฌ ๊ฐ ์ ์ฉ ๊ฐ๋ฅ– ๋์ผํ ๋ณด์ ๊ทธ๋ฃน์ ์ฌ๋ฌ ์ธ์คํด์ค์ ๋ฌถ์ด์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅ |
| ์ํ ๊ธฐ๋ฐ(Stateful) | ์ธ๋ฐ์ด๋ ์์ฒญ์ ํ์ฉํ๋ฉด ๊ทธ์ ๋ํ ์๋ต ํธ๋ํฝ์ ๋ณ๋ ๊ท์น ์์ด ์๋ ํ์ฉ |
| ๊ท์น ์ถ๊ฐ๋ง ๊ฐ๋ฅ | ํ์ฉ(Allow) ๊ท์น๋ง ์ถ๊ฐ ๊ฐ๋ฅ, ์ฐจ๋จ(Deny) ๊ท์น์ ์ ๊ณตํ์ง ์์– ๋ชจ๋ ๋นํ์ฉ ํธ๋ํฝ์ ๊ธฐ๋ณธ ์ฐจ๋จ ์ํ |
3. ์ธ๋ฐ์ด๋ / ์์๋ฐ์ด๋ ๊ท์น ๊ตฌ์ฑ
3.1 ์ธ๋ฐ์ด๋(Inbound) ๊ท์น
์๋น์ค. ํ๋กํ ์ฝ. ํฌํธ ๋ฒ์ ์์ค์ค๋ช
| SSH | TCP | 22 | 0.0.0.0/0 ๋๋ ๋ด IP(/32) | ๋ฆฌ๋ ์ค ํฐ๋ฏธ๋ ์ ์์ฉ ํฌํธ |
| HTTP | TCP | 80 | 0.0.0.0/0 | ๋ธ๋ผ์ฐ์ ๋ก ์ ์ํ ์น ์๋ฒ(ํฌํธ 80) |
| HTTPS | TCP | 443 | 0.0.0.0/0 | ๋ณด์ ์น(SSL) ์ ์(์ ํ ์ฌํญ) |
- 0.0.0.0/0: ์ ์ธ๊ณ ๋ชจ๋ IP ํ์ฉ (๊ฐ๋ฐ·ํ ์คํธ์ฉ์ผ๋ก๋ง ์ฌ์ฉ ๊ถ์ฅ)
- ๋ด IP(/32): SSH๋ง ๋ด IP๋ก ์ ํํ์ฌ ๋ณด์์ ๊ฐํ
3.2 ์์๋ฐ์ด๋(Outbound) ๊ท์น
- ๊ธฐ๋ณธ๊ฐ: ๋ชจ๋ ํธ๋ํฝ ํ์ฉ(All traffic, 0.0.0.0/0)
- ํ์ ์ ํน์ ๋ชฉ์ ์ง(์: ์ฌ๋ด๋ง, ์ธ๋ถ API)๋ง ํ์ฉํ๋๋ก ์ขํ ์ ์์
4. EC2 ์์ฑ ์ ๋ณด์ ๊ทธ๋ฃน ์ค์ ๋ฐฉ๋ฒ
- “๋ณด์ ๊ทธ๋ฃน ์์ฑ” ์ ํ
- ์ด๋ฆ(Name), ์ค๋ช (Description) ์ ๋ ฅ
- ์ธ๋ฐ์ด๋ ๊ท์น ์ถ๊ฐ
- ์ ํ(Type) → SSH, HTTP
- ํ๋กํ ์ฝ(Protocol) → TCP
- ํฌํธ(Port Range) → 22, 80
- ์์ค(Source) → ์์น ๋ฌด๊ด(0.0.0.0/0) ๋๋ ๋ด IP(/32)
- ์์๋ฐ์ด๋ ๊ท์น ํ์ธ (๊ธฐ๋ณธ “๋ชจ๋ ํธ๋ํฝ ํ์ฉ”)
- EC2 ์ธ์คํด์ค ์์ฑ ์๋ฃ ํ, ํด๋น ๋ณด์ ๊ทธ๋ฃน์ด ์ธ์คํด์ค์ ์ฐ๊ฒฐ(attach) ๋์๋์ง ํ์ธ
5. ๊ถ์ฅ ๋ณด์ ๋ชจ๋ฒ ์ฌ๋ก
- SSH(22๋ฒ ํฌํธ) ์ ๊ทผ์ ๋ด IP๋ก๋ง ์ ํ
- 203.XX.XX.XX/32 ์์ผ๋ก ์ค์
- ํผ๋ธ๋ฆญํ๊ฒ ์ด์ด๋๋ฉด ๋ฌด์ฐจ๋ณ ๊ณต๊ฒฉ ์ํ
- ๋ถํ์ํ ํฌํธ๋ ์ด์ง ์๊ธฐ
- ์: FTP(21), SMTP(25) ๋ฑ ์๋น์ค๊ฐ ์์ผ๋ฉด ์ญ์
- ์ด์ ํ๊ฒฝ๊ณผ ํ
์คํธ ํ๊ฒฝ ๋ถ๋ฆฌ
- ํ ์คํธ์ฉ SG, ์ด์์ฉ SG๋ฅผ ๋ฐ๋ก ๋ง๋ค์ด ๊ด๋ฆฌ
- ์ ๊ธฐ์ ์ผ๋ก ์ธ๋ฐ์ด๋/์์๋ฐ์ด๋ ๊ท์น ๊ฒํ
- ์ฌ์ฉํ์ง ์๋ ๊ท์น์ ์ฆ์ ์ ๊ฑฐ
๋ณด์ ๊ทธ๋ฃน์ EC2 ์ธ์คํด์ค ์์ ์ธ์์ง ๋ฐฉํ๋ฒฝ์ด๋ฉฐ,
์ธ๋ฐ์ด๋(๋ค์ด์ค๋)์ ์์๋ฐ์ด๋(๋๊ฐ๋) ํธ๋ํฝ์ ์ธ๋ฐํ๊ฒ ์ ์ดํ์ฌ
์๋ฒ ๋ณด์์ ํ๋ณดํ๋ ํต์ฌ ์๋จ์ด๋ค.
'๐ฐ๐ท ํ๊ตญ์ด (Korean) > AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [6] IP์ Port์ ๊ฐ๋ (2) | 2025.06.11 |
|---|---|
| [5] EC2 ์ค์ ํ๊ธฐ (์ธ์คํด์ค ์ ํ) (0) | 2025.06.11 |
| [3] ๋ฆฌ์ (Region) ์ค์ ํ๊ธฐ (0) | 2025.06.10 |
| [2] EC2(Elastic Compute Cloud)๋? (0) | 2025.06.10 |
| [1] ๋ฐฐํฌ (Deployment)๋? (0) | 2025.06.10 |