본문 바로가기
Private & Public Cloud/VMware vSphere

ESXi 호스트 & vCenter 인증서 확인 및 갱신(CLI, GUI 환경)

by TwoJun 2025. 3. 31.

1. ESXi 호스트 인증서 확인 및 갱신 (GUI)

1-1. ESXi 호스트 인증서란?

(1) vCenter와 ESXi 호스트 간 통신을 암호화하고 상호 인증을 가능하도록 하는 인증서를 의미한다.

 

(2) ESXi 호스트는 부팅 시 자체 서명을 통해 인증서를 자동 생성하거나, vCenter에 호스트를 Join 하게 되면 VMCA(vSphere Certificate Authority)에서 발급된 인증서를 받을 수 있게 된다.

 

 

 

 

1-2. 호스트 인증서 조회 (GUI, vSphere Web Client)

(1) 호스트 > 구성 > 시스템 > 인증서에서 조회 가능

 

 

 

 

1-3. 호스트 인증서 조회(ESXi CLI)

(1) 경로 : /etc/vmware/ssl


(2) rui.crt

- 공개 인증서

 

(3) rui.key

- 개인 키

 

 

(4) 인증서 전체 정보 조회 

- openssl x509 -in /etc/vmware/ssl/rui.crt -text -noout

 

 

(5) 인증서 유효기간만 확인

- openssl x509 -in /etc/vmware/ssl/rui.crt -noout -dates

 

 

 

 

1-4. 호스트 인증서 갱신 (GUI)

(1) 갱신 이전 유효기간 날짜 

 

 

(2) 인증서 상단 [갱신] 버튼으로 인증서 갱신 후 유효기간 최신화 확인 

 

(3) 갱신 후 새롭게 갱신된 인증서로 vCenter와 연결을 맺는 과정에서 호스트와 vCenter 간 일시적인 연결 끊김이 발생할 수도 있지만 호스트 내부 서비스에는 영향이 없다

- 연결이 끊기더라도 일시적이고 다시 Join된다.

 

(4) 또한 vSphere HA가 활성화되어 있다면, HA Agent가 재시작된다.

 

 

 

 

1-5. 호스트 인증서 갱신(CLI)

(1) CLI에서 갱신 이전 유효기간 

 

 

(2) 해당 과정에서 vpxd 서비스가 끊기기 때문에 ESXi 호스트와 vCenter 간 연결이 끊어져서 테스트 진행 시엔 vCenter에서 해당 호스트를 다시 Join 해주어야 했다. 

 

 

(3) 인증서 유효기간이 최신화되었다.

 

 

 

 

 

 

 

 

 

 

2. vCenter 인증서 확인 (CLI, GUI) 

2-1. vCenter 인증서 확인(CLI)

(1) for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list | grep -v TRUSTED_ROOT_CRLS); do echo "[*] Store :" $store; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $store --text | grep -ie "Alias" -ie "Not After";done;

 

(2) 해당 커맨드로 vCenter 인증서 조회 시 STS_CERT, VMCA_ROOT_CERT는 조회되지 않는다.

 

(3) vCenter GUI에서 나타나는 대표적인 4가지 인증서 종류 

* __MACHINE_CERT

* STS_CERT

* VMCA_ROOT_CERT

* TRUSTED_ROOTS

 

 

(4) /usr/lib/vmware-vmafd/bin/vecs-cli에 저장된 인증서

  * __MACHINE_CERT, TRUSTED_ROOTS

 

 

(5) STS_CERT 인증서의 경우 아래 스크립트로 별도 확인

 /usr/lib/vmware-vmafd/bin/vmafd-cli get-domain-name --server-name localhost

 

> ldapsearch -H ldap://localhost -D "cn=SSO_USERNAME,cn=users,dc=SSO_domain_1,dc=SSO_domain_2" -w 'SSO_PASSWORD' -b "cn=tenantcredential-1,cn=SSO_domain_1+SSO_domain_2,cn=Tenants,cn=IdentityManager,cn=Services,dc=SSO_domain_1,dc=SSO_domain_2" userCertificate -o ldif-wrap=no | sed -s -n '11,12p' | sed 's/userCertificate:: //'| awk '{print $1} {print $2}'

 

> DMN="$(/usr/lib/vmware-vmafd/bin/vmafd-cli get-domain-name --server-name localhost)"; DMN_DN="dc=$(echo "$DMN" | sed -e 's/\./\,dc=/g')"; ldapsearch -H ldap://localhost -D "cn=administrator,cn=users,$DMN_DN" -W -b "cn=tenantcredential-1,cn=$DMN,cn=Tenants,cn=IdentityManager,cn=Services,$DMN_DN" userCertificate -o ldif-wrap=no | sed -s -n '11p' | sed 's/userCertificate:: //' | awk '{print "-----BEGIN CERTIFICATE-----\n"$0"\n-----END CERTIFICATE-----"}'|openssl x509 -noout -text -in /dev/stdin

 

 

 

(6) STS_CERT 인증서 - checksts.py로 확인

- winscp, scp command를 통해  /tmp 경로에 checksts.py 파일 생성

- cd /tmp

- python ./checksts.py

 

 

(6) VMCA_ROOT

> /usr/lib/vmware-vmca/bin/certool --getrootca --cert=vmca.crt | grep -i "Not After"

 

(7) certool

- 인증서와 키를 생성하고 관리하는 VMCA(VMware Certificate Authority)의 일부이다.

 

(8) vecs-cli

- VMware Certificate Store 인스턴스의 컨텐츠를 관리한다. VMAFD(VMware Authentication Framework Daemon)의 일부이다.

 

 

 

 

2-2. vCenter 인증서 확인(GUI)

(1) 시스템 SSL 인증서 : __MACHINE_CERT

 

(2) STS 인증서 : STS_CERT

 

(3) VMware Certificate Authority : VMCA_ROOT_CERT

 

(4) TRUSTED_ROOTS

 

 

 

 

 

 

 

 

 

3. vCenter 인증서 갱신

3-1. vCenter 인증서 갱신(CLI, GUI) : STS 인증서

(1) STS 인증서 갱신 방법

- STS 인증서 만료 이전에는 vCenter UI에서 인증서 갱신이 가능하다.

 

 

(2) 아래와 같이 /tmp 경로로 이동 

- /tmp 경로에 fixsts.sh 파일 필요

 

 

(3) chmod +x으로 파일 실행 권한을 주고 아래의 스크립트 실행

 

 

(4) fixsts.sh 스크립트를 실행한다.

 

 

(5) administrator@vsphere.local SSO Domain의 패스워드를 입력한다.

 

 

(6) 해당 SSO 도메인에 대한 STS 인증서 갱신이 완료된다.

- 갱신 완료 후 vCenter 서비스 재시작 필요 (vCenter 재시작 과정에서 서비스가 올라올 때가지 vCenter에 일시적으로 접속할 수 없지만 운영 중인 서비스에 대한 영향도는 없다.) 

 

 

(7) STS_CERT 인증서 유효일자가 갱신된 것을 확인할 수 있다.

 

(8) STS 서명 인증서 > 작업 > vCenter 인증서로 새로 고침 메뉴에서 STS 서명 인증서 갱신이 가능하다.

 

 

 

 

3-3. vCenter 인증서 갱신(CLI) : vCenter Certificate Manager : VMCA 인증서 갱신 후 나머지 인증서까지 갱신

(1) vCenter Certificate Manager에 접속한다.

- 인증서 갱신 이전 vCenter에 대한 백업 또는 스냅샷 데이터를 생성해 둔다.

- vCenter Certificate Manager를 통해 Machine SSL, VMCA, Solution User 인증서를 갱신할 수 있다.

- Certificate Manager 경로 : /usr/lib/vmware-vmca/bin/certificate-manager

 

(2) 4번 옵션으로 VMCA 인증서 갱신 이후 나머지 인증서까지 갱신할 수 있다.

 

 

(3) 4번 옵션을 실행하면 username, password를 입력해야 한다. Administrator@vsphere.local을 입력하고 이에 맞는 패스워드까지 입력한다.

# 설정값 확인

cat /usr/lib/vmware-vmca/share/config/certool.cfg

 

# Hostname FQDN 확인
hostname -f

 

# VMCA Name 확인 (vCenter Server Appliance)
/usr/lib/vmware-vmafd//bin/vmafd-cli get-pnid --server-name localhost

 

(4) hostname에는 hostname -f으로 조회된 vCenter FQDN을 입력한다.

- 4, 8번 옵션으로 인증서 갱신 시 입력해야 하는 IP Address, Hostname, VMCA Name까지는 정확히 입력해 주는 것이 좋다.

 

 

 

 

3-2. vCenter 인증서 갱신(GUI) : __MACHINE_CERT

(1) 시스템 SSL 인증서 : __MACHINE_CERT                                                                                                                          - vCenter 인증서 관리 >  시스템  SSL 인증서 > 작업 >  갱신

 

(2) 테스트 이전 유효일자 : 2027.03.11

 

(3) 인증서가 갱신되어 유효일자가 변경된 것을 확인할 수 있다.

 

(4) 시스템 인증서(MACHINE_CERT)의 경우 vCenter가 특정 시스템과 안전하게 통신할 수 있도록 보장해주는 역할을 수행하기 때문에 갱신 과정에서 vSphere Web Client와 잠깐의 연결이 끊긴다. (운영 중인 서비스에 영향도는 없다.)

 

 

 

 

 

 

 

 

댓글