티스토리 뷰
반응형
AWS 웹 서버 구축 가이드
1. AWS란?
Amazon Web Services 는 서버, 데이터베이스, 스토리지 등을 인터넷으로 제공하는 클라우드 플랫폼입니다.
대표적으로 웹 서버 구축 시 많이 사용하는 서비스:
| EC2 | 가상 서버 |
| RDS | 데이터베이스 |
| S3 | 파일 저장소 |
| Route53 | DNS 관리 |
| CloudFront | CDN |
| IAM | 계정 및 권한 관리 |
| VPC | 네트워크 구성 |
| ALB | 로드밸런서 |
| WAF | 웹 방화벽 |
공식 사이트: AWS 공식 홈페이지
2. AWS 회원가입
가입 절차
- AWS 홈페이지 접속
- 이메일 입력
- 루트 계정 생성
- 카드 등록
- 본인 인증
- 무료 티어 활성화
무료 티어 설명: AWS Free Tier
3. IAM 사용자 생성 (중요)
루트 계정은 절대 실무 운영에 사용하지 않습니다.
IAM 사용자 생성 이유
- 권한 분리
- 접근 제어
- API 키 관리 가능
- 보안 강화
IAM 콘솔: AWS IAM Console
권장 구성
| Root | 결제/최상위 관리 |
| Admin IAM | 관리자 |
| Dev IAM | 개발자 |
| CI/CD IAM | 배포 자동화 |
4. AWS Access Key 발급
발급 위치
IAM → Users → Security credentials → Create access key
생성되는 값:
Access Key ID
Secret Access Key
주의사항:
- Secret Key는 재조회 불가
- git 업로드 금지
- 소스코드 하드코딩 금지
5. AWS CLI 설치
공식 문서: AWS CLI Docs
Linux 설치
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
확인:
aws --version
6. AWS CLI 인증 설정
aws configure
입력:
AWS Access Key ID
AWS Secret Access Key
region
output format
예시:
AWS Access Key ID [None]: AKIAxxxxxxxx
AWS Secret Access Key [None]: xxxxxxxxx
Default region name [None]: ap-northeast-2
Default output format [None]: json
7. EC2 서버 생성
EC2란?
Amazon EC2 는 AWS의 대표적인 가상 서버 서비스입니다.
EC2 콘솔: Amazon EC2 Console
권장 서버 스펙
| 테스트 | t3.micro |
| 소규모 웹 | t3.small |
| API 서버 | t3.medium |
| 대규모 서비스 | c6i / m7i |
8. 키 페어 생성
EC2 접속용 SSH 키 생성
생성 파일:
my-server.pem
권한 설정:
chmod 400 my-server.pem
9. 보안 그룹 설정
필수 오픈 포트
| 22 | SSH |
| 80 | HTTP |
| 443 | HTTPS |
실무 권장:
- SSH는 특정 IP만 허용
- 0.0.0.0/0 최소화
10. EC2 접속
Linux/macOS
ssh -i my-server.pem ec2-user@YOUR_PUBLIC_IP
Ubuntu:
ssh -i my-server.pem ubuntu@YOUR_PUBLIC_IP
11. 기본 서버 세팅
패키지 업데이트
Ubuntu:
sudo apt update
sudo apt upgrade -y
Amazon Linux:
sudo yum update -y
12. 필수 패키지 설치
공통 패키지
sudo apt install -y \
git \
curl \
wget \
vim \
htop \
net-tools \
unzip \
zip \
jq
13. 방화벽 설정
Ubuntu UFW:
sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
14. AWS S3 업로드 예제
Amazon S3
버킷 생성
S3 콘솔: Amazon S3 Console
AWS CLI 업로드
aws s3 cp test.txt s3://YOUR_BUCKET/
15. 운영 필수 보안 설정
반드시 적용해야 하는 항목
| MFA 활성화 | 계정 탈취 방지 |
| 루트 계정 미사용 | IAM 사용 |
| SSH Key 로그인 | 패스워드 로그인 금지 |
| Fail2Ban | SSH 공격 차단 |
| 자동 업데이트 | 보안 패치 |
| CloudWatch | 모니터링 |
| WAF 적용 | 웹 공격 차단 |
16. 장애 확인 명령어
CPU 사용률
top
htop
메모리
free -h
디스크
df -h
포트 확인
netstat -tunlp
17. AWS 비용 절감 팁
| 미사용 EC2 종료 | 과금 방지 |
| EIP 해제 | 탄력 IP 비용 절감 |
| S3 Lifecycle | 오래된 파일 자동 정리 |
| Reserved Instance | 장기 비용 절감 |
| Spot Instance | 저렴한 서버 |
#AWS
#AWS가입
#AWSEC2
#AWS웹서버
#EC2구축
#AWS서버구축
#Nginx설치
#Docker설치
#AWSCLI
#AWSIAM
#AWSAccessKey
#AWS보안설정
#AWS운영가이드
#EC2세팅
#Ubuntu서버설정
#웹서버구축
#클라우드서버
#AWSSSL
#LetsEncrypt
#AWS배포
'SERVER' 카테고리의 다른 글
| 가장 훌륭한 트래픽 분산 방법 (1) | 2026.06.16 |
|---|---|
| L4 스위치 원리 (0) | 2026.06.15 |
| Nginx 역방향 프록시 (0) | 2026.06.14 |
| 방화벽과 웹방화벽 차이 (0) | 2026.05.22 |
| linux vi(vim) 편집기 사용법 정리 (0) | 2026.05.05 |
| linux find, grep 사용법 및 차이점 정리 (0) | 2026.05.04 |
| 리눅스 cd 명령어 사용법 정리 (0) | 2026.05.04 |
| 리눅스 ls 명령어 사용법 정리 (0) | 2026.05.04 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- String
- 알고리즘
- 정보처리기사
- 리스트
- 블루투스
- C++
- 상속
- OpenCV
- Android
- 문제풀이
- C
- 파일처리
- C++ 클래스
- html
- Java
- 문자열
- MySQL
- 자료구조
- DB연동
- 클래스
- 파이썬
- Class
- 배열
- 데이터베이스
- 안드로이드
- C언어
- c#
- 아두이노
- 자바
- 벡터
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
글 보관함
반응형
