VPC 확장과정 - 2

임상규·2023년 9월 17일
1

AWS

목록 보기
20/33
post-thumbnail

1

VPC 확장과정-1 에서 위 이미지와 같은 상황까지 도착하였다.
오늘은 그 이후 확장과정에 대해서 기술하겠다.

2 - Security Group 생성

내가 만드려고 하는 모델은 개발자들이 Public하게 접근하는것이 아닌
Bastion Host를 이용하여 Private Subnet에 있는 애플리케이션에 접근할 수 있게 아키텍처를 구축하려고 한다.

따라서 먼저 Bastion Host에 부착할 보안그룹부터 생성하겠다.

적당한 보안그룹의 이름과 설명을 추가해주고 VPC는 저번에 만들었던 My-VPC를 선택한다.

인바운드 규칙에는 SSH 프로토콜을 이용하여 내 IP에서 접근할 수 있게 설정한다.
SSH를 사용하는 이유는 키페어를 통해 인증된 방식으로 Bastion Host에 접근하기 위해서 이다.

3 - Bastion Host 생성

보안그룹을 생성했으니 해당 인스턴스를 생성할 차례이다.

적당한 이름을 붙여준 다음,

리눅스 환경을 선택한다.

실제 서비스 환경을 구축할 것이 아니기때문에 앞으로 생성할 인스턴스들은 프리티어에서 사용가능한 t2.micro를 사용할 것이다.

키페어는 적당한 키페어를 생성한 후 넣어준다.
해당 키페어는 putty를 활용하여 ppk to pem을 한 후 인스턴스에 넣어 접근할 때 인증방식으로 활용할 예정이다.

네트워크 설정에서 편집을 눌러 My-VPC와 Bastion Host가 위치할 public-subnet-a를 선택한다.

2번에서 생성한 보안그룹을 붙여준다.

스토리지도 디폴트값으로 입력한다.
그 후 인스턴스를 생성한다.

4 Elastic IP 생성

디폴트 값으로 Elastic IP를 생성한다.

5 - Elastic IP를 Bastion Host에 부착

생성한 Elastic IP를 Bastion Host에 할당한다.

Elastic IP 할당 전

Elastic IP 할당 후

6 - WinSCP, FileZila등으로 Host

Elastic Ip를 WinSCP, Filezila등을 이용하여 Bastion Host에 키페어를 넣어준다.

Putty를 이용하여 Private IP를 통해 접근하면 해당 터미널 환경을 볼 수 있다.

7 - Private-EC2 보안그룹 생성

애플리케이션을 구동할 Private-EC2에 붙일 보안그룹을 생성한다.

이름은 적당히 붙여준 후 My-VPC를 선택한다.

인바운드 규칙에는 Bastion Host에서 생성한 키페어를 이용하여 접근할 수 있도록 SSH와 Bastion Host 보안그룹을 선택해준다.

8 - Private-EC2 생성

Bastion Host와 다른것 없이 생성하며, 키페어를 입력하여 준다.

네트워크는 private-subnet-app-a에서 구동할 것이므로 선택하여 준다.

직전에 만들었던 보안그룹을 붙여준다.

스토리지도 디폴트 값으로 설정 후 인스턴스를 생성하여 준다.

9 - Bastion에서 Private-EC2 접근

먼저 키페어에 chomod 명령어를 입력해 600 권한을 부여한다.
600권한은 소유자만 Read, Write를 할 수 있다.

다음 ssh 명령어에 -i 옵션을 주고 키페어를 이용하여 private-ec2에 접근한다.

접근에 성공하면 해당화면이 나올것이다.

그 후 컬을 날려 인터넷 접속상태를 확인한다.

이상없이 인터넷 연결이 되고 있다.

인터넷 연결이 되는 이유는 Private Subnet 라우팅테이블에 NAT Gateway가
잘 붙어있기 때문이다.

10

오늘 진행한 단계까지의 최종모습이다.

profile
Cloud Engineer / DevOps Engineer

0개의 댓글