키 제공자 서비스가 키 제공자에 연결하려면, 신뢰할 수 있는 키 제공자를 생성한 다음 vSphere 신뢰 기관 클러스터와 키 서버(KMS) 간에 신뢰 설정을 구성해야 합니다. 대부분의 KMIP 준수 키 서버의 경우, 이 구성에는 클라이언트 및 서버 인증서 설정이 포함됩니다.

이전에 vSphere 6.7에서 KMS 클러스터라고 했던 것을 이제 vSphere 7.0 이상에서는 키 제공자라고 합니다. 키 제공자에 대한 자세한 내용은 vSphere 신뢰 기관 키 제공자 서비스란? 항목을 참조하십시오.

운영 환경에서는 여러 개의 키 제공자를 생성할 수 있습니다. 여러 개의 키 제공자를 생성하면 회사 조직, 서로 다른 사업 단위 또는 고객 등을 기반으로 배포를 관리하는 방식을 결정할 수 있습니다.

이러한 작업을 순서대로 수행하려는 경우 vSphere 신뢰 기관 클러스터의 vCenter Server에 대한 연결 상태를 유지해야 합니다.

사전 요구 사항

프로시저

  1. 신뢰 기관 클러스터의 vCenter Server에 연결되어 있는지 확인합니다. 예를 들어 $global:defaultviservers를 입력하여 연결된 모든 서버를 표시할 수 있습니다.
  2. (선택 사항) 필요한 경우 다음 명령을 실행하여 신뢰 기관 클러스터의 vCenter Server에 연결되어 있는지 확인할 수 있습니다.
    Disconnect-VIServer -server * -Confirm:$false
    Connect-VIServer -server TrustAuthorityCluster_VC_ip_address -User trust_admin_user -Password 'password'
  3. 신뢰할 수 있는 키 제공자를 생성하려면 New-TrustAuthorityKeyProvider cmdlet을 실행합니다.
    예를 들어 이 명령은 PrimaryKeyID에 1을 사용하고 clkp라는 이름을 사용합니다. 이러한 작업을 순서대로 수행하는 경우, 이전에 Get-TrustAuthorityCluster 정보를 변수에 할당했습니다(예: $vTA = Get-TrustAuthorityCluster 'vTA Cluster').
    New-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA -PrimaryKeyId 1 -Name clkp -KmipServerAddress ip_address
    PrimaryKeyID는 일반적으로 키 서버에서 UUID 형식으로 제공되는 키 ID입니다. PrimaryKeyID에 키 이름을 사용하지 마십시오. PrimaryKeyID 값은 벤더에 따라 다릅니다. 키 서버 설명서를 참조하십시오. New-TrustAuthorityKeyProvider cmdlet은 KmipServerPort, ProxyAddressProxyPort와 같은 다른 옵션을 사용할 수 있습니다. 자세한 내용은 New-TrustAuthorityKeyProvider 도움말 시스템을 참조하십시오.

    유형(표준 키 제공자, 신뢰할 수 있는 키 제공자 및 네이티브 키 제공자)에 관계없이 각 논리적 키 제공자는 모든 vCenter Server 시스템에서 고유한 이름이 있어야 합니다.

    자세한 내용은 키 제공자 이름 지정의 내용을 참조하십시오.

    참고: 키 제공자에 키 서버를 여러 개 추가하려면 Add-TrustAuthorityKeyProviderServer cmdlet을 사용합니다.
    키 제공자 정보가 표시됩니다.
  4. 신뢰할 수 있는 키 제공자를 키 서버가 신뢰하도록 신뢰할 수 있는 연결을 설정합니다. 정확한 프로세스는 키 서버가 수락하는 인증서와 회사 정책에 따라 달라집니다. 서버에 적합한 옵션을 선택하고 단계를 완료합니다.
    옵션 자세한 내용은
    클라이언트 인증서 업로드 클라이언트 인증서를 업로드하여 신뢰할 수 있는 키 제공자가 신뢰할 수 있는 연결 설정.
    KMS 인증서 및 개인 키 업로드 인증서 및 개인 키를 업로드하여 신뢰할 수 있는 키 제공자가 신뢰할 수 있는 연결 설정.
    새 인증서 서명 요청 인증서 서명 요청을 생성하여 신뢰할 수 있는 키 제공자가 신뢰할 수 있는 연결 설정.
  5. 신뢰할 수 있는 키 제공자가 키 서버를 신뢰하도록 키 서버 인증서를 업로드하여 신뢰 설정을 완료합니다.
    1. 변수에 Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA 정보를 할당합니다.
      예:
      $kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA

      이 변수는 지정된 신뢰 기관 클러스터에서 신뢰할 수 있는 키 제공자를 가져옵니다(이 경우 $vTA).

      참고: 신뢰할 수 있는 키 제공자가 둘 이상이면, 다음과 유사한 명령을 사용하여 원하는 항목을 선택합니다.
      Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA
      <The trusted key providers listing is displayed.>
      $kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA | Select-Object -Last 1
      

      Select-Object -Last 1를 사용하면 목록의 마지막에 있는 신뢰할 수 있는 키 제공자가 선택됩니다.

    2. 키 서버 서버 인증서를 받으려면 Get-TrustAuthorityKeyProviderServerCertificate 명령을 실행합니다.
      예:
      Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers
      서버 인증서 정보가 표시됩니다. 처음에는 인증서가 신뢰되지 않으므로 [신뢰됨] 상태는 False입니다. 키 서버가 둘 이상 구성된 경우 인증서 목록이 반환 됩니다. 다음 지침을 사용하여 각 인증서를 확인하고 추가합니다.
    3. 인증서를 신뢰하기 전에 Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers 정보를 변수(예: cert)에 할당하고 $cert.Certificate.ToString() 명령을 실행하여 출력을 확인합니다.
      예:
      $cert = Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers
      $cert.Certificate.ToString()
      주체, 발급자 및 기타 정보를 포함한 인증서 정보가 표시됩니다.
    4. KMIP 서버 인증서를 신뢰할 수 있는 키 제공자에 추가하려면 Add-TrustAuthorityKeyProviderServerCertificate를 실행합니다.
      예:
      Add-TrustAuthorityKeyProviderServerCertificate -ServerCertificate $cert
      
      인증서 정보가 표시되고 [신뢰됨] 상태가 이제 True로 나타납니다.
  6. 키 제공자의 상태를 확인합니다.
    1. 키 제공자 상태를 새로 고치려면 $kp 변수를 다시 할당합니다.
      예:
      $kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA
      참고: 신뢰할 수 있는 키 제공자가 둘 이상이면, 다음과 유사한 명령을 사용하여 원하는 항목을 선택합니다.
      Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA
      <The trusted key providers listing is displayed.>
      $kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA | Select-Object -Last 1
      

      Select-Object -Last 1를 사용하면 목록의 마지막에 있는 신뢰할 수 있는 키 제공자가 선택됩니다.

    2. $kp.Status 명령을 실행하여 키 제공자 상태를 가져옵니다.
      예:
      $kp.Status
      참고: 상태를 새로 고치는 데 몇 분 정도 걸릴 수 있습니다. 상태를 보려면 $kp 변수를 다시 할당하고 $kp.Status 명령을 다시 실행합니다.
    상태가 정상이면 키 제공자가 올바르게 실행되고 있음을 나타냅니다.

결과

신뢰할 수 있는 키 제공자가 생성되었고 키 서버와 신뢰가 설정되었습니다.

예: 신뢰 기관 클러스터에서 키 제공자 생성

이 예는 PowerCLI를 사용하여 신뢰 기관 클러스터에서 신뢰할 수 있는 키 제공자를 생성하는 방법을 보여 줍니다. 여기서는 사용자가 신뢰 기관 클러스터의 vCenter Server에 신뢰 기관 관리자로 연결되어 있다고 가정합니다. 또한 CSR을 벤더에 제출한 후 키 서버 벤더가 서명한 인증서를 사용합니다.

다음 표에는 사용되는 예제 구성 요소 및 값이 나와 있습니다.

표 1. vSphere 신뢰 기관 설정 예
구성 요소
변수 $vTA Get-TrustAuthorityCluster 'vTA Cluster'
변수 $kp Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA
변수 $cert Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers
신뢰 기관 클러스터의 vCenter Server 192.168.210.22
KMIP 준수 키 서버 192.168.110.91
KMIP 준수 키 서버 사용자 vcqekmip
신뢰 기관 클러스터 이름 vTA 클러스터
신뢰 기관 관리자 trustedadmin@vsphere.local
PS C:\Users\Administrator.CORP> Disconnect-VIServer -server * -Confirm:$false
PS C:\Users\Administrator.CORP> Connect-VIServer -server 192.168.210.22 -User trustedadmin@vsphere.local -Password 'VMware1!'

PS C:\Users\Administrator.CORP> New-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA -PrimaryKeyId 8 -Name clkp -KmipServerAddress 192.168.110.91
Name                 PrimaryKeyId         Type       TrustAuthorityClusterId
----                 ------------         ----       -----------------------
clkp                 8                    KMIP       TrustAuthorityCluster-domain-c8

PS C:\Users\Administrator.CORP> New-TrustAuthorityKeyProviderClientCertificate -KeyProvider $kp
<Export the client certificate when you need to use it.>
PS C:\Users\Administrator.CORP> Export-TrustAuthorityKeyProviderClientCertificate -KeyProvider $kp -FilePath clientcert.pem

PS C:\Users\Administrator.CORP> $kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA
PS C:\Users\Administrator.CORP> Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers

Certificate                              Trusted    KeyProviderServerId       KeyProviderId
-----------                              -------    -------------------       -------------
[Subject]...                             False      domain-c8-clkp:192.16.... domain-c8-clkp

PS C:\WINDOWS\system32> $cert.Certificate.ToString()
[Subject]
  E=<domain>, CN=<IP address>, OU=VMware Engineering, O=VMware, L=Palo Alto, S=California, C=US

[Issuer]
  O=<host>.eng.vmware.com, C=US, DC=local, DC=vsphere, CN=CA

[Serial Number]
  00CEF192BBF9D80C9F

[Not Before]
  8/10/2015 4:16:12 PM

[Not After]
  8/9/2020 4:16:12 PM

[Thumbprint]
  C44068C124C057A3D07F51DCF18720E963604B70

PS C:\Users\Administrator.CORP> $cert = Get-TrustAuthorityKeyProviderServerCertificate -KeyProviderServer $kp.KeyProviderServers
PS C:\Users\Administrator.CORP> Add-TrustAuthorityKeyProviderServerCertificate -ServerCertificate $cert

Certificate                              Trusted    KeyProviderServerId       KeyProviderId
-----------                              -------    -------------------       -------------
[Subject]...                             True                                 domain-c8-clkp

PS C:\Users\Administrator.CORP> $kp = Get-TrustAuthorityKeyProvider -TrustAuthorityCluster $vTA
PS C:\Users\Administrator.CORP> $kp.Status

KeyProviderId Health HealthDetails ServerStatus
------------- ------ ------------- ------------
domain-c8-kp4     Ok {}            {192.168.210.22}

다음에 수행할 작업

신뢰 기관 클러스터 정보 내보내기으로 계속 진행합니다.