CA에서 서명된 인증서를 받아 VMCA 루트 인증서로 만든 후에는, 모든 시스템 SSL 인증서를 교체할 수 있습니다.

이러한 단계는 VMCA를 인증 기관으로 사용하는 인증서로 교체하는 단계와 기본적으로 동일합니다. 하지만 이 경우에는 VMCA가 전체 체인으로 모든 인증서에 서명합니다.

각 시스템마다 다른 서비스와의 보안 통신을 위한 시스템 SSL 인증서가 있어야 합니다. 다중 노드 배포에서는 각 노드에서 시스템 SSL 인증서 생성 명령을 실행해야 합니다. --server 매개 변수를 사용하여 외부 Platform Services Controller가 포함된 vCenter Server에서 Platform Services Controller를 가리킵니다.

사전 요구 사항

각 시스템 SSL 인증서에 대해 SubjectAltNameDNS Name=<Machine FQDN>이 포함되어야 합니다.

프로시저

  1. 새 인증서가 필요한 각 시스템에 대해 certool.cfg 사본 하나를 만듭니다.
    다음 위치에서 certool.cfg를 찾을 수 있습니다.
    Windows
    C:\Program Files\VMware\vCenter Server\vmcad
    Linux
    /usr/lib/vmware-vmca/share/config/
  2. 해당 시스템의 FDQN을 포함하도록 각 시스템의 사용자 지정 구성 파일을 편집합니다.
    시스템의 IP 주소에 대해 NSLookup을 실행하여 이름의 DNS 목록을 확인하고 이 이름을 파일의 Hostname 필드에 사용합니다.
  3. 공개/개인 키 파일 쌍과 각 시스템에 대한 인증서를 생성하고 직전에 사용자 지정한 구성 파일에 전달합니다.
    예:
    certool --genkey --privkey=machine1.priv --pubkey=machine1.pub
    certool --gencert --privkey=machine1.priv --cert machine42.crt --Name=Machine42_Cert --config machine1.cfg
  4. 모든 서비스를 중지하고 인증서 생성, 전파 및 저장을 처리하는 서비스를 시작합니다.
    서비스 이름은 Windows와 vCenter Server Appliance에서 서로 다릅니다.
    참고: 환경에서 외부 Platform Services Controller를 사용하는 경우 vCenter Server 노드에서 VMware Directory Service(vmdird) 및 VMware Certificate Authority(vmcad)를 중지하고 시작할 필요가 없습니다. Platform Services Controller에서 이러한 서비스가 실행됩니다.
    Windows
    service-control --stop --all
    service-control --start VMWareAfdService
    service-control --start VMWareDirectoryService
    service-control --start VMWareCertificateService
    
    vCenter Server Appliance
    service-control --stop --all
    service-control --start vmafdd
    service-control --start vmdird
    service-control --start vmcad
    
  5. VECS에 새 인증서를 추가합니다.
    모든 시스템은 SSL을 통해 통신하려면 로컬 인증서 저장소에 새 인증서가 필요합니다. 먼저 기존 항목을 삭제한 다음 새 항목을 추가합니다.
    vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT  
    vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert machine1.cert
    --key machine1.priv
  6. 모든 서비스를 다시 시작합니다.
    service-control --start --all
    

예: 시스템 SSL 인증서 교체(VMCA가 중간 CA)

  1. SSL 인증서에 대한 구성 파일을 만들고 이를 현재 디렉토리에 ssl-config.cfg로 저장합니다.
    Country = US
    Name = vmca-<PSC-FQDN-example>
    Organization = VMware
    OrgUnit = VMware Engineering
    State = California 
    Locality = Palo Alto
    Hostname = <FQDN>
  2. 시스템 SSL 인증서에 대한 키 쌍을 생성합니다. 이 명령을 각 관리 노드 및 Platform Services Controller 노드에서 실행합니다. --server 옵션은 필요 없습니다.
    C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --genkey --privkey=ssl-key.priv --pubkey=ssl-key.pub
    

    ssl-key.privssl-key.pub 파일이 현재 디렉토리에 생성됩니다.

  3. 새 시스템 SSL 인증서를 생성합니다. 이 인증서는 VMCA에 의해 서명됩니다. VMCA 루트 인증서를 사용자 지정 인증서로 교체한 경우 VMCA가 전체 체인을 사용하여 모든 인증서에 서명합니다.
    • Platform Services Controller 노드 또는 포함된 설치의 경우:
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg
    • vCenter Server의 경우(외부 설치):
      C:\>"C:\Program Files\VMware\vCenter Server\vmcad\"certool --gencert --cert=new-vmca-ssl.crt --privkey=ssl-key.priv --config=ssl-config.cfg --server=<psc-ip-or-fqdn>

    new-vmca-ssl.crt 파일이 현재 디렉토리에 생성됩니다.

  4. (선택 사항) VECS의 내용을 나열합니다.
    "C:\Program Files\VMware\vCenter Server\vmafdd\" vecs-cli store list
    • Platform Services Controller의 샘플 출력:
      MACHINE_SSL_CERT
      TRUSTED_ROOTS
      TRUSTED_ROOT_CRLS
      machine
    • vCenter Server의 샘플 출력:
      output (on vCenter):
      MACHINE_SSL_CERT
      TRUSTED_ROOTS
      TRUSTED_ROOT_CRLS
      machine
      vpxd
      vpxd-extension
      vsphere-webclient
      sms
  5. VECS의 시스템 SSL 인증서를 새로운 시스템 SSL 인증서로 교체합니다. --store--alias 값은 기본 이름과 정확하게 일치해야 합니다.
    • Platform Services Controller에서 다음 명령을 실행하여 MACHINE_SSL_CERT 저장소의 시스템 SSL 인증서를 업데이트합니다.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv
      
    • 각 관리 노드 또는 내장된 배포에서는 다음 명령을 실행하여 MACHINE_SSL_CERT 저장소의 시스템 SSL 인증서를 업데이트합니다. FQDN이 서로 다르므로 각 시스템용 인증서를 개별적으로 업데이트해야 합니다.
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry delete --store MACHINE_SSL_CERT --alias __MACHINE_CERT
      C:\>"C:\Program Files\VMware\vCenter Server\vmafdd\"vecs-cli entry create --store MACHINE_SSL_CERT --alias __MACHINE_CERT --cert new-vmca-ssl.crt --key ssl-key.priv