보안 그룹이 트래픽을 필터링하는 방법
각 리소스에 연결된 상태 저장 방화벽을 이해해 보세요.
보안 그룹이 트래픽을 필터링하는 방법은(는) CoddyKit의 무료 AWS Security Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AWS Security Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AWS Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
리소스 방화벽
보안 그룹(SG)은 EC2 인스턴스, RDS 데이터베이스 또는 로드 밸런서와 같은 리소스의 탄력적 네트워크 인터페이스(ENI)에 직접 연결되는 가상 방화벽입니다. 네트워크 경계가 아니라 리소스 수준에서 인바운드 및 아웃바운드 트래픽을 제어하므로, 같은 서브넷에 있는 두 인스턴스에도 서로 매우 다른 규칙을 적용할 수 있습니다.
허용 전용 규칙
보안 그룹에는 허용 규칙만 포함됩니다. 명시적인 거부 규칙을 작성할 방법은 없습니다. 허용 규칙과 일치하지 않는 트래픽은 단순히 삭제됩니다. 따라서 원하는 허용 항목을 추가하여 액세스를 구성하며, 암묵적인 기본 동작은 나머지 모든 트래픽을 차단하는 것입니다.
기본 동작
새로 생성한 보안 그룹은 인바운드 트래픽을 모두 거부하고 아웃바운드 트래픽을 모두 허용합니다. 인바운드 액세스는 포트별로 의도적으로 열어야 하며, 이그레스는 제한하지 않는 한 광범위하게 허용됩니다. 시험 문제에서는 아웃바운드가 기본적으로 허용된다는 점을 기억하는지가 핵심인 경우가 많습니다.
규칙의 구성
각 규칙은 프로토콜(TCP, UDP, ICMP), 포트 범위, 그리고 인바운드의 경우 소스 또는 아웃바운드의 경우 대상을 정의합니다. 소스에는 10.0.0.0/16과 같은 CIDR 블록이나 다른 보안 그룹 ID를 지정할 수 있으므로, 고정 IP 대신 그룹을 참조할 수 있습니다.
aws ec2 authorize-security-group-ingress \
--group-id sg-0abc123 \
--protocol tcp --port 443 \
--cidr 0.0.0.0/0다른 그룹 참조
소스를 다른 보안 그룹 ID로 설정하면 동적이고 ID를 기반으로 하는 액세스가 생성됩니다. 예를 들어 데이터베이스 SG는 애플리케이션 계층 SG에서만 포트 5432로의 액세스를 허용할 수 있습니다. 애플리케이션 서버가 늘어나거나 줄어들어도 참조된 그룹의 구성원이 액세스를 결정하므로 IP를 수정할 필요가 없습니다.
상태 추적
보안 그룹은 상태 저장 방식으로 동작합니다. 인바운드 요청을 허용하면 아웃바운드 규칙과 관계없이 응답이 자동으로 외부로 나가는 것이 허용되며, 그 반대도 마찬가지입니다. 연결이 추적되므로 이에 대응하는 반환 규칙을 작성할 필요가 없습니다. 이는 네트워크 ACL과 비교했을 때 가장 큰 동작상의 차이입니다.
리소스당 여러 그룹 사용
하나의 ENI에는 여러 보안 그룹을 동시에 연결할 수 있습니다. 여러 그룹의 규칙은 합집합으로 결합되므로, 연결된 그룹 중 하나라도 트래픽을 허용하면 해당 트래픽이 허용됩니다. 규칙의 순서나 우선순위는 없으므로, 한 그룹의 거부 규칙으로 다른 그룹을 덮어쓸 수 없습니다.
최소 권한 설계
각 계층에 필요한 정확한 포트만 열어 최소 권한을 적용하십시오. 웹 계층은 인터넷에서 들어오는 443을 허용하고, 애플리케이션 계층은 웹 SG에서 들어오는 8080만 허용하며, 데이터 계층은 애플리케이션 SG에서 들어오는 3306만 허용할 수 있습니다. 이렇게 계층별로 연결하면 침해 사고 후 공격자가 다른 계층으로 이동하는 것을 제한할 수 있습니다.
일반적인 실수
가장 위험한 잘못된 설정은 포트 22 또는 3389에서 0.0.0.0/0을 허용하는 것으로, SSH 또는 RDP를 전체 인터넷에 노출합니다. GuardDuty와 Security Hub가 이를 경고합니다. 인바운드 관리자 포트를 아예 열지 말고 대신 Session Manager를 사용하십시오. Session Manager는 SSM 과정에서 다룹니다.
로깅의 공백
보안 그룹 자체는 허용되거나 거부된 패킷을 기록하지 않습니다. 실제로 어떤 트래픽이 흐르고 있었는지 확인하려면 연결별 허용 또는 거부 결정을 기록하는 VPC 흐름 로그를 사용해야 합니다. SG 설계와 흐름 로그를 함께 사용하여 규칙이 의도대로 작동하는지 확인하십시오.
활용 위치
보안 그룹은 인스턴스 수준에서 작동하며 VPC 내부에서 가장 먼저 적용되는 가장 세밀한 네트워크 방어선입니다. 서브넷 전체에 적용되는 네트워크 ACL 및 WAF와 같은 애플리케이션 계층 도구를 보완합니다. 보안 그룹의 상태 저장, 허용 전용, 합집합 동작을 익히는 것은 SCS-C02 시험에 필수적입니다.
빠른 확인
보안 그룹의 동작을 얼마나 이해했는지 확인해 보십시오.
복습
보안 그룹은 리소스 ENI에 연결되는 상태 저장, 허용 전용 가상 방화벽입니다. 새 그룹은 모든 인바운드를 거부하고 모든 아웃바운드를 허용합니다. 규칙은 프로토콜, 포트, 그리고 CIDR 또는 다른 그룹 ID가 될 수 있는 소스를 지정합니다. 여러 그룹은 우선순위나 거부 규칙 없이 합집합으로 결합됩니다. 개방된 관리자 포트는 피하고, SG는 기록을 남기지 않으므로 트래픽을 확인하려면 흐름 로그를 사용하십시오.
자주 묻는 질문
“보안 그룹이 트래픽을 필터링하는 방법” 강의는 무료인가요?
네 — “보안 그룹이 트래픽을 필터링하는 방법” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AWS Security Academy 강의 전체를 잠금 해제할 수 있습니다. AWS Security Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“보안 그룹이 트래픽을 필터링하는 방법”에서 뭘 배우나요?
각 리소스에 연결된 상태 저장 방화벽을 이해해 보세요. 브라우저에서 직접 실행하는 실습 코드로 AWS Security Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AWS Security Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AWS Security Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“보안 그룹이 트래픽을 필터링하는 방법” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AWS Security Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AWS Security Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 보안 그룹이 트래픽을 필터링하는 방법
- 네트워크 ACL이 서브넷을 필터링하는 방법
- 상태 저장 방식과 상태 비저장 방식 비교
- 심층 방어를 위한 두 방식의 계층화