7장. 네트워크 정책 관리
Kubernetes 네트워크 정책은 Pod 그룹이 서로 및 기타 네트워크 끝점과 통신할 수 있는 방법에 대한 사양입니다. 이러한 네트워크 정책은 YAML 파일로 구성됩니다. 이러한 파일만으로는 적용된 네트워크 정책이 원하는 네트워크 토폴로지를 달성하는지 여부를 식별하기가 어려운 경우가 많습니다.
RHACS(Red Hat Advanced Cluster Security for Kubernetes)는 오케스트레이터에서 정의된 모든 네트워크 정책을 수집하고 이러한 정책을 보다 쉽게 사용할 수 있는 툴을 제공합니다.
네트워크 정책 적용을 지원하기 위해 RHACS는 다음 툴을 제공합니다.
- 네트워크 그래프
- 네트워크 정책 생성기
- 네트워크 정책 시뮬레이터
- 빌드 시간 네트워크 정책 생성기
7.1. 네트워크 그래프
7.1.1. 네트워크 그래프 정보
네트워크 그래프는 사용자 환경의 배포, 네트워크 흐름 및 네트워크 정책에 대한 고급 및 자세한 정보를 제공합니다.
RHACS는 보안된 각 클러스터의 모든 네트워크 정책을 처리하여 서로 연결할 수 있고 외부 네트워크에 연결할 수 있는 배포를 보여줍니다. 또한 실행 중인 배포를 모니터링하고 해당 배포 간의 트래픽을 추적합니다. 네트워크 그래프에서 다음 항목을 볼 수 있습니다.
- 내부 엔티티
- 이는 RFC 1918 에 정의된 대로 배포와 개인 주소 공간에 속하는 IP 주소 간의 연결을 나타냅니다. 자세한 내용은 "내부 엔티티와 관련된 연결"을 참조하십시오.
- 외부 엔티티
- 이는 RFC 1918 에 정의된 대로 개인 주소 공간에 속하지 않는 배포와 IP 주소 간의 연결을 나타냅니다. 자세한 내용은 "네트워크 그래프의 외부 엔티티 및 연결"을 참조하십시오.
- 네트워크 구성 요소
- 상단 메뉴에서 네임스페이스( NS 레이블로 표시) 및 배포( D 레이블로 표시됨)를 선택하여 선택한 클러스터의 그래프( CL 레이블로 표시됨)에 표시할 수 있습니다. 드롭다운 목록을 사용하고 일반적인 취약점 및 노출(CVEs), 라벨 및 이미지와 같이 필터링할 기준을 선택하여 배포를 추가로 필터링할 수 있습니다.
- 네트워크 흐름
- 그래프에 대해 다음 흐름 중 하나를 선택할 수 있습니다.
- 활성 트래픽
- 이 기본 옵션을 선택하면 선택한 네임스페이스 또는 특정 배포에 중점을 둔 관찰된 트래픽이 표시됩니다. 정보를 표시할 기간을 선택할 수 있습니다.
- 비활성 흐름
- 이 옵션을 선택하면 네트워크 정책에서 허용하는 잠재적 흐름이 표시되어 더 엄격한 격리를 달성하는 데 필요한 누락된 네트워크 정책을 식별할 수 있습니다. 정보를 표시할 기간을 선택할 수 있습니다.
- 네트워크 정책
- 선택한 구성 요소에 대한 기존 정책을 보거나 정책이 없는 구성 요소를 볼 수 있습니다. 네트워크 그래프 보기에서 네트워크 정책을 시뮬레이션할 수도 있습니다. 자세한 내용은 "네트워크 그래프에서 네트워크 정책 시뮬레이션"을 참조하십시오.
7.1.1.2. 네트워크 그래프의 외부 엔티티 및 연결
네트워크 그래프 보기는 관리 클러스터와 외부 소스 간의 네트워크 연결을 보여줍니다. 또한 RHACS는 Google Cloud, AWS, Microsoft Azure, Oracle Cloud 및 Cryostat와 같은 공개 CIDR(Classless Inter-Domain Routing) 주소 블록을 자동으로 검색하고 강조 표시합니다. 이 정보를 사용하면 활성 외부 연결로 배포를 식별하고 네트워크 외부에서 무단 연결을 만들고 있는지 확인할 수 있습니다.
기본적으로 외부 연결은 네트워크 그래프의 공통 외부 엔티티 아이콘 및 다른 CIDR 주소 블록을 가리킵니다. 그러나 CIDR 블록 관리를 클릭하고 자동 검색 CIDR 블록을 선택 해제하여 자동 검색 CIDR 블록을 표시하지 않도록 선택할 수 있습니다.
RHACS에는 다음 클라우드 공급자를 위한 IP 범위가 포함되어 있습니다.
- Google Cloud
- AWS
- Microsoft Azure
- Oracle Cloud
- Cloudflare
RHACS는 7일마다 클라우드 공급자의 IP 범위를 가져와서 업데이트하고 CIDR 블록을 매일 업데이트합니다. 오프라인 모드를 사용하는 경우 새 지원 패키지를 설치하여 이러한 범위를 업데이트할 수 있습니다.
다음 이미지는 네트워크 그래프의 예를 제공합니다. 이 예에서 사용자가 선택한 옵션에 따라 그래프는 선택한 네임스페이스의 배포를 보여줍니다. 배포와 같은 항목을 클릭할 때까지 트래픽 흐름이 표시되지 않습니다. 그래프는 빨간색 배지를 사용하여 정책이 누락되어 모든 네트워크 트래픽을 허용하는 배포를 나타냅니다.
7.1.1.3. 내부 엔티티와 관련된 연결
네트워크 그래프는 알려진 배포 또는 CIDR 블록에 속하지 않는 엔터티에 대한 활성 연결이 있는 배포를 식별하는 데 유용합니다. 이러한 연결 중 일부는 클러스터 외부에 도달하지 않으며 클러스터의 개인 네트워크 내에서 수행됩니다. 네트워크 그래프는 내부 엔티티에 대한 연결 또는 내부 엔터티 로 이를 나타냅니다.
내부 엔터티와의 연결은 RFC 1918 에 정의된 대로 개인 주소 공간에 속하는 배포와 IP 주소 간의 연결을 나타냅니다. 경우에 따라 Sensor가 연결에 관련된 배포 중 하나 또는 두 개를 식별할 수 없습니다. 이 경우 시스템은 IP 주소를 분석하고 연결이 내부인지 외부인지 결정합니다.
다음 시나리오에서는 내부 엔티티와 관련된 연결로 분류될 수 있습니다.
- IP 주소 변경 또는 연결을 시작하는 동안(서버) 연결을 수락하는 배포 삭제(클라이언트)는 여전히 연결을 시도합니다.
- 오케스트레이터 API와 통신하는 배포
- 네트워킹 CNI 플러그인을 사용하여 통신하는 배포(예: Calico)
- 센서를 다시 시작하여 IP 주소 매핑이 이전 배포(예: Sensor가 과거 엔티티의 IP 주소 또는 기존 엔티티의 과거 IP 주소를 인식하지 못하는 경우)를 재설정합니다.
- 오케스트레이터에 의해 관리되지 않는 엔티티를 포함하는 연결(경우에 따라 클러스터 외부에서볼 수 있지만 RFC 1918에 정의된 대로 개인 주소 공간의 IP 주소를 사용함)
내부 엔티티는 다음 그래픽에 표시된 대로 아이콘으로 표시됩니다. 내부 엔터티를 클릭하면 이러한 엔터티 의 흐름이 표시됩니다.
그림 7.4. 내부 엔터티 예

7.1.2. 액세스 제어 및 권한
네트워크 그래프를 보려면 사용자에게 네트워크 그래프 뷰어 기본 권한이 설정된 최소한 권한이 있어야 합니다.
네트워크 그래프 뷰어 권한 세트에 다음 권한이 부여됩니다.
-
배포
읽기 -
네트워크Graph
읽기 -
NetworkPolicy
읽기
자세한 내용은 "추가 리소스" 섹션의 "시스템 권한 세트"를 참조하십시오.
추가 리소스
7.1.3. 배포 정보 보기
네트워크 그래프는 RHACS가 검색한 배포, 네임스페이스 및 연결에 대한 시각적 맵을 제공합니다. 그래프에서 배포를 클릭하면 다음 세부 정보를 포함하여 배포에 대한 정보를 볼 수 있습니다.
- 흐름 수, 기존 또는 누락된 네트워크 정책 규칙 및 수신 포트와 같은 네트워크 보안
- 레이블 및 주석
- 포트 구성
- 컨테이너 정보
- 프로토콜 및 포트 번호를 포함하여 수신 및 송신 연결에 대한 비정상적인 및 기준 흐름
- 네트워크 정책
프로세스
네임스페이스에서 배포 세부 정보를 보려면 다음을 수행합니다.
- RHACS 포털에서 Network Graph 로 이동하여 드롭다운 목록에서 클러스터를 선택합니다.
- 네임스페이스 목록을 클릭하고 검색 필드를 사용하여 네임스페이스를 검색하거나 개별 네임스페이스를 선택합니다.
- Deployments 목록을 클릭하고 search 필드를 사용하여 배포를 검색하거나 네트워크 그래프에 표시할 개별 배포를 선택합니다.
- 네트워크 그래프에서 배포를 클릭하여 정보 패널을 확인합니다.
- 세부 정보,흐름,기준선 또는 네트워크 정책 탭을 클릭하여 해당 정보를 확인합니다.
7.1.4. 네트워크 그래프에서 네트워크 정책 보기
네트워크 정책은 Pod 그룹이 서로 및 다른 네트워크 끝점과 통신할 수 있는 방법을 지정합니다. Kubernetes NetworkPolicy
리소스는 라벨을 사용하여 Pod를 선택하고 선택한 Pod에 허용되는 트래픽을 지정하는 규칙을 정의합니다. RHACS는 네트워크 그래프에서 모든 Kubernetes 클러스터, 네임스페이스, 배포 및 Pod에 대한 네트워크 정책 정보를 검색하고 표시합니다.
프로세스
- RHACS 포털에서 Network Graph 로 이동하여 드롭다운 목록에서 클러스터를 선택합니다.
- 네임스페이스 목록을 클릭하고 개별 네임스페이스를 선택하거나 검색 필드를 사용하여 네임스페이스를 찾습니다.
- Deployments 목록을 클릭하고 개별 배포를 선택하거나 검색 필드를 사용하여 배포를 찾습니다.
- 네트워크 그래프에서 배포를 클릭하여 정보 패널을 확인합니다.
세부 정보 탭의 네트워크 보안 섹션에서 다음 정보를 제공하는 네트워크 정책 규칙에 대한 요약 메시지를 볼 수 있습니다.
- 수신 또는 송신 트래픽을 규제하는 네트워크에 정책이 있는 경우
- 네트워크가 정책이 누락되어 모든 수신 또는 송신 트래픽을 허용하는 경우
- 네트워크 정책에 대한 YAML 파일을 보려면 정책 규칙을 클릭하거나 네트워크 정책 탭을 클릭합니다.
7.1.5. 네트워크 그래프에서 CIDR 블록 구성
사용자 지정 CIDR 블록을 지정하거나 네트워크 그래프의 자동 검색 CIDR 블록 표시를 구성할 수 있습니다.
프로세스
RHACS 포털에서 네트워크 그래프로 이동한 다음 CIDR 블록 관리를 선택합니다. 다음 작업을 수행할 수 있습니다.
자동 검색 CIDR 블록을 전환하여 네트워크 그래프에서 자동 검색되는 CIDR 블록을 숨깁니다.
참고자동 검색 CIDR 블록을 숨기면 네트워크 그래프에서 선택한 클러스터뿐만 아니라 모든 클러스터에 대해 자동 검색 CIDR 블록이 숨겨집니다.
다음 단계를 수행하여 그래프에 사용자 지정 CIDR 블록을 추가합니다.
- 필드에 CIDR 이름과 CIDR 주소를 입력합니다. 추가 CIDR 블록을 추가하려면 CIDR 블록 추가를 클릭하고 각 블록에 대한 정보를 입력합니다.
- 구성 업데이트를 클릭하여 변경 사항을 저장합니다.