검색

30장. 사용자 정의 PKI 구성

download PDF

웹 콘솔과 같은 일부 플랫폼 구성 요소에서는 통신에 경로를 사용하고, 다른 구성 요소와의 상호 작용을 위해 해당 구성 요소의 인증서를 신뢰해야 합니다. 사용자 정의 PKI(공개 키 인프라)를 사용하는 경우 개인 서명 CA 인증서가 클러스터에서 인식되도록 PKI를 구성해야 합니다.

프록시 API를 활용하면 클러스터 전체에서 신뢰하는 CA 인증서를 추가할 수 있습니다. 이 작업은 설치 중 또는 런타임에 수행해야 합니다.

  • 설치 중에 클러스터 전체 프록시를 구성합니다. install-config.yaml 파일의 additionalTrustBundle 설정에 개인 서명 CA 인증서를 정의해야 합니다.

    설치 프로그램에서 사용자가 정의한 추가 CA 인증서가 포함된 user-ca-bundle 이라는 ConfigMap을 생성합니다. 그러면 CNO(Cluster Network Operator)에서 이러한 CA 인증서를 RHCOS(Red Hat Enterprise Linux CoreOS) 신뢰 번들과 병합하는 trusted-ca-bundle ConfigMap을 생성합니다. 이 ConfigMap은 프록시 오브젝트의 trustedCA 필드에서 참조됩니다.

  • 런타임개인 서명 CA 인증서를 포함하도록 기본 프록시 오브젝트를 수정합니다 (클러스터의 프록시 사용 워크플로의 일부). 여기에는 클러스터에서 신뢰해야 하는 개인 서명 CA 인증서가 포함된 ConfigMap을 생성한 다음 개인 서명 인증서의 ConfigMap을 참조하는 trustedCA 를 사용하여 프록시 리소스를 수정해야 합니다.
참고

설치 관리자 구성의 additionalTrustBundle 필드와 프록시 리소스의 trustedCA 필드는 클러스터 전체의 신뢰 번들을 관리하는 데 사용됩니다. additionalTrustBundle 은 설치 시 사용되며, 프록시의 trustedCA 는 런타임에 사용됩니다.

trustedCA 필드는 클러스터 구성 요소에서 사용하는 사용자 정의 인증서 및 키 쌍이 포함된 ConfigMap 에 대한 참조입니다.

30.1. 설치 중 클러스터 단위 프록시 구성

프로덕션 환경에서는 인터넷에 대한 직접 액세스를 거부하고 대신 HTTP 또는 HTTPS 프록시를 사용할 수 있습니다. install-config.yaml 파일에서 프록시 설정을 구성하여 프록시를 사용하도록 새 OpenShift Container Platform 클러스터를 구성할 수 있습니다.

사전 요구 사항

  • 기존 install-config.yaml 파일이 있습니다.
  • 클러스터에서 액세스해야 하는 사이트를 검토하고 프록시를 바이패스해야 하는지 확인했습니다. 기본적으로 호스팅 클라우드 공급자 API에 대한 호출을 포함하여 모든 클러스터 발신(Egress) 트래픽이 프록시됩니다. 필요한 경우 프록시를 바이패스하기 위해 Proxy 오브젝트의 spec.noProxy 필드에 사이트를 추가했습니다.

    참고

    프록시 오브젝트 status.noProxy 필드는 설치 구성에 있는 networking.machineNetwork[].cidr,networking.clusterNetwork[].cidr, networking.serviceNetwork[] 필드의 값으로 채워집니다.

    AWS(Amazon Web Services), Google Cloud Platform(GCP), Microsoft Azure 및 Red Hat OpenStack Platform(RHOSP)에 설치하는 경우 Proxy 오브젝트 status.noProxy 필드도 인스턴스 메타데이터 끝점(169.254.169.254)으로 채워집니다.

프로세스

  1. install-config.yaml 파일을 편집하고 프록시 설정을 추가합니다. 예를 들면 다음과 같습니다.

    apiVersion: v1
    baseDomain: my.domain.com
    proxy:
      httpProxy: http://<username>:<pswd>@<ip>:<port> 1
      httpsProxy: https://<username>:<pswd>@<ip>:<port> 2
      noProxy: ec2.<aws_region>.amazonaws.com,elasticloadbalancing.<aws_region>.amazonaws.com,s3.<aws_region>.amazonaws.com 3
    additionalTrustBundle: | 4
        -----BEGIN CERTIFICATE-----
        <MY_TRUSTED_CA_CERT>
        -----END CERTIFICATE-----
    additionalTrustBundlePolicy: <policy_to_add_additionalTrustBundle> 5
    1
    클러스터 외부에서 HTTP 연결을 구축하는 데 사용할 프록시 URL입니다. URL 스키마는 http 여야 합니다.
    2
    클러스터 외부에서 HTTPS 연결을 구축하는 데 사용할 프록시 URL입니다.
    3
    대상 도메인 이름, IP 주소 또는 프록시에서 제외할 기타 네트워크 CIDR로 이루어진 쉼표로 구분된 목록입니다. 하위 도메인과 일치하려면 도메인 앞에 . 을 입력합니다. 예를 들어 .y.comx.y.com 과 일치하지만 y.com 은 일치하지 않습니다. * 를 사용하여 모든 대상에 대해 프록시를 바이패스합니다. Amazon EC2,Elastic Load Balancing, S3 VPC 끝점을 VPC에 추가한 경우 이러한 끝점을 noProxy 필드에 추가해야 합니다.
    4
    이 값을 제공하면 설치 프로그램에서 HTTPS 연결을 프록시하는 데 필요한 추가 CA 인증서가 하나 이상 포함된 openshift-config 네임스페이스에 user-ca-bundle 이라는 이름으로 구성 맵을 생성합니다. 그러면 CNO(Cluster Network Operator)에서 이러한 콘텐츠를 RHCOS(Red Hat Enterprise Linux CoreOS) 신뢰 번들과 병합하는 trusted-ca-bundle 구성 맵을 생성합니다. 이 구성 맵은 Proxy 오브젝트의 trustedCA 필드에서 참조됩니다. 프록시의 ID 인증서를 RHCOS 신뢰 번들의 기관에서 서명하지 않는 한 additionalTrustBundle 필드가 필요합니다.
    5
    선택사항: trustedCA 필드의 user-ca-bundle 구성 맵을 참조할 프록시 오브젝트의 구성을 결정하는 정책입니다. 허용되는 값은 ProxyonlyAlways 입니다. 프록시 전용http/https 프록시가 구성된 경우에만 user-ca-bundle 구성 맵을 참조합니다. Always 를 사용하여 항상 user-ca-bundle 구성 맵을 참조합니다. 기본값은 Proxyonly 입니다.
    참고

    설치 프로그램에서 프록시 readinessEndpoints 필드를 지원하지 않습니다.

  2. 파일을 저장해 놓고 OpenShift Container Platform을 설치할 때 참조하십시오.

설치 프로그램은 제공된 install-config.yaml 파일의 프록시 설정을 사용하는 cluster 라는 클러스터 전체 프록시를 생성합니다. 프록시 설정을 제공하지 않아도 cluster 프록시 오브젝트는 계속 생성되지만 spec 은 nil이 됩니다.

참고

cluster 라는 프록시 오브젝트만 지원되며 추가 프록시는 생성할 수 없습니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.