9.11. cert-manager 운영자를 위한 네트워크 정책 구성


Red Hat OpenShift용 cert-manager Operator는 구성 요소의 수신 및 송신 트래픽을 제어하여 보안을 강화하기 위해 미리 정의된 NetworkPolicy 리소스를 제공합니다. 기본적으로 이 기능은 업그레이드 중에 연결 문제나 변경 사항의 중단을 방지하기 위해 비활성화되어 있습니다. 이 기능을 사용하려면 CertManager 사용자 정의 리소스(CR)에서 해당 기능을 활성화해야 합니다.

기본 정책을 활성화한 후에는 아웃바운드 트래픽을 허용하기 위해 추가 이그레스 규칙을 수동으로 구성해야 합니다. 이러한 규칙은 Red Hat OpenShift용 cert-manager 운영자가 API 서버와 내부 DNS를 넘어 외부 서비스와 통신하는 데 필요합니다.

사용자 지정 이탈 규칙이 필요한 서비스의 예는 다음과 같습니다.

  • 예를 들어 ACME 서버, Let's Encrypt
  • DNS-01 챌린지 제공자(예: AWS Route53 또는 Cloudflare)
  • HashiCorp Vault와 같은 외부 CA
참고

향후 릴리스에서는 네트워크 정책이 기본적으로 활성화될 예정이며, 이로 인해 업그레이드 중에 연결 오류가 발생할 수 있습니다. 이러한 변경에 대비하여 필요한 송신 정책을 구성하세요.

9.11.1. 기본 수신 및 송신 규칙

기본 네트워크 정책은 각 구성 요소에 다음과 같은 수신 및 송신 규칙을 적용합니다.

Expand
Component유입 포트탈출구설명

cert-manager

9402

6443, 5353

메트릭 서버로의 유입 트래픽과 OpenShift API 서버로의 유출 트래픽을 허용합니다.

cert-manager-webhook

9402, 10250

6443

메트릭 및 웹훅 서버로의 유입 트래픽과 OpenShift API 서버 및 내부 DNS 서버로의 유출 트래픽을 허용합니다.

cert-manager-cainjector

9402

6443

메트릭 서버로의 유입 트래픽과 OpenShift API 서버로의 유출 트래픽을 허용합니다.

istio-csr

6443, 9402

6443

gRPC Istio 인증서 요청 API, 메트릭 서버로의 수신 트래픽과 OpenShift API 서버로의 송신 트래픽을 허용합니다.

9.11.2. 네트워크 정책 구성 매개변수

CertManager 사용자 정의 리소스(CR)를 업데이트하여 cert-manager Operator 구성 요소에 대한 네트워크 정책을 활성화하고 구성할 수 있습니다. CR에는 기본 네트워크 정책을 활성화하고 사용자 정의 송신 규칙을 정의하기 위한 다음 매개변수가 포함되어 있습니다.

Expand
필드유형설명

spec.defaultNetworkPolicy

boolean

cert-manager Operator 구성 요소에 대한 기본 네트워크 정책을 활성화할지 여부를 지정합니다.

중요

기본 네트워크 정책을 활성화하면 비활성화할 수 없습니다. 이러한 제한은 우발적인 보안 저하를 방지합니다. 이 설정을 활성화하기 전에 네트워크 정책 요구 사항을 계획하세요.

spec.networkPolicies

object

사용자 정의 네트워크 정책 구성 목록을 정의합니다. 구성을 적용하려면 spec.defaultNetworkPolicy를 true 로 설정해야 합니다.

spec.networkPolicies.componentName

string

이 네트워크 정책이 대상으로 하는 구성 요소를 지정합니다. 유효한 값은 CoreController 뿐입니다.

spec.networkPolicies.egress

object

지정된 구성 요소에 대한 이탈 규칙을 정의합니다. 모든 외부 공급자에 대한 연결을 허용하려면 {} 로 설정합니다.

spec.networkPolicies.egress.ports

object

지정된 공급자에 대한 네트워크 포트 및 프로토콜 목록을 정의합니다.

spec.networkPolicies.name

string

NetworkPolicy 리소스 이름을 생성하는 데 사용되는 사용자 지정 네트워크 정책에 대한 고유한 이름을 지정합니다.

9.11.3. 네트워크 정책 구성 예

다음 예제에서는 네트워크 정책 및 사용자 지정 규칙 활성화와 관련된 다양한 시나리오를 다룹니다.

네트워크 정책 관리를 활성화하기 위한 예

apiVersion: operator.openshift.io/v1alpha1
kind: CertManager
metadata:
  name: cluster
spec:
  defaultNetworkPolicy: "true"
Copy to Clipboard Toggle word wrap

모든 외부 발급자 공급자에게 이탈을 허용하는 예

apiVersion: operator.openshift.io/v1alpha1
kind: CertManager
metadata:
  name: cluster
spec:
  defaultNetworkPolicy: "true"
  networkPolicies:
  - name: allow-egress-to-all
    componentName: CoreController
    egress:
     - {}
Copy to Clipboard Toggle word wrap

특정 발급자 공급자에게 이탈을 허용하는 예

다음 구성을 사용하면 cert-manager 운영자 컨트롤러가 ACME 챌린지 자체 검사를 수행할 수 있습니다. 이 프로세스에는 ACME 공급자, DNS API 엔드포인트 및 재귀 DNS 서버에 대한 연결이 필요합니다.

apiVersion: operator.openshift.io/v1alpha1
kind: CertManager
metadata:
  name: cluster
spec:
  defaultNetworkPolicy: "true"
  networkPolicies:
  - name: allow-egress-to-acme-server
    componentName: CoreController
    egress:
    - ports:
      - port: 80
        protocol: TCP
      - port: 443
        protocol: TCP
  - name: allow-egress-to-dns-service
    componentName: CoreController
    egress:
    - ports:
      - port: 53
        protocol: UDP
      - port: 53
        protocol: TCP
Copy to Clipboard Toggle word wrap

9.11.4. 네트워크 정책 생성 확인

기본 및 사용자 지정 NetworkPolicy 리소스가 생성되었는지 확인할 수 있습니다.

사전 요구 사항

  • CertManager 사용자 정의 리소스에서 Red Hat OpenShift용 cert-manager Operator에 대한 네트워크 정책을 활성화했습니다.

프로세스

  • 다음 명령을 실행하여 cert-manager 네임스페이스의 NetworkPolicy 리소스 목록을 확인합니다.

    $ oc get networkpolicy -n cert-manager
    Copy to Clipboard Toggle word wrap

    출력 예

    NAME                                             POD-SELECTOR                              AGE
    cert-manager-allow-egress-to-api-server          app.kubernetes.io/instance=cert-manager   7s
    cert-manager-allow-egress-to-dns                 app=cert-manager                          6s
    cert-manager-allow-ingress-to-metrics            app.kubernetes.io/instance=cert-manager   7s
    cert-manager-allow-ingress-to-webhook            app=webhook                               6s
    cert-manager-deny-all                            app.kubernetes.io/instance=cert-manager   8s
    cert-manager-user-allow-egress-to-acme-server    app=cert-manager                          8s
    cert-manager-user-allow-egress-to-dns-service    app=cert-manager                          7s
    Copy to Clipboard Toggle word wrap

    출력에는 기본 정책과 사용자가 만든 사용자 지정 정책이 나열됩니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat