구성 내용
- user는 Internet 게이트웨이와 NAT 게이트웨이를 이용하여 접근
- Front-End는 퍼블릭 서브넷에 Window OS Server를 배포
- Front-End는 NextJS, RestAPI로 개발
- Front-End에서 API를 호출 할 땐 Reverse Proxy 방식을 이용
- Back-End는 프라이빗 서브넷에 Ubuntu OS Server를 배포
- Back-End에선 Flask를 이용해 API 생성, DBMS는 MySQL로 구성
- 개발자는 Baston Host를 이용해서 프라이빗 서브넷에 있는 백엔드로 접근 가능
클라우드 설정 사항
1. VPC
final4-vpc
- IPv4 CIDR 블록 : 10.10.0.0/16
- 가용영역 : ap-northeast-2a
- 서브넷 :
① 퍼블릭 서브넷 : final4-subnet-public-a (10.10.1.0/24)
② 프라이빗 서브넷 : final4-subnet-private-a (10.10.10.0/24)
- 라우팅테이블 :
① 퍼블릭 서브넷의 라우팅 테이블 : final4-rtb-public-a
② 프라이빗 서브넷의 라우팅 테이블 : final4-rtb-private-a
- 네트워크 :
① 인터넷 게이트웨이 : final4-igw
② NAT 게이트웨이 : final4-nat (52.79.217.9)
2. EC2
final4-public-frontend
- AMI : Microsoft Windows Server 2019 Base
- 인스턴스 유형 : t2.micro
- VPC : final4-vpc
- Subnet: final4-subnet-public-a
- 퍼블릭 IP 자동 할당 : 비활성화
- 보안그룹 : final4_public_frontend_sg
→ 인바운드 규칙
① HTTP : 포트 범위 : 80 / 모든 IPv4 소스에서 인바운드 트래픽을 허용
② RDP : 포트 범위 : 3389 / 모든 IPv4 소스에서 인바운드 트래픽을 허용
- 스토리지 : 60G
- KeyPair : [key 이름].pem
final4-public-baston
- AMI : Amazon Linux 2023 AMI
- 인스턴스 유형 : t2.micro
- VPC : final4-vpc
- Subnet : final4-subnet-public-a
- 퍼블릭 IP 자동 할당 : 활성화
- 보안그룹 : final4_public_sg
→ 인바운드 규칙
① SSH : 포트 범위 : 22 / 모든 IPv4 소스에서 인바운드 트래픽을 허용
- 스토리지 : 기본 8G
- KeyPair : key_final4.ppk
cf ) ec2-user 입력해서 ssh 접속
final4-private-backend
- AMI : Ubuntu Server 22.04 LTS
- 인스턴스 유형 : t2.micro
- VPC : final4-vpc
- Subnet : final4-subnet-private-a
- 퍼블릭 IP 자동 할당 : 비활성화
- 보안그룹 : final4_private_backend_sg
→ 인바운드 규칙
① SSH : 포트 범위 : 22 / 모든 IPv4 소스에서 인바운드 트래픽을 허용
② MySql : 포트 범위 : 3306 / 모든 IPv4 소스에서 인바운드 트래픽을 허용
③ TCP : 포트 범위 : 5000 / 모든 IPv4 소스에서 인바운드 트래픽을 허용
- 스토리지 : 기본 30G
- KeyPair : [key 이름].ppk
cf ) ubuntu 입력해서 ssh 접속
'rookies > 최종 프로젝트' 카테고리의 다른 글
최종 프로젝트 - 클라우드 취약점 진단 (0) | 2024.03.21 |
---|---|
최종 프로젝트 - 서버 설정 (0) | 2024.03.20 |