< 강의 커리큘럼 >

01. DevOps의기본 개념 
02. AWS기반 소규모&중규모 아키텍트설계
03. AWS기반 대규모아키텍트 설계
04. 코드를통한 인프라관리(IaC)
05. 도커와 쿠버네티스를 이용한서비스 운영
06. CI/CD(지속적 통합/지속적 제공) 구현하기
07. 모니터링서비스 구축및운영
08. AWS기반보안
부록. Kuberneteson AWS EKS


 

Bastion 실습 

>> 해당 그림을 바탕으로 실제로 테스트를 해봤습니다. 

 

이 테스트를 하면서 처음에는 Bastion에서 Private EC2에 접속을 못했습니다. 

그래서 원인을 찾아보니. 처음에 위 그림에서 빨간색 표시가 있는 NACL에서의 설정 문제가 있었습니다. 

Private subnet NACL은 인/아웃바운드 ANY OPEN으로 해두었고, 

Public subnet NACL은 아웃바운드 ANY OPEN, 인바운드는 22번만 OPEN 해두었습니다. 

 

그런데, NACL은 stateless 형식인 것과 TCP는 3way handshake를 한다는 것을 이해하면서 

Public subnet NACL에 대해 인바운드 22 OPEN 해둔것이 문제였다는 것을 파악했고, 

모든 NACL에 대해 인/아웃바운드 ANY로 open하니까 정상적으로 연결이 가능했습니다. 

 

syn을 보낼때는 22port로 정상적으로 들어왔지만 

synack이 갈때는 syn에서 들어온 source port가 22번이 아닌 random이기 때문에 22번만 열었을 경우에는 통신이 정상적으로 되지 않았습니다. 

 

결론적으로 말하자면, 

Bastion을 통해 Private EC2에 접속할 때 SG와 NACL의 설정을 모두 고려해야한다.

 

 

그럼 NACL은 언제 쓰냐?

차단해야하는 대역대가 있을 경우 일반적으로 사용한다고합니다. 

AWS에서도 NACL은 차단대역대가 있을 경우에 사용한다고.. 말했던거 같네요. 유투브 영상에서

또한 NACL은 설정할 수 있는 규칙이 20개입니다... 

 

https://docs.aws.amazon.com/ko_kr/vpc/latest/userguide/amazon-vpc-limits.html

 

Amazon VPC 할당량 - Amazon Virtual Private Cloud

Amazon VPC 할당량 다음 표에는 AWS 계정 관련 각 리전의 Amazon VPC 리소스 할당량(이전 명칭은 ‘제한’)이 나열되어 있습니다. 달리 명시되지 않는 한 이러한 할당량의 증가를 요청할 수 있습니다.

docs.aws.amazon.com

VPC도 그렇고, IGW, 라우팅테이블 등 다 무한대로 생성할 수 있는게 아닙니다. 

모든 자원에 limit값이 정해져 있으니까 문서를 보고 알아두는 것도 좋을 것 같습니다. 

 

 

또 이 작업을 하면서 들었던 궁금점이 

Router가 하나인데 라우팅테이블이 2개가 있는게 맞는건가?

일반적으로 Subnet 당 라우팅테이블을 하나씩 넣어준다고 합니다. 

 

 

NAT Gateway

아키텍처좀 그려주고 설명해주면.. 좋겠지만.. 그러지 않습니다. 

NAT GW를 사용하면 private안에 있는 EC2에서 인터넷을 사용할 수 있습니다. 

예를들어 yum install mysql 같이.. 다운로드가 가능합니다. 

 

NAT Gateway는 Public Subnet 상에 위치해 있어야하며,

Private Route Table에 0.0.0.0/0 일경우 NAT GW로 라우팅 될 수 있도록 설정이 필요합니다. 

 

 

 

VPC EndPoint

VPC 엔드포인트를 사용할경우 EC2인스턴스에 'IAM사용' 설정을 통해 필요한 권한의 ROLE을 부여해줘야합니다. 

s3에 접근할 수 있는 권한을 가진 role을 부여하는 것 처럼.. ec2 인스턴스를 생성할 때 붙여줍니다. 

그리고 VPC EndPoint를 생성해주고,

 

VPC EndPoint는 2가지 종류가 있습니다. GW, Instance방식 으로 구분을 지을 수 있으며 강의에서는 GW방식으로 했습니다.

 

VPC EndPoint는 꼭 Public에 있지 않아도 되고, Private subnet에 있도록 설정했고, 

설정 후에는 Private Routetable에 자동으로 라우팅테이블이 생성되는걸 확인할 수 있습니다. (시간이 조금 걸림..)

>> S3와 관련된 트래픽이 오면 해당 대상으로 보내라.. 이런건데 자동으로 생성됩니다. 


본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

 

https://bit.ly/3FVdhDa

 

수강료 100% 환급 챌린지 | 패스트캠퍼스

딱 5일간 진행되는 환급챌린지로 수강료 100% 환급받으세요! 더 늦기전에 자기계발 막차 탑승!

fastcampus.co.kr

 

반응형

+ Recent posts