일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- opt/anaconda3/bin/jupyter_mac.command
- 최소권한
- AWS 공격테스트
- terraform기본
- 리눅스
- 리눅스기초
- terraform with aws
- Linux
- cissp
- 쉘스크립트
- AWS구축
- aws terraform
- AWS CI/CD
- linux명령어
- 주피터노트북 설치
- AWS실습
- 직무분리
- aws따라하기
- aws기본
- aws기초
- Cissp sdlc
- AWS CodeDeploy
- 리눅스기초명령어
- blue/green배포
- aws
- GDPR
- AWS배포자동화
- terraform따라하기
- 리눅스명령어
- terraform기초
ysuekkom의 IT study note
[aws-기본] VPC 내 퍼블릭대역과 외부 통신을 위한 기본 연결 설정하기 본문
앞선 포스팅에서 EC2 생성 및 연결, 도커컴포즈를 이용하여 워드프레스 생성까지 실습해보았다.
아래 포스팅 참고하기
https://ysuekkom8915.tistory.com/19
https://ysuekkom8915.tistory.com/20
혹은 IcC 테라폼 코드로 작성해서 구축하는 실습따라하기는 아래 포스팅을 참고해서 따라해주면 된다!
https://ysuekkom8915.tistory.com/26
시작!
VPC 내 퍼블릭대역과 프라이빗 대역을 나누어, 외부 통신 시 보안을 고려한 구성이 필요하다.
따라서 가상 네트워크 vpc를 먼저 생성한 뒤, vpc 내 서브넷 구성으로 퍼블릭대역과, 프라이빗 대역을 구축해보겠다.
*주의사항: 본 포스팅에서의 aws 네트워크 모든 정보는 실습을 위해 구성 후, 삭제된 자원들로 자원의 정보를 마스킹하지 않았지만 실제 구축된 자원정보는 보안상 노출해서는 안된다.
[실습 네트워크 구조]
VPC만들기
VPC > VPC > VPC 생성 이동
-이름: 가상 네트워크를 식별할 수 있게 구성
-IPv4 CIDR블록 선택
-CIDR: B class 10.0.0.0/16 로 구성
아래와 같이 이용가능한 상태로 VPC가 생성된다.
VPC 내에 서브넷을 생성해보자
아래 사진의 서브넷(172.31대역)은 기본 제공되는 디폴트 VPC(172.31.0.0대역)의 서브넷이다.
VPC> 서브넷 > 서브넷 생성
-VPC ID 선택: 위에서 만들어준 VPC를 선택
-서브넷 이름: 식별가능한 서브넷이름 지정(퍼블릭 사용시, 이름에 퍼블릭을, 프라이빗대역으로 사용시 프라이빗을 작성하는 것이 좋다)
-가용영역: 동일한 리전으로 선택
-IPv4 CIDR블록: VPC 대역(10.0.0.0/16) 내에 속할 수 있도록 서브넷 구성한다.
서브넷 생성 결과 성공
인터넷게이트웨이 생성하기
아래 보이는 igw- 인터넷게이트웨이 역시 디폴트 VPC의 인터넷 게이트웨이이다.
인터넷게이트웨이를 생성해보자
VPC>인터넷게이트웨이 >인터넷 게이트웨이 생성
-이름 태그: 식별가능하도록 지정
인터넷 게이트웨이 생성 성공
생성한 인터넷게이트웨이를 vpc에 연결해보자
VPC >인터넷게이트웨이 >VPC에 연결(생성한 igw)
-사용가능한 VPC에서 생성한 VPC를 선택
라우팅 테이블 생성하기
외부에서 접속 시, VPC의 퍼블릭대역으로 접속해야한다(프라이빗은 내부통신 및 내부에서 외부로 나갈 때 사용).
따라서, 라우팅 테이블을 생성하여 트래픽 흐름을 지정해주어야한다.
먼저 라우팅 테이블을 생성해보자.
VPC >라우팅 테이블 >라우팅 테이블 생성
-이름: 식별 가능하도록 지정
-VPC: 생성한 VPC 선택하기
라우팅 테이블 생성완료
서브넷 연결 편집하기
VPC>라우팅 테이블 > 생성한 라우팅 테이블 선택 > 서브넷 연결 편집
-생성한 라우팅(Cloud-PublicRT-awsbasic)에서 연결할 서브넷(subnet-Public-DMZ)를 추가하여 연결 저장
라우팅테이블 편집하기
VPC > 라우팅 테이블 > 라우팅 선택 후, 하단 라우팅 탭
-10.0.0.0/16 , 대상 local로 활성화된 디폴트 라우팅 테이블을 확인할 수 있다.
여기에 라우팅 테이블 편집을 통해, 0.0.0.0/0 모든 트래픽이 생성한 인터넷 게이트웨이 igw- 로 향할 수 있도록 경로를 편집해준다.
편집 완료 시, 아래와 같이 확인 가능하다.
-라우팅 테이블: Cloud-PublicRT-awsbasic
-서브넷 연결: subnet-Public-DMZ
-경로: 0.0.0.0/0 모든 트래픽은 igw로, 10.0.0.0/16 로컬
지금까지 생성한 구성은 아래와 같다
이렇게 구성한 VPC 내, 퍼블릭대역 안에 웹서버를 생성해보자(EC2)
퍼블릭 대역 안 오픈 웹서버 생성하기(EC2생성하기)
EC2 > 인스턴스 > 인스턴스 시작
-이름: 식별 가능하도록(추후 수정 가능함)
-애플리케이션 및 OS 이미지: 기본 실습에서는 모두 우분투 프리미어로 생성한다(개별적으로 선호하는 OS 이미지를 선택해도 무방)
이어서
-인스턴스 유형: 프리미어로 생성가능한 인스턴스 유형 선택(실습용)
-키 페어: 로그인에 사용될 키페어(생성 또는 기존 키페어 사용 가능), 여기서는 생성하였다. 키 페어 생성 및 관리, 연결 본 포스팅 상단 EC2 서버 생성 후 연결하기 포스팅 참고
-VPC 선택: 생성한 VPC 선택
-서브넷정보: VPC 내 퍼블릭대역으로 생성한 subnet-Public-DMZ 선택
-퍼블릭 IP자동할당: 활성화(퍼블릭대역은 퍼블릭IP 필요: 외부와 통신할 퍼블릭IP 필요함)
-보안 그룹: 필요에 따라 생성 혹은 기존 보안그룹 선택
-보안그룹 이름/설명: 식별가능하게 변경
-보안 그룹 규칙: 원격으로 접속할 것 이기 때문에 ssh 22port, 추후 HTTP, HTTPS 추가
인스턴스에 연결하기(직접연결 방법사용=퍼블릭아이피 있어야만 가능)
-ssh로 연결하는 방법은 위 EC2 서버생성 및 연결하기 포스팅에서 다뤘기 때문에, EC2 인스턴스 연결로 시도
연결 접속하여 웹서버로 사용하기 위에 아파치를 다운로드한다.
>sudo apt install apache2
>sudo service apache2 start
아파치 서버 다운로드 후, 시작하였기에 퍼블릭 IP로 직접 접속 가능
13.124.250.173 로그인 시, 아래와 같이 초기 아파치2 웹페이지 화면 확인 가능
aws 공부를 시작하면 온프레미스 환경에서의 각각의 장치가 aws에서는 어떤것에 해당하는지 맵핑을 해야한다.
가상 네트워크(VPC) 내 퍼블릭대역을 구성하고, 퍼블릭대역 내 웹서버로 사용할 EC2를 생성하고, 연결한 뒤 웹서버를 올린 뒤 접속까지 해보았다.
다음은 프라이빗 서버를 구축하고, 오늘 생성한 퍼블릭 대역 내에 NAT를 구축하여 외부 통신할 수 있는 환경 실습을 진행해보겠다.
'Cloud Service > AWS' 카테고리의 다른 글
[aws-기본] 로드밸런서 구축하기 (0) | 2022.12.14 |
---|---|
[aws-기본]VPC 내 프라이빗 서브넷(private subnet)환경과 NAT 구축하기 (0) | 2022.11.15 |
[aws-기본] 도커컴포즈로 워드프레스 설치하기 (0) | 2022.11.14 |
[aws-기본] IAM 사용자 및 그룹 추가 등 관리(매니지먼트 콘솔) (0) | 2022.11.13 |
[aws-기본] EC2 서버 생성 후 연결하기 (0) | 2022.11.13 |