새 VMCA 서명 루트 인증서를 생성한 후에는 환경의 모든 시스템 SSL 인증서를 교체할 수 있습니다.

이 태스크 정보

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

필수 조건

모든 서비스를 중지하고 인증서 전파 및 저장을 처리하는 서비스를 시작할 준비를 마칩니다.

프로시저

  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 machine1.crt --Name=Machine1_Cert --config machine1.cfg
  4. 모든 서비스를 중지하고 인증서 생성, 전파 및 저장을 처리하는 서비스를 시작합니다.

    서비스 이름은 Windows와 vCenter Server Appliance에서 서로 다릅니다.

    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
    

시스템 인증서를 VMCA 서명 인증서로 교체

  1. SSL 인증서에 대한 구성 파일을 만들고 이를 현재 디렉토리에 ssl-config.cfg로 저장합니다.

    Country = US
    Name = vmca-<PSC-FQDN-example>
    Organization = <my_company>
    OrgUnit = <my_company Engineering>
    State = <my_state> 
    Locality = <mytown>
    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
      

다음에 수행할 작업

ESXi 호스트의 인증서를 교체할 수도 있습니다. vSphere 보안 자료를 참조하십시오.

다중 노드 배포에서 루트 인증서를 교체한 후에는 외부 Platform Services Controller 노드가 포함된 모든 vCenter Server에서 서비스를 다시 시작해야 합니다.