다양한 사용 사례에 대한 보안 그룹 규칙 - Amazon Elastic Compute Cloud

다양한 사용 사례에 대한 보안 그룹 규칙

보안 그룹을 생성하고 보안 그룹과 연결된 인스턴스의 역할을 반영하는 규칙을 추가합니다. 예를 들어 웹 서버로 구성된 인스턴스에는 인바운드 HTTP 및 HTTPS 액세스를 허용하는 보안 그룹 규칙이 필요합니다. 마찬가지로 데이터베이스 인스턴스에는 데이터베이스 유형에 대한 액세스(예: MySQL의 경우 포트 3306을 통한 액세스)를 허용하는 규칙이 필요합니다.

다음은 특정한 종류의 액세스에 대해 보안 그룹에 추가할 수 있는 규칙의 종류를 예로 든 것입니다.

웹 서버 규칙

다음 인바운드 규칙에서는 임의의 IP 주소로부터 HTTP 및 HTTPS 액세스를 허용합니다. VPC가 IPv6용으로 활성화되면 IPv6 주소에서 인바운드 HTTP 및 HTTPS 트래픽을 제어하기 위한 규칙을 추가할 수 있습니다.

프로토콜 유형 프로토콜 번호 포트 소스 IP 참고
TCP 6 80(HTTP) 0.0.0.0/0 임의의 IPv4 주소에서 인바운드 HTTP 액세스를 허용함
TCP 6 443(HTTPS) 0.0.0.0/0 임의의 IPv4 주소에서 인바운드 HTTPS 액세스를 허용함
TCP 6 80(HTTP) ::/0 임의의 IPv6 주소에서 인바운드 HTTP 액세스를 허용함
TCP 6 443(HTTPS) ::/0 임의의 IPv6 주소에서 인바운드 HTTPS 액세스를 허용함

데이터베이스 서버 규칙

다음의 인바운드 규칙은 인스턴스에서 실행 중인 데이터베이스의 유형에 따라 데이터베이스 액세스를 위해 추가할 수 있는 규칙을 예로 든 것입니다. Amazon RDS DB 인스턴스에 대한 자세한 내용은 Amazon RDS 사용 설명서를 참조하세요.

원본 IP의 경우 다음 중 하나를 지정합니다.

  • 로컬 네트워크의 특정 IP 주소 또는 IP 주소 범위(CIDR 블록 표기법)

  • 데이터베이스에 액세스하는 인스턴스 그룹의 보안 그룹 ID

프로토콜 유형 프로토콜 번호 포트 참고
TCP 6 1433(MS SQL) Microsoft SQL Server 데이터베이스 액세스를 위한 기본 포트(예: Amazon RDS 인스턴스에서)
TCP 6 3306(MYSQL/Aurora) MySQL 또는 Aurora 데이터베이스 액세스를 위한 기본 포트(예: Amazon RDS 인스턴스에서)
TCP 6 5439(Redshift) Amazon Redshift 클러스터 데이터베이스 액세스를 위한 기본 포트.
TCP 6 5432(PostgreSQL) PostgreSQL 데이터베이스 액세스를 위한 기본 포트(예: Amazon RDS 인스턴스에서)
TCP 6 1521(Oracle) Oracle 데이터베이스 액세스를 위한 기본 포트(예: Amazon RDS 인스턴스에서)

선택적으로 데이터베이스 서버의 아웃바운드 트래픽을 제한할 수 있습니다. 예를 들어 소프트웨어 업데이트를 위해 인터넷 액세스를 허용하지만 다른 모든 종류의 트래픽은 제한할 수 있습니다. 먼저 모든 아웃바운드 트래픽을 허용하는 기본 아웃바운드 규칙을 제거해야 합니다.

프로토콜 유형 프로토콜 번호 포트 목적지 IP 참고
TCP 6 80(HTTP) 0.0.0.0/0 임의의 IPv4 주소에 대한 아웃바운드 HTTP 액세스를 허용함
TCP 6 443(HTTPS) 0.0.0.0/0 임의의 IPv4 주소에 대한 아웃바운드 HTTPS 액세스를 허용함
TCP 6 80(HTTP) ::/0 (IPv6 사용 VPC만 해당) 임의의 IPv6 주소에 대한 아웃바운드 HTTP 액세스를 허용함
TCP 6 443(HTTPS) ::/0 (IPv6 사용 VPC만 해당) 임의의 IPv6 주소에 대한 아웃바운드 HTTPS 액세스를 허용함

컴퓨터에서 인스턴스 연결에 대한 규칙

인스턴스에 연결하려면 보안 그룹에 SSH 액세스(Linux 인스턴스) 또는 RDP 액세스(Windows 인스턴스)를 허용하는 인바운드 규칙이 있어야 합니다.

프로토콜 유형 프로토콜 번호 포트 소스 IP
TCP 6 22(SSH) 컴퓨터의 퍼블릭 IPv4 주소 또는 로컬 네트워크의 IP 주소 범위. IPv6를 위해 VPC가 활성화되어 있고 인스턴스에 IPv6 주소가 있는 경우 IPv6 주소 또는 범위를 입력할 수 있습니다.
TCP 6 3389(RDP) 컴퓨터의 퍼블릭 IPv4 주소 또는 로컬 네트워크의 IP 주소 범위. IPv6를 위해 VPC가 활성화되어 있고 인스턴스에 IPv6 주소가 있는 경우 IPv6 주소 또는 범위를 입력할 수 있습니다.

보안 그룹이 동일한 인스턴스에서 인스턴스에 대한 연결 규칙

같은 보안 그룹과 연결된 여러 인스턴스가 서로 통신할 수 있게 하려면 이에 대한 규칙을 명시적으로 추가해야 합니다.

참고

미들박스 어플라이언스를 통해 서로 다른 서브넷에 있는 두 인스턴스 간의 트래픽을 전달하도록 경로를 구성하는 경우 두 인스턴스에 대한 보안 그룹이 인스턴스 간에 트래픽이 흐르도록 허용해야 합니다. 각 인스턴스의 보안 그룹은 다른 인스턴스의 프라이빗 IP 주소 또는 다른 인스턴스가 포함된 서브넷의 CIDR 범위를 소스로 참조해야 합니다. 다른 인스턴스의 보안 그룹을 소스로 참조하면 인스턴스 간에 트래픽이 흐를 수 없습니다.

다음 표에서는 연결된 인스턴스가 서로 통신할 수 있도록 하기 위한 보안 그룹의 인바운드 규칙을 설명합니다. 이 규칙에서는 모든 유형의 트래픽을 허용합니다.

프로토콜 유형 프로토콜 번호 포트 소스 IP
-1(모두) -1(모두) -1(모두) 보안 그룹의 ID 또는 다른 인스턴스가 포함된 서브넷의 CIDR 범위(참고 사항 참조).

Ping/ICMP 규칙

ping 명령은 ICMP 트래픽의 한 유형입니다. 인스턴스를 ping하려면 다음과 같은 인바운드 ICMP 규칙 중 하나를 추가해야 합니다.

유형 프로토콜 소스
사용자 지정 ICMP - IPv4 에코 요청 컴퓨터의 퍼블릭 IPv4 주소, 특정 IPv4 주소 또는 위치와 관계없는 IPv4 또는 IPv6 주소입니다.
모든 ICMP - IPv4 IPv4 ICMP(1) 컴퓨터의 퍼블릭 IPv4 주소, 특정 IPv4 주소 또는 위치와 관계없는 IPv4 또는 IPv6 주소입니다.

ping6 명령을 사용하여 인스턴스에 대한 IPv6 주소를 ping하려면 다음 인바운드 ICMPv6 규칙을 추가해야 합니다.

유형 프로토콜 소스
모든 ICMP - IPv6 IPv6 ICMP(58) 컴퓨터의 IPv6 주소, 특정 IPv4 주소 또는 위치와 관계없는 IPv4 또는 IPv6 주소

DNS 서버 규칙

EC2 인스턴스를 DNS 서버로 설정한 경우 TCP 및 UDP 트래픽이 포트 53을 통해 DNS 서버에 연결할 수 있는지 확인해야 합니다.

원본 IP의 경우 다음 중 하나를 지정합니다.

  • 네트워크의 IP 주소 또는 IP 주소 범위(CIDR 블록 표기법)

  • 네트워크에서 DNS 서버로의 액세스를 필요로 하는 인스턴스 세트에 대한 보안 그룹의 ID

프로토콜 유형 프로토콜 번호 포트
TCP 6 53
UDP 17 53

Amazon EFS 규칙

Amazon EC2 인스턴스에서 Amazon EFS 파일 시스템을 사용하려면 Amazon EFS 마운트 대상과 연결되는 보안 그룹이 NFS 프로토콜을 통한 트래픽 전송을 허용해야 합니다.

프로토콜 유형 프로토콜 번호 포트 소스 IP 참고
TCP 6 2049(NFS) 보안 그룹의 ID 이 보안 그룹과 연결된 리소스(탑재 대상 포함)에서 인바운드 NFS 액세스를 허용합니다.

Amazon EFS 파일 시스템을 Amazon EC2 인스턴스에 마운트하려면 인스턴스에 연결해야 합니다. 따라서 인스턴스와 연결되는 보안 그룹은 로컬 컴퓨터 또는 로컬 네트워크의 인바운드 SSH 트래픽을 허용하는 규칙이 필요합니다.

프로토콜 유형 프로토콜 번호 포트 소스 IP 참고
TCP 6 22(SSH) 로컬 컴퓨터의 IP 주소 범위 또는 네트워크의 IP 주소 범위(CIDR 블록 표기법). 로컬 컴퓨터로부터의 인바운드 SSH 액세스를 허용합니다.

Elastic Load Balancing 규칙

로드 밸런서를 사용하고 있는 경우 로드 밸런서에 연결된 보안 그룹은 인스턴스 또는 대상과 통신을 허용하는 규칙을 보유해야 합니다. 자세한 내용은 Classic Load Balancer 사용 설명서Classic Load Balancer에 대한 보안 그룹 구성Application Load Balancer 사용 설명서Application Load Balancer에 대한 보안 그룹을 참조하십시오.

VPC 피어링 규칙

피어링된 VPC의 보안 그룹을 참조하도록 VPC 보안 그룹의 인바운드 또는 아웃바운드 규칙을 업데이트할 수 있습니다. 그렇게 하면 피어링된 VPC의 참조 보안 그룹과 연결된 인스턴스 간에 트래픽을 주고받을 수 있습니다. VPC 피어링을 위한 보안 그룹을 구성하는 방법에 대한 자세한 내용은 피어 VPC 그룹을 참조하도록 보안 그룹 업데이트를 참조하세요.