저희는 일단 private-subnet에 접근할 수 있는, private EC2를 만들겁니다. 그리고 Bastion Host인 Public EC2를 만들겁니다. 그리고 이 Bastion Host를 통해 Private EC2로 접근할겁니다.
먼저 public-ec2를 생성해 보도록 하겠습니다.
새로운 보안 그룹 public_sg를 생성하고 다음과 같이 설정해 주고 인스턴스를 만듭니다. 이는 결과적으로 Bastion Host가 되는 것입니다.
그 다음으로는 private-ec2를 생성해 보도록 하겠습니다. 이를 위해서는 보안그룹을 조금 다르게 설정해 주어야 합니다.
새로운 보안 그룹을 생성하고 인바운드 규칙에서 소스를 전체로 하면 안됩니다. 그 이유는 아무대서나 허용을 해버리면 이건 private-subnet이 아니게됩니다. 당연히 private_NACL에서 당연히 막아줄 겁니다. 다만 보안그룹에서 명확하게 설정해 주는 것이 옳습니다.
따라서 ssh와 ICMP-IPv4의 소스를 Bastion Host즉 public_sg로 설정하면 여기에서 들어온 인바운드만 허용한다는 뜻입니다.
이 모든 과정을 거치고 이제 public-ec2에 ssh를 이용하여 접속해 보도록 하겠습니다. 저는 맥북이기 때문에 따로 putty를 사용하지 않겠습니다.
ssh -i ./fastcampus.pem ec2-user@3.34.139.202
다음 ssh 명령어를 통해서 접속하면 됩니다.
그 다음에 BastionHost에서 private-ec2의 private IP를 통해 private-subnet에 접속해 보도록 하겠습니다. 이를 위해서는 scp를 통해 Bastion Host로 개인키인 fastcampus.pem을 보내야 합니다.
scp -i fastcampus.pem ./fastcampus.pem ec2-user@3.34.139.202:/home/ec2-user
그리고 ssh로 Bastion Host로 접속하고 private-ec2 즉 private-subnet에 접속하게 되면 아래와 같은 화면이 되게 됩니다.
'DevOps > AWS Architecture' 카테고리의 다른 글
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - VPC EndPoint 만들기 (0) | 2022.06.28 |
---|---|
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - NAT Gateway 만들기 (0) | 2022.06.27 |
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - NACL 설정하기 2 (0) | 2022.06.27 |
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - NACL설정하기 (0) | 2022.06.27 |
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - IGW와 라우팅 테이블 생성 (0) | 2022.06.27 |