여러 EC2 보안 그룹-허용 또는 제한?


27

인스턴스에 여러 보안 그룹을 할당하면 어떻게됩니까? 보안 그룹 중 하나가 허용하면 트래픽이 허용된다는 의미에서 허용됩니까? 또는 모든 보안 그룹이 트래픽을 전달하도록 허용해야한다는 의미에서 제한적인가?

예를 들어 동일한 계정의 다른 인스턴스와 만 대화하는 인스턴스 클래스가 있다고 가정 해 보겠습니다. 또한 HTTP (포트 80)를 통한 트래픽 만 허용하는 인스턴스 클래스도 있습니다.

두 개의 보안 그룹을 생성하고 적용하여 HTTP를 통해서만 내부 인스턴스에 대한 액세스를 제한 할 수 있습니까?

  1. "내부"보안 그룹. 모든 전송 (TCP, UDP, ICMP)에 대해 모든 포트에서 해당 보안 그룹의 다른 구성원의 모든 트래픽 허용
  2. "http"보안 그룹을 작성하십시오. 모든 소스에서 TCP를 통해 포트 80으로 들어오는 모든 트래픽을 허용하십시오.

또는 소스가있는 포트 80의 트래픽을 허용하는 단일 보안 그룹을 만들어야합니까?

답변:


5

인스턴스에 여러 보안 그룹이있는 경우 다양한 그룹의 모든 규칙의 합계가 있습니다.

예를 들어 동일한 계정의 다른 인스턴스와 만 대화하는 인스턴스 클래스가 있다고 가정 해 보겠습니다. http (포트 80)를 통한 트래픽 만 허용하는 인스턴스 클래스도 있습니다.

이는 AWS Virtual Private Cloud에 완벽한 상황입니다. 내부 인스턴스를 프라이빗 서브넷에, 퍼블릭 인스턴스를 퍼블릭 서브넷에 넣습니다.


ceejayoz- "제한적"사건인가요? 두 보안 그룹 솔루션이 작동한다는 것을 의미합니까? VPC 솔루션에 대해 동의 함; 내 예는 여러 그룹이 어떻게 작동하는지 이해하는 것이 었습니다. 그런데 어디에서 답을 찾았습니까?
SFun28

내부 인스턴스에 대한 보안 그룹과 공개 인스턴스에 대한 보안 그룹이 필요합니다. 공개 인스턴스 80 : 0.0.0.0/0 그룹을 내부 인스턴스에 추가하면 공개 인터넷에서 사용할 수있게됩니다.
ceejayoz

1
명확하게 말하면 개별 보안 그룹 중 하나가 허용하면 트래픽이 유입된다고 말하는 것입니까? 합계를 생각할 때 OR 대신 AND를 생각하기 때문에 "모든 규칙의 합계"에 대한 귀하의 의견에 쫓겨납니다.
SFun28

2
예, 인스턴스에 적용된 그룹 중 하나라도 허용하면 허용됩니다. 그룹 규칙은 AND가 아니라 OR로 연결됩니다.
ceejayoz

7
왜 사람들은해야 할 일에 대한 아이디어를 삽입하는 대신 질문에 대답 할 수 없습니다. 그렇게하려면 최소한 먼저 질문에 올바르게 대답하십시오. Jeez
Bill Rosmus

28

허용

여기 AWS에 따르면 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html#security-group-rules

특정 포트에 대해 둘 이상의 규칙이있는 경우 가장 관대 한 규칙을 적용합니다. 예를 들어 IP 주소 203.0.113.1에서 TCP 포트 22 (SSH)에 액세스 할 수있는 규칙과 모든 사람의 TCP 포트 22에 액세스 할 수있는 다른 규칙이 있으면 모든 사람이 TCP 포트 22에 액세스 할 수 있습니다.


3

다음은 AWS 설명서 지원의 답변입니다. 그들은 문서를 업데이트하겠다고 말했다.

하나 이상의 보안 그룹 내에서 충돌하는 규칙과 유사한 문제를 해결하는 두 개의 토론 포럼 게시물을 찾았습니다.

https://forums.aws.amazon.com/thread.jspa?messageID=221768

https://forums.aws.amazon.com/thread.jspa?messageID=349244吼

인스턴스에 여러 보안 그룹이 적용되면 규칙이 집계되어 하나의 큰 규칙 집합이 만들어집니다. EC2에서 보안 그룹 규칙은 허용되는 것입니다. 즉, DENY 규칙을 추가 할 수 없습니다. 이것이 의미하는 것은 가장 관대 한 규칙이 항상 적용된다는 것입니다. 예를 들어 IP 주소 10.10.10.10에서 포트 22에 액세스 할 수있는 보안 그룹과 모든 사람의 포트 22에 액세스 할 수있는 다른 보안 그룹이 있으면 모든 사람이 인스턴스의 포트 22에 액세스 할 수 있습니다.


0

보안 그룹을 규칙의 소스 또는 대상으로 지정하면 규칙이 보안 그룹과 연관된 모든 인스턴스에 영향을줍니다. 들어오는 트래픽은 퍼블릭 IP 또는 탄력적 IP 주소가 아닌 소스 보안 그룹과 연결된 인스턴스의 프라이빗 IP 주소를 기반으로 허용됩니다. IP 주소에 대한 자세한 내용은 Amazon EC2 인스턴스 IP 주소 지정을 참조하십시오. 보안 그룹 규칙이 피어 VPC의 보안 그룹을 참조하고 참조 된 보안 그룹 또는 VPC 피어링 연결이 삭제되면 규칙이 오래된 것으로 표시됩니다. 자세한 내용은 Amazon VPC 피어링 안내서의 부실 보안 그룹 규칙 작업을 참조하십시오.

특정 포트에 대해 둘 이상의 규칙이있는 경우 가장 관대 한 규칙을 적용합니다. 예를 들어 IP 주소 203.0.113.1에서 TCP 포트 22 (SSH)에 액세스 할 수있는 규칙과 모든 사람의 TCP 포트 22에 액세스 할 수있는 다른 규칙이 있으면 모든 사람이 TCP 포트 22에 액세스 할 수 있습니다.

여러 보안 그룹을 인스턴스와 연결하면 각 보안 그룹의 규칙이 효과적으로 집계되어 하나의 규칙 집합이 만들어집니다. 이 규칙 집합을 사용하여 액세스 허용 여부를 결정합니다.

주의 인스턴스에 여러 보안 그룹을 할당 할 수 있으므로 인스턴스에는 수백 가지 규칙이 적용될 수 있습니다. 인스턴스에 액세스 할 때 문제가 발생할 수 있습니다. 따라서 최대한 규칙을 정리하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.