[AWS] VPC 디자인(2)

 
안녕하세요 누리클라우드입니다. 지난번 'VPC 디자인(1)' 에 이어서

 

간단한 Amazone VPC 보안 강화 방안 및 Private Network 외부 인터넷 연결의 위한 NAT 개념과 기능을 알아보겠습니다.

 

Network ACL,Security Group기능을 활용 하여 Web 서버와 DB서버를 사용한다고 가정하에 적절한 보안 설정에 대해 실습을 통해 구성해보겠습니다.

 

 

 

 

 

Network ACL

 

유입되는 트래픽을 패킷의 출발지 주소,목적지 주소,protocol 유형,포트를 확인하여 허용하거나 차단하는 기능입니다.

 

물리적인 서버에서는 앞쪽에 방화벽장비나 switch,router 장비를 두어 구현하였지만, 고가의 장비를 추가하여 구성하는데에는 부담이 있습니다.

 

VPC내에서 무료로 Network ACL 기능을 제공하고 있으며 사용자가 직접 정책을 설정하여 유입되는 트래픽을 제어할 수 있습니다.

 

 

 

Amazone VPC Network ACL 특징

 

-.Subnet 단위로 적용이 가능하다

 

-.여러개의 subnet에 적용이 가능하다

 

-.Subnet은 한개의 ACL만 가능하다

 

-.ACL 규칙 목록은 번호가 낮은 것부터 우선 적용된다

 

-.stateless이다

 

 

 

stateless 란?

 

트래픽에 대한 상태를 저장하지 않는다는 의미로 요청과 응답은 트래픽의 상태와 상관없이 inbound와 outbound 규칙을 따른다.

 

허용되는 inbound 트래픽에 대한 응답은 inbound 규칙과 상관 없이 outbound 규칙을 따르게 된다는 것이다.

 

 

 

Security Group

 

인스턴스에 대한 inbound,outbound 트래픽을 제어하는 방화벽 역할을 합니다.

 

Network ACL 과 Security Group의 차이는 ACL은 Network 방화벽, Security Group은 인스턴스 방화벽 이라고 생각하시면 됩니다.

 

 

 

Amazone VPC Security Group 특징

 

-.Instance 단위로 적용이 가능하다

 

-.기본적으로 inbound 트래픽의 경우 All Deny이다.

 

-.기본적으로 outbound 트래픽의 경우 All Allow이다.

 

 

 

 

 

Nat Gateway

 

NAT(Network Address Translation)의 약자로, private subnet에 속해 있는 instance가 하나의 공인IP(EIP)주소를 사용하여 인터넷에 접속하는 기능입니다

 

Private subnet에 위치한 instance가 접근 불가 조건은 유지하면서 instance에서 인터넷으로 연결이 필요한 경우 사용 예시가 되겠습니다.

 

 

 

 

 

실습 목표

 

-.Web,DB instance에 대해 Network ACL,Security Group을 활용하여 보안 구성

 

-.Nat Gateway를 추가하여 private instance 외부 인터넷 접속

 

 

 

 

-.네트워크 ACL 설정

 

 

 

1.VPC 대시보드에서 네트워크 ACL 매뉴 클릭
 

 

 

 

2.네트워크 ACL 생성합니다.

 

 

 

 

3.네트워크 ACL 편집을 클릭합니다.

 

 

4.구성에 맞는 정책을 설정합니다.

 

 

 

10.10.1.0/24 Public Subnet ACL

 

-.ssh 원격포트는 콘솔에 접근 할 IP만 열어줍니다.

 

-.http,https 사용자 IP는 Any로 열어줍니다.

 

-.클라이언트로부터의 인바운드 반환 트래픽

 

 

10.10.2.0/24 Private Subnet ACL

 

-.ssh 원격포트는 콘솔에 접근 할 IP만 열어줍니다.

 

-.포트는 DB 연결 할 IP만 열어줍니다.

 

 

 

 

5.생성한 ACL Subnet 연결

 

-.Web

 

 

-.DB

 

 

-.Security Group 설정  

 

1.EC2 대쉬보드에서 '보안 그룹' 에서 '보안 그룹 생성' 클릭

 

 

 

 

2.정책을 설정해 줍니다.

 

정책의 내용은 ACL 설정 때와 같습니다.

 

기본적으로 Security group은 정책 외에는 ALL Drop 이기 때문에 설정 하지 않은 규칙에 대해서는 Deny됩니다.

 

-Web_SG

 

 

 

 

-.DB_SG

 

 

 

 

3.인스턴스 Security Group 변경

 

EC2 대쉬보드에서 '인스턴스' 매뉴에서 아래와 같이 작업

 

 

 

 

 

 

-.Web Instance에 대해서 Web_SG를 할당합니다.

 

 

 

 

DB인스턴스도 방법은 동일합니다.

 

 

 

-.NAT Gateway 설정

 

 

 

1.NAT Gateway 생성 하기

 

 

 

 

2.NAT Gateway 기본 설정

 

-.Public subnet 10.10.1.0/16 선택

 

-.새로운 공인 IP 생성(기존에 EIP가 있다면 선택)

 

 

 

 

3.NAT Gateway 확인

 

상태 : '대기중' -> '사용 가능' 시간이 다소 걸립니다

 

 

 

 

 

 

4.Private Subnet에 대해서 NAT Gateway 라우팅 추가

 

 

 

 

#####확인 테스트 ######

 

[root@ip-10-10-2-94 ~]# ping 8.8.8.8

 

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

 

64 bytes from 8.8.8.8: icmp_seq=1 ttl=112 time=31.3 ms

 

64 bytes from 8.8.8.8: icmp_seq=2 ttl=112 time=31.0 ms

 

64 bytes from 8.8.8.8: icmp_seq=3 ttl=112 time=31.0 ms

 

 

 

 

 

Amazone VPC의 기본 기능으로 상당히 보안에 강화된 시스템을 구성 해보았습니다. Amazon VPC를 사용하면 간단한 설정만으로 물리적인 환경에서는 매우 까다로운 보안 네트워크 구성을 손쉽게 구현할 수 있도록 되어 있습니다.