메뉴
Amazon Relational Database Service
사용 설명서 (API Version 2014-10-31)

DB 보안 그룹 작업(EC2-Classic 플랫폼)

기본적으로 DB 인스턴스에 대한 네트워크 액세스는 해제되어 있습니다. IP 주소 범위, 포트 또는 EC2 보안 그룹에서 액세스를 허용하는 보안 그룹의 규칙을 지정할 수 있습니다. 수신 규칙이 설정되면 동일한 규칙이 해당 보안 그룹과 연결된 모든 DB 인스턴스에 적용됩니다. 보안 그룹에서 최대 20개의 규칙을 지정할 수 있습니다.

Amazon Relational Database Service는 서로 다른 두 가지 유형의 보안 그룹을 지원합니다. 사용하는 보안 그룹은 Amazon RDS 플랫폼에 따라 결정됩니다.

  • VPC 보안 그룹 - EC2-VPC 플랫폼일 때

  • DB 보안 그룹 - EC2-Classic 플랫폼일 때

다음 중 하나의 경우에 해당된다면 EC2-VPC 플랫폼일 가능성이 높기 때문에 VPC 보안 그룹을 사용해야 합니다.

  • 신규 Amazon RDS 고객인 경우

  • 이전에 DB 인스턴스를 한 번도 생성하지 않은 경우

  • 이전에 사용하지 않았던 리전에 DB 인스턴스를 생성하는 경우

그 외에 EC2-Classic 플랫폼인 경우에는 DB 보안 그룹을 사용하여 Amazon RDS DB 인스턴스에 대한 액세스를 관리해야 합니다.

참고

플랫폼 결정에 대한 자세한 내용은 EC2-VPC 또는 EC2-Classic 플랫폼을 사용 중인지 확인 단원을 참조하십시오.

EC2-VPC 플랫폼일 때는 DB 보안 그룹이 아닌 VPC 보안 그룹을 사용해야 합니다.

DB 보안 그룹 생성

DB 보안 그룹을 생성하려면 이름과 설명을 제공해야 합니다.

AWS Management Console

DB 보안 그룹을 생성하려면

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 창의 왼쪽에 있는 탐색 창에서 Security Groups를 클릭합니다.

  3. Create DB Security Group을 클릭합니다.

  4. NameDescription 텍스트 상자에 새 DB 보안 그룹의 이름과 설명을 입력합니다. 보안 그룹 이름은 공백을 포함할 수 없으며 숫자로 시작할 수 없습니다.

  5. Yes, Create를 클릭합니다. DB 보안 그룹이 생성됩니다. 새로 만든 DB 보안 그룹은 기본적으로 DB 인스턴스에 대한 액세스를 제공하지 않습니다. IP 주소 범위나 DB 인스턴스에 액세스할 수 있는 Amazon EC2 보안 그룹을 지정해야 합니다. DB 보안 그룹에 대한 Amazon EC2 보안 그룹이나 IP 주소를 지정하려면 특정 IP 범위에서 DB 보안 그룹에 대한 네트워크 액세스 승인 단원을 참조하십시오.

CLI

DB 보안 그룹을 만들려면 AWS CLI 명령인 create-db-security-group을 사용하십시오.

Linux, OS X, Unix의 경우:

Copy
aws rds create-db-security-group \ --db-security-group-name mydbsecuritygroup \ --db-security-group-description "My new security group"

Windows의 경우:

Copy
aws rds create-db-security-group ^ --db-security-group-name mydbsecuritygroup ^ --db-security-group-description "My new security group"

새로 만든 DB 보안 그룹은 기본적으로 DB 인스턴스에 대한 액세스를 제공하지 않습니다. IP 주소 범위나 DB 인스턴스에 액세스할 수 있는 Amazon EC2 보안 그룹을 지정해야 합니다. DB 보안 그룹에 대한 Amazon EC2 보안 그룹이나 IP 주소를 지정하려면 특정 IP 범위에서 DB 보안 그룹에 대한 네트워크 액세스 승인 단원을 참조하십시오.

API

DB 보안 그룹을 만들려면 Amazon RDS 함수인 CreateDBSecurityGroup을 다음 파라미터와 함께 호출합니다.

  • DBSecurityGroupName = mydbsecuritygroup

  • Description = "My new security group"

Copy
https://rds.amazonaws.com/ ?Action=CreateDBSecurityGroup &DBSecurityGroupName=mydbsecuritygroup &Description=My%20new%20db%20security%20group &Version=2012-01-15 &SignatureVersion=2 &SignatureMethod=HmacSHA256 &Timestamp=2012-01-20T22%3A06%3A23.624Z &AWSAccessKeyId=<AWS Access Key ID> &Signature=<Signature>

새로 만든 DB 보안 그룹은 기본적으로 DB 인스턴스에 대한 액세스를 제공하지 않습니다. IP 주소 범위나 DB 인스턴스에 액세스할 수 있는 Amazon EC2 보안 그룹을 지정해야 합니다. DB 보안 그룹에 대한 Amazon EC2 보안 그룹이나 IP 주소를 지정하려면 특정 IP 범위에서 DB 보안 그룹에 대한 네트워크 액세스 승인 단원을 참조하십시오.

사용 가능한 DB 보안 그룹 나열

AWS 계정에 대해 생성된 DB 보안 그룹을 나열할 수 있습니다.

AWS Management Console

AWS 계정에 사용할 수 있는 모든 DB 보안 그룹을 나열하려면

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 창의 왼쪽에 있는 탐색 창에서 Security Groups를 클릭합니다.

    사용 가능한 DB 보안 그룹이 [DB Security Groups] 목록에 나타납니다.

CLI

AWS 계정에 사용할 수 있는 DB 보안 그룹을 모두 조회하려면 AWS CLI 명령인 describe-db-security-groups를 파라미터 없이 사용하십시오.

Copy
aws rds describe-db-security-groups

API

AWS 계정에 사용할 수 있는 모든 DB 보안 그룹을 나열하려면 DescribeDBSecurityGroups를 파라미터 없이 호출합니다.

Copy
https://rds.amazonaws.com/ ?Action=DescribeDBSecurityGroups &MaxRecords=100 &Version=2009-10-16 &SignatureVersion=2 &SignatureMethod=HmacSHA256 &AWSAccessKeyId=<AWS Access Key ID> &Signature=<Signature>

DB 보안 그룹 보기

DB 보안 그룹에 대한 자세한 정보를 보고 승인되지 않은 IP 범위를 확인할 수 있습니다.

AWS Management Console

특정 DB 보안 그룹의 속성을 보려면

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 창의 왼쪽에 있는 탐색 창에서 Security Groups를 클릭합니다.

  3. 보려는 DB 보안 그룹에 대한 세부 정보 아이콘을 선택합니다. DB 보안 그룹에 대한 세부 정보가 표시됩니다.

CLI

특정 DB 보안 그룹의 속성을 보려면 AWS CLI describe-db-security-groups를 사용하십시오. 보려는 DB 보안 그룹을 지정합니다.

Linux, OS X, Unix의 경우:

Copy
aws rds describe-db-security-groups \ --db-security-group-name mydbsecuritygroup

Windows의 경우:

Copy
aws rds describe-db-security-groups ^ --db-security-group-name mydbsecuritygroup

API

특정 DB 보안 그룹의 속성을 보려면 DescribeDBSecurityGroups를 다음 파라미터와 함께 호출합니다.

  • DBSecurityGroupName=mydbsecuritygroup

Copy
https://rds.amazonaws.com/ ?Action=DescribeDBSecurityGroups &DBSecurityGroupName=mydbsecuritygroup &Version=2009-10-16 &SignatureVersion=2 &SignatureMethod=HmacSHA256 &Timestamp=2009-10-16T22%3A23%3A07.107Z &AWSAccessKeyId=<AWS Access Key ID> &Signature=<Signature>

특정 IP 범위에서 DB 보안 그룹에 대한 네트워크 액세스 승인

기본적으로 DB 인스턴스에 대한 네트워크 액세스는 해제되어 있습니다. VPC 내부에 없는 DB 인스턴스에 액세스해야 하는 경우 특정 EC2 보안 그룹이나 CIDR IP 범위에서 액세스할 수 있게 DB 보안 그룹에 대한 액세스 규칙을 설정해야 합니다. 그런 다음 DB 인스턴스를 해당 DB 보안 그룹과 연결해야 합니다. 이 프로세스를 수신이라고 합니다. DB 보안 그룹에 대해 수신이 구성되면 동일한 수신 규칙이 해당 DB 보안 그룹과 연결된 모든 DB 인스턴스에 적용됩니다.

주의

방화벽 뒤의 DB 인스턴스에 연결하려는 경우 네트워크 관리자와 논의하여 사용해야 하는 IP 주소를 확인합니다.

다음 예에서는 CIDR IP 범위에 대한 수신 규칙으로 DB 보안 그룹을 구성합니다.

AWS Management Console

CIDR IP 범위에 대한 수신 규칙으로 DB 보안 그룹을 구성하려면

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 콘솔 창 왼쪽의 탐색 창에서 [Security Groups]를 선택합니다.

  3. 승인하려는 DB 보안 그룹에 대한 세부 정보 아이콘을 선택합니다.

  4. 보안 그룹에 대한 세부 정보 페이지의 [Connection Type] 드롭다운 목록에서 [CIDR/IP]를 선택하고, 이 DB 보안 그룹에 추가하려는 수신 규칙에 대한 CIDR 범위를 [CIDR] 텍스트 상자에 입력한 후 [Authorize]를 클릭합니다.

    작은 정보

    AWS Management Console에 CIDR 텍스트 필드 아래의 연결을 바탕으로 CIDR IP가 표시됩니다. 방화벽 뒤에서 DB 인스턴스에 액세스하지 않을 경우 이 CIDR IP를 사용하게 될 수 있습니다.

  5. 수신 규칙의 상태는 사용자가 수정한 DB 보안 그룹과 연결된 모든 DB 인스턴스에 새 수신 규칙이 적용될 때까지 authorizing이 됩니다. 수신 규칙을 성공적으로 적용한 후에는 상태가 authorized로 변경됩니다.

CLI

CIDR IP 범위에 대한 수신 규칙으로 DB 보안 그룹을 구성하려면 AWS CLI 명령인 authorize-db-security-group-ingress를 사용하십시오.

Linux, OS X, Unix의 경우:

Copy
aws rds authorize-db-security-group-ingress \ --db-security-group-name mydbsecuritygroup \ --cidrip 192.168.1.10/27

Windows의 경우:

Copy
aws rds authorize-db-security-group-ingress ^ --db-security-group-name mydbsecuritygroup ^ --cidrip 192.168.1.10/27

다음과 비슷한 출력이 생성되어야 합니다.

Copy
SECGROUP mydbsecuritygroup My new DBSecurityGroup IP-RANGE 192.168.1.10/27 authorizing

API

CIDR IP 범위에 대한 수신 규칙으로 DB 보안 그룹을 구성하려면 Amazon RDS API AuthorizeDBSecurityGroupIngress를 다음 파라미터와 함께 호출합니다.

  • DBSecurityGroupName = mydbsecuritygroup

  • CIDRIP = 192.168.1.10/27

Copy
https://rds.amazonaws.com/ ?Action=AuthorizeDBSecurityGroupIngress &CIDRIP=192.168.1.10%2F27 &DBSecurityGroupName=mydbsecuritygroup &Version=2009-10-16 &Action=AuthorizeDBSecurityGroupIngress &SignatureVersion=2 &SignatureMethod=HmacSHA256 &Timestamp=2009-10-22T17%3A10%3A50.274Z &AWSAccessKeyId=<AWS Access Key ID> &Signature=<Signature>

Amazon EC2 인스턴스에서 DB 인스턴스에 대한 네트워크 액세스 승인

Amazon EC2 인스턴스에서 DB 인스턴스에 액세스하려는 경우 먼저 EC2 인스턴스와 DB 인스턴스가 VPC에 있는지 확인해야 합니다. 기본 VPC를 사용하는 경우 EC2 인스턴스에서 액세스할 DB 인스턴스를 생성하고 수정할 때 EC2 인스턴스에 사용한 동일한 EC2 및 VPC 보안 그룹을 배정할 수 있습니다.

DB 인스턴스와 EC2 인스턴스가 VPC에 없는 경우 Amazon EC2 인스턴스의 트래픽을 허용하는 수신 규칙으로 DB 인스턴스의 보안 그룹을 구성해야 합니다. DB 인스턴스에 대한 DB 보안 그룹에 EC2 인스턴스에 대한 Amazon EC2 보안 그룹을 추가하면 됩니다. 이 예에서는 DB 보안 그룹에 Amazon EC2 보안 그룹에 대한 수신 규칙을 추가합니다.

중요

  • DB 보안 그룹에 Amazon EC2 보안 그룹에 대한 수신 규칙을 추가하면 해당 Amazon EC2 보안 그룹과 연결된 Amazon EC2 인스턴스만 DB 인스턴스에 액세스할 수 있습니다.

  • 사용 중인 DB 인스턴스와 다른 AWS 리전에 있는 Amazon EC2 보안 그룹은 승인할 수 없습니다. IP 범위를 승인하거나, 다른 리전의 IP 주소를 참조하는 같은 리전의 Amazon EC2 보안 그룹을 지정할 수 있습니다. IP 범위를 지정할 경우 Amazon EC2 인스턴스의 프라이빗 IP 주소를 사용하는 것이 좋습니다. 그러면 Amazon EC2 인스턴스에서 Amazon RDS DB 인스턴스로 더 직접적인 네트워크 라우팅이 제공되며 Amazon 네트워크 외부로 전송되는 데이터에 대한 네트워크 요금이 발생하지 않습니다.

AWS Management Console

DB 보안 그룹에 EC2 보안 그룹에 추가하려면

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 콘솔 창 왼쪽의 탐색 창에서 [Security Groups]를 선택합니다.

  3. 액세스를 허용하려는 DB 보안 그룹에 대한 세부 정보 아이콘을 선택합니다.

  4. 보안 그룹에 대한 세부 정보 페이지의 [Connection Type] 드롭다운 목록에서 [EC2 Security Group]을 선택하고, 사용하려는 Amazon EC2 보안 그룹을 선택합니다. 그런 다음 [Authorize]를 클릭합니다.

  5. 수신 규칙의 상태는 사용자가 수정한 DB 보안 그룹과 연결된 모든 DB 인스턴스에 새 수신 규칙이 적용될 때까지 authorizing이 됩니다. 수신 규칙을 성공적으로 적용한 후에는 상태가 authorized로 변경됩니다.

CLI

Amazon EC2 보안 그룹에 대한 액세스 권한을 부여하려면 AWS CLI 명령인 authorize-db-security-group-ingress를 사용하십시오.

Linux, OS X, Unix의 경우:

Copy
aws rds authorize-db-security-group-ingress \ --db-security-group-name default \ --ec2-security-group-name myec2group \ --ec2-security-group-owner-id 987654321021

Windows의 경우:

Copy
aws rds authorize-db-security-group-ingress ^ --db-security-group-name default ^ --ec2-security-group-name myec2group ^ --ec2-security-group-owner-id 987654321021

다음과 비슷한 출력이 생성되어야 합니다.

Copy
SECGROUP Name Description SECGROUP default default EC2-SECGROUP myec2group 987654321021 authorizing

API

Amazon EC2 보안 그룹에 대한 네트워크 액세스를 승인하려면 해당 Amazon RDS API 함수인 http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_AuthorizeDBSecurityGroupIngress.htmlAuthorizeDBSecurityGroupIngress를 다음 파라미터와 함께 호출합니다.

  • EC2Security­GroupName = myec2group

  • EC2SecurityGroupOwnerId = 987654321021

Copy
https://rds.amazonaws.com/ ?Action=AuthorizeDBSecurityGroupIngress &EC2SecurityGroupOwnerId=987654321021 &EC2Security­GroupName=myec2group &Version=2009-10-16 &SignatureVersion=2 &SignatureMethod=HmacSHA256 &Timestamp=2009-10-22T17%3A10%3A50.274Z &AWSAccessKeyId=<AWS Access Key ID> &Signature=<Signature>

IP 범위에서 DB 인스턴스에 대한 네트워크 액세스 취소

연결된 CIDR IP 수신 규칙을 취소하여 CIDR IP 범위에서 DB 보안 그룹에 속하는 DB 인스턴스에 대한 네트워크 액세스를 쉽게 취소할 수 있습니다.

이 예에서는 DB 보안 그룹에서 CIDR IP에 대한 수신 규칙을 취소합니다.

AWS Management Console

DB 보안 그룹에서 CIDR IP 범위에 대한 수신 규칙을 취소하는 방법

  1. https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 콘솔 창 왼쪽의 탐색 창에서 [Security Groups]를 선택합니다.

  3. 취소하려는 수신 규칙이 있는 DB 보안 그룹에 대한 세부 정보 아이콘을 선택합니다.

  4. 보안 그룹에 대한 세부 정보 페이지에서 취소하려는 수신 규칙 옆의 [Remove]를 클릭합니다.

  5. 수정한 DB 보안 그룹과 연결된 모든 DB 인스턴스에서 수신 규칙이 제거될 때까지 수신 규칙의 상태는 [revoking]입니다. 수신 규칙 제거에 성공하면 DB 보안 그룹에서도 해당 수신 규칙이 제거됩니다.

CLI

DB 보안 그룹에서 CIDR IP 범위에 대한 수신 규칙을 취소하려면 AWS CLI 명령인 revoke-db-security-group-ingress를 사용합니다.

Linux, OS X, Unix의 경우:

Copy
aws rds revoke-db-security-group-ingress \ --db-security-group-name mydbsecuritygroup \ --cidrip 192.168.1.1/27

Windows의 경우:

Copy
aws rds revoke-db-security-group-ingress ^ --db-security-group-name mydbsecuritygroup ^ --cidrip 192.168.1.1/27

다음과 비슷한 출력이 생성되어야 합니다.

Copy
SECGROUP mydbsecuritygroup My new DBSecurityGroup IP-RANGE 192.168.1.1/27 revoking

API

DB 보안 그룹에서 CIDR IP 범위에 대한 수신 규칙을 취소하려면 Amazon RDS API 함수인 http://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RevokeDBSecurityGroupIngress.htmlRevokeDBSecurityGroupIngress를 다음 파라미터와 함께 호출합니다.

  • DBSecurityGroupName = mydbsecuritygroup

  • CIDRIP = 192.168.1.10/27

Copy
https://rds.amazonaws.com/ ?Action=RevokeDBSecurityGroupIngress &DBSecurityGroupName=mydbsecuritygroup &CIDRIP=192.168.1.10%2F27 &Version=2009-10-16 &SignatureVersion=2&SignatureMethod=HmacSHA256 &Timestamp=2009-10-22T22%3A32%3A12.515Z &AWSAccessKeyId=<AWS Access Key ID> &Signature=<Signature>

관련 주제