Amazon VPC의 인프라 보안 - Amazon Virtual Private Cloud

Amazon VPC의 인프라 보안

관리형 서비스인 Amazon Virtual Private Cloud는 AWS 글로벌 네트워크 보안으로 보호됩니다. AWS 보안 서비스와 AWS의 인프라 보호 방법에 대한 자세한 내용은 AWS 클라우드 보안을 참조하세요. 인프라 보안에 대한 모범 사례를 사용하여 AWS 환경을 설계하려면 보안 원칙 AWS Well‐Architected 프레임워크인프라 보호를 참조하세요.

AWS에서 게시한 API 호출을 사용하여 네트워크를 통해 Amazon VPC에 액세스합니다. 고객은 다음을 지원해야 합니다.

  • 전송 계층 보안(TLS) TLS 1.2는 필수이며 TLS 1.3을 권장합니다.

  • DHE(Ephemeral Diffie-Hellman) 또는 ECDHE(Elliptic Curve Ephemeral Diffie-Hellman)와 같은 완전 전송 보안(PFS)이 포함된 암호 제품군 Java 7 이상의 최신 시스템은 대부분 이러한 모드를 지원합니다.

또한 요청은 액세스 키 ID 및 IAM 주체와 관련된 비밀 액세스 키를 사용하여 서명해야 합니다. 또는 AWS Security Token Service(AWS STS)을 사용하여 임시 보안 자격 증명을 생성하여 요청에 서명할 수 있습니다.

네트워크 격리

Virtual Private Cloud(VPC)는 AWS 클라우드에서 논리적으로 격리된 고유한 영역의 가상 네트워크입니다. 별도의 VPC를 사용하여 워크로드별 또는 조직체별로 인프라를 격리합니다.

서브넷은 VPC의 IP 주소 범위입니다. 인스턴스를 시작할 때 VPC의 서브넷에서 인스턴스를 시작합니다. 서브넷을 사용하여 단일 VPC 내의 애플리케이션 티어(예: 웹, 애플리케이션 및 데이터베이스)를 격리합니다. 인터넷에서 직접 액세스하면 안 되는 경우 프라이빗 서브넷을 인스턴스에 사용합니다.

AWS PrivateLink를 사용하여 VPC의 리소스에서 프라이빗 IP 주소를 사용하여 AWS 서비스에 연결하고 서비스를 VPC 직접 호스팅된 것처럼 이용하도록 할 수 있습니다. 따라서 AWS 서비스에 액세스하기 위해 인터넷 게이트웨이나 NAT 장치를 사용할 필요가 없습니다.

네트워크 트래픽 제어

EC2 인스턴스와 같은 VPC의 네트워크 트래픽을 제어하기 위해 다음 옵션을 고려해 보세요.

  • 보안 그룹을 VPC에 대한 네트워크 액세스를 제어하는 기본 메커니즘으로 활용합니다. 필요한 경우 네트워크 ACL을 사용하여 상태 비저장의 거친 네트워크 제어를 제공합니다. 보안 그룹은 상태 저장 패킷 필터링을 수행하고 다른 보안 그룹을 참조하는 규칙을 만들 수 있기 때문에 네트워크 ACL보다 다재다능합니다. 네트워크 ACL은 보조 제어 장치(예: 트래픽의 특정 하위 집합 거부) 또는 상위 수준의 서브넷 가드레일로 효과를 발휘할 수 있습니다. 또한 네트워크 ACL은 전체 서브넷에 적용되므로 인스턴스가 올바른 보안 그룹 없이 시작될 경우 이를 심층 방어 기능으로 사용할 수 있습니다.

  • 인터넷에서 직접 액세스하면 안 되는 경우 프라이빗 서브넷을 인스턴스에 사용합니다. 프라이빗 서브넷에 있는 인스턴스에서 인터넷에 엑세스하려면 Bastion Host 또는 NAT 게이트웨이를 사용합니다.

  • 연결 요구 사항을 지원하기 위해 최소 네트워크 경로로 서브넷 라우팅 테이블을 구성합니다.

  • 보안 그룹 또는 네트워크 인터페이스를 추가로 사용하여 일반 애플리케이션 트래픽과 별도로 Amazon EC2 인스턴스 관리 트래픽을 제어하고 감사하는 방법을 고려해 보십시오. 따라서 변경 제어를 위한 특별한 IAM 정책을 고객이 구현할 수 있으므로 보안 그룹 규칙 또는 자동화된 규칙 확인 스크립트의 변경 사항을 감사하기가 쉬워집니다. 또한 네트워크 인터페이스가 여럿이면 호스트 기반 라우팅 정책을 생성하거나 서브넷에 할당된 네트워크 인터페이스에 따라 다양한 VPC 서브넷 라우팅 규칙을 활용하는 기능 등 네트워크 트래픽 제어의 옵션이 늘어납니다.

  • AWS Virtual Private Network 또는 AWS Direct Connect를 사용하여 원격 네트워크에서 VPC로 프라이빗 연결을 설정합니다. 자세한 내용은 네트워크-Amazon VPC 연결 옵션을 참조하세요.

  • VPC 흐름 로그를 사용하여 인스턴스에 도달하는 트래픽을 모니터링합니다.

  • AWS Security Hub를 사용하여 인스턴스에서 의도하지 않게 네트워크에 액세스할 수 있는지 확인합니다.

  • AWS Network Firewall을 사용하여 VPC의 서브넷을 일반적인 네트워크 위협으로부터 보호합니다.

보안 그룹 및 네트워크 ACL 비교

다음 표는 보안 그룹과 네트워크 ACL의 근본적인 차이를 요약한 것입니다.

보안 그룹 네트워크 ACL
인스턴스 레벨에서 운영됩니다. 서브넷 레벨에서 운영됩니다.
인스턴스와 연결된 경우에만 인스턴스에 적용됨 연결된 서브넷에서 배포된 모든 인스턴스에 적용됨(보안 그룹 규칙이 지나치게 허용적일 경우 추가 보안 계층 제공)
허용 규칙만 지원 허용 및 거부 규칙 지원
트래픽 허용 여부를 결정하기 전에 모든 규칙을 평가 트래픽 허용 여부를 결정할 때 가장 낮은 번호의 규칙부터 순서대로 규칙을 평가합니다.
상태 저장: 규칙에 관계없이 반환 트래픽이 허용됨 상태 비저장: 반환 트래픽이 규칙에 따라 명시적으로 허용되어야 함

다음 다이어그램은 보안 그룹과 네트워크 ACL에서 제공하는 보안 계층을 보여 줍니다. 예를 들어, 인터넷 게이트웨이의 트래픽은 라우팅 테이블의 라우팅을 사용하여 적절한 서브넷에 라우팅됩니다. 서브넷과 연결된 네트워크 ACL 규칙은 서브넷에 허용되는 트래픽 유형을 제어합니다. 인스턴스와 연결된 보안 그룹 규칙은 인스턴스에 허용되는 트래픽 유형을 제어합니다.


                트래픽은 보안 그룹과 네트워크 ACL을 통해 제어됨

보안 그룹만 사용하여 인스턴스를 보호할 수 있습니다. 그러나 네트워크 ACL을 추가 방어 계층으로 추가할 수 있습니다. 자세한 내용은 예: 서브넷의 인스턴스에 대한 액세스 제어 단원을 참조하십시오.