네트워크 로드 밸런서를 보안 그룹과 통합

IBM Cloud® Network Load Balancer for VPC (NLB)를 사용하면 보안 그룹을 연결하여 애플리케이션의 보안을 강화할 수 있습니다.

다음 정보는 개인 경로 네트워크 부하 분산기에 적용되지 않습니다.

보안 그룹은 NLB 인스턴스의 보안을 강화하는 편리한 방법입니다. 로드 밸런서에 보안 그룹을 연결하면, 로드 밸런서의 리스너와 대상 간에 오가는 인바운드 및 아웃바운드 트래픽을 완벽하게 제어할 수 있습니다. 타겟은 로드 밸런서를 IP 주소나 CIDR 범위로 식별하는 대신, 자체 보안 그룹 정의에서 로드 밸런서의 보안 그룹을 발신원으로 간단히 지정할 수 있습니다. 이를 통해 모든 로드 밸런서 어플라이언스에서 발생하는 트래픽은 IP 주소에 관계없이 자동으로 허용됩니다.

네트워크 로드 밸런서에 연관된 보안 그룹이 없는 경우 보안 그룹 규칙은 모든 트래픽을 허용하며 iptables 규칙에 따라 VSI 레벨에서 필터링이 수행됩니다.

네트워크 트래픽 규칙

다음 표에는 공용 및 사설 네트워크 로드 밸런서의 인바운드 및 아웃바운드 트래픽에 대한 모범 사례가 나와 있습니다.

공용 네트워크 로드 밸런서

인바운드 규칙

공용 로드 밸런서의 리스너 포트로 들어오는 모든 출처의 인바운드 트래픽을 허용하는 것이 일반적입니다. 예를 들어, 다음과 같습니다.

퍼블릭 로드 밸런서의 인바운드 규칙에 대한 구성 정보
프로토콜 소스 유형 소스
TCP IP 주소 0.0.0.0/0 Listener port

하지만 인바운드 트래픽을 제한해야 하는 경우, 209.173.53.167/20 과 같은 소스 CIDR을 지정할 수 있습니다. 이를 통해 해당 IP 범위 내의 모든 공용 IP 주소가 공용 로드 밸런서에 접속할 수 있습니다. 예를 들어, 다음과 같습니다.

특정 CIDR에서 오는 공용 로드 밸런서의 인바운드 규칙에 대한 구성 정보
프로토콜 소스 유형 소스
TCP IP 주소 209.173.53.167/20 Listener port

아웃바운드 규칙

대상 리소스가 보안 그룹에 포함되어 있고, 아웃바운드 규칙에서 대상로 설정되어 있는지 확인하십시오. 자세한 정보는 보안 그룹 정보를 참조하십시오.

로드밸런서의 아웃바운드 규칙에 대한 구성 정보
프로토콜 대상 유형 대상
TCP 보안 그룹 target target port
TCP 보안 그룹 target Health check port

표시된 것보다 더 허용 범위가 넓은 아웃바운드 규칙을 구성할 수 있습니다(예를 들어, 모든 목적지로의 모든 트래픽을 허용할 수 있습니다). 그러나 이는 보안상의 이유로 권장되지 않습니다.

사설 네트워크 로드 밸런서

인바운드 규칙

프라이빗 로드 밸런서의 인바운드 규칙에 대한 구성 정보
프로토콜 소스 유형 소스
TCP IP 주소 Subnet CIDR or VPC security group Listener port

사설 로드 밸런서의 인바운드 규칙을 자체 워크로드로만 제한하는 것은 일반적인 관행입니다. 특정 서브넷 CIDR의 소스 또는 소스 디바이스가 속하는 보안 그룹을 지정해야 합니다. 특정 CIDR을 사용하는 것이 바람직하지만, 개별 IP 주소도 사용할 수 있습니다. 자세한 정보는 보안 그룹 정보를 참조하십시오.

아웃바운드 규칙

프라이빗 로드 밸런서의 아웃바운드 규칙에 대한 구성 정보
프로토콜 대상 유형 대상
TCP 보안 그룹 Target security group Target port
TCP 보안 그룹 Target security group Health check port(대상 포트와 다른 경우)

대상 리소스가 보안 그룹에 포함되어 있고, 아웃바운드 규칙에서 대상로 설정되어 있는지 확인하십시오. 자세한 정보는 보안 그룹 정보를 참조하십시오.

또한, 대상 서버들은 로드 밸런서의 이름을 확인하기 위해 DNS 리졸버와 연결되어 있어야 합니다. 그 이유는 DNS 이름을 통해 로드 밸런서에 액세스하기 때문입니다.

로드 밸런서 프로비저닝 중에 보안 그룹 연결

네트워크 로드 밸런서를 생성할 때 최대 5개의 보안 그룹을 연결할 수 있습니다. 로드 밸런서 작성 중에 보안 그룹을 지정하지 않으면 VPC에 대한 기본 보안 그룹이 사용됩니다.

하나 이상의 보안 그룹을 선택하지 않으면 새로 작성된 네트워크 로드 밸런서에서 트래픽 중단을 최소화하도록 기본 보안 그룹 규칙을 업데이트해야 합니다.

전제조건: 보안 그룹 및 규칙 구성

NLB에 연결할 보안 그룹을 작성했는지 확인하십시오. 또한 규칙이 로드 밸런서 트래픽에 대해 구성되었는지 확인하십시오. 보안 그룹을 작성해야 하는 경우 다음 프로시저를 수행하십시오.

또는 IBM Cloud VPC API를 사용하여 보안 그룹을 생성할 수도 있습니다.

UI를 사용하여 보안 그룹을 작성하려면 다음을 수행하십시오.

  1. 브라우저에서 IBM Cloud 콘솔을 열고 계정에 로그인하세요.

  2. 탐색 메뉴 메뉴 아이콘을 선택한 다음 인프라 VPC 아이콘 > 네트워크 > 보안 그룹을 클릭합니다.

  3. 작성을 클릭하십시오.

  4. 보안 그룹에 대한 고유한 이름을 제공하십시오.

  5. 보안 그룹에 대한 VPC를 선택하십시오. 보안 그룹은 로드 밸런서와 동일한 VPC에 작성되어야 합니다.

  6. 추가를 클릭하여 보안 그룹에서 송수신할 수 있도록 허용되는 트래픽을 정의하는 인바운드 및 아웃바운드 규칙을 구성하십시오. 각 규칙에 대해 다음 정보를 완료하십시오.

    • 허용되는 트래픽에 대한 CIDR 블록 또는 IP 주소를 지정하십시오. 또는 동일한 VPC에서 보안 그룹을 지정하여 선택된 보안 그룹에 연결된 모든 소스의 송수신 트래픽을 허용할 수도 있습니다.
    • 규칙이 적용되는 프로토콜 및 포트를 선택하십시오. 네트워크 규칙에 대한 우수 사례는 네트워크 트래픽 규칙을 참조하십시오.

    팁:

    • 규칙은 추가된 순서와 관계없이 모두 평가됩니다.
    • 규칙은 Stateful이며, 이는 허용된 트래픽에 대한 응답인 리턴 트래픽이 자동으로 허용됨을 의미합니다. 예를 들어, 포트 80을 통한 인바운드 TCP 트래픽을 허용하는 규칙을 작성하는 경우 해당 규칙은 추가 규칙을 작성할 필요 없이 소스 호스트로의, 포트 80을 통한 응답 아웃바운드 TCP 트래픽도 허용합니다.
  7. 선택사항: 이 보안 그룹을 다른 인스턴스에 적용할 경우 인터페이스를 편집하십시오. 보안 그룹 연결은 로드 밸런서 섹션에서 수행됩니다.

  8. 규칙 작성을 완료한 후 보안 그룹 작성을 클릭하십시오.

보안 그룹 예제

예를 들어, TCP 리스너( TCP 포트 80)에 대해 포트 80의 모든 트래픽을 허용하는 다음 인바운드 규칙을 구성합니다.

인바운드 규칙의 구성 정보 예시
프로토콜 소스 유형 소스
TCP 임의 0.0.0.0/0 포트 80

그런 다음, TCP 트래픽이 대상 서버로 전송될 수 있도록 아웃바운드 규칙을 구성합니다:

아웃바운드 규칙의 구성 정보 예시
프로토콜 대상 유형 대상
TCP 임의 10.11.12.13/32 (대상 IP 주소) 80 (목적지 포트)
TCP 임의 10.11.12.14/32 (대상 IP 주소) 80 (대상 상태 확인 포트)

절차: NLB 생성 시 보안 그룹 연결

네트워크 로드 밸런서를 작성 할 때 보안 그룹을 연결하려면 다음 단계를 수행하십시오.

  1. 브라우저에서 IBM Cloud 콘솔을 열고 계정에 로그인하세요.
  2. 탐색 메뉴 메뉴 아이콘을 선택한 다음 인프라 VPC 아이콘 > 네트워크 > 로드 밸런서를 클릭합니다.
  3. 작성을 클릭하십시오.
  4. 필요에 따라 이름, VPC, 유형, 서브넷, 리스너 및 풀을 구성하십시오.
  5. 보안 그룹 테이블에서 연결하려는 보안 그룹의 확인란을 선택하십시오.
  6. 작성을 클릭하여 로드 밸런서를 프로비저닝하십시오.

보안 그룹 규칙이 로드 밸런서 트래픽을 허용하는지 확인하십시오. 보안 그룹에서 리스너, 풀 및 상태 검사 포트가 허용되었는지 확인하십시오.

보안 그룹 연결 및 분리

보안 그룹을 기존 로드 밸런서에 연결하려면 다음 단계를 수행하십시오.

07 August 2023 이전에 생성된 로드 밸런서에는 보안 그룹이 연결되어 있지 않으며, 모든 인바운드 및 아웃바운드 트래픽을 허용합니다. 보안 그룹이 없는 로드 밸런서에 보안 그룹을 연결하는 경우 이를 제거할 수 없습니다. 모든 인바운드 및 아웃바운드 트래픽을 허용하기 위한 규칙이 있는 보안 그룹을 연결하여 이전의 "모든 인바운드 및 아웃바운드 트래픽 허용" 동작으로 되돌릴 수 없습니다. 그러나 이 규칙은 본질적으로 안전하지 않으므로 권장되지 않습니다.

  1. 브라우저에서 IBM Cloud 콘솔을 열고 계정에 로그인하세요.
  2. 탐색 메뉴 메뉴 아이콘을 선택한 다음 인프라 VPC 아이콘 > 네트워크 > 로드 밸런서를 클릭합니다.
  3. 로드 밸런서의 목록에서 로드 밸런서를 선택하여 세부사항 페이지를 보십시오.
  4. 연결된 보안 그룹 탭을 클릭하여 연결된 보안 그룹을 보십시오.
  5. 하나 이상의 보안 그룹을 연결하려면 연결을 클릭하십시오. NLB에 연결할 보안 그룹은 최대 5개까지 선택할 수 있습니다.
  6. 연결할 보안 그룹을 선택하십시오.
  7. 연결을 클릭하십시오.

로드 밸런서에서 보안 그룹을 분리하려면 다음 단계를 수행하십시오.

  1. 브라우저에서 IBM Cloud 콘솔을 열고 계정에 로그인하세요.
  2. 탐색 메뉴 메뉴 아이콘을 선택한 다음 인프라 VPC 아이콘 > 네트워크 > 로드 밸런서를 클릭합니다.
  3. 로드 밸런서의 목록에서 로드 밸런서를 선택하여 세부사항 페이지를 보십시오.
  4. 연결된 보안 그룹 탭을 클릭하여 연결된 보안 그룹을 보십시오.
  5. 보안 그룹을 분리하려면 보안 그룹의 조치 메뉴 조치 아이콘를 클릭하십시오.
  6. 분리를 클릭하십시오.