ESXi 기본 암호 재설정하는 최상의 방법

ESXi 하이퍼바이저를 설치하는 사용자는 루트 암호를 설정해야 하지만, 사용자 및 관리자는 ESXi 기본 암호를 잊거나 분실한 경우에 변경할 수 없습니다. 이 접근 방식은 보안 측면에서 가장 좋지 않을 수 있지만, 때로는 불가피합니다.

ESXi 서버가 설정되고 구성되어 모든 것이 정상 작동할 때, 시스템 관리자는 오랜 시간 동안 ESXi 서버에 로그인하지 않을 수 있습니다. ESXi 호스트는 전원 장애나 기타 문제 후에 때로는 다시 시작될 수 있습니다. 그러나 ESXi 콘솔에서 ESXi 호스트를 다시 부팅하지 않는 경우 암호가 필요하지 않습니다. 그러나 어느 시점에서 시스템 관리자는 ESXi 서버 구성에 일부 변경을 원할 수 있습니다. 서버를 다시 구성하고 다시 설정하기 위해 필요한 루트 암호를 입력하려고만 하는데, 암호를 잊어버렸음을 발견할 수 있습니다.

이러한 상황에서 ESXi 서버에 로그인하는 방법은 무엇일까요? ESXi를 다시 설치하는 것은 좋은 해결책이 아닙니다. 왜냐하면 처음부터 새로운 구성을 만들고 VM을 생성하고 구성해야 하기 때문입니다.

ESXi 기본 암호가 있는가요? 서버를 다시 설치하지 않고 ESXi 기본 암호를 재설정하는 방법은 무엇인가요? 안심하세요, 이 질문에 대한 답변이 있습니다. 오늘의 블로그 게시물에서는 서버에 ESXi를 재설치하지 않고 루트 사용자의 ESXi 암호를 재설정하는 방법을 설명합니다.

먼저 ESXi 기본 암호가 없다는 것을 언급해야 합니다. 루트 사용자의 암호를 변경하거나 제거하는 것은 몇 가지 트릭을 사용하여만 가능합니다. 시작해 봅시다!

VMware 호스트 프로파일을 사용하여 ESXi 기본 암호 복구

VMware Host Profiles는 엔터프라이즈급 기능으로, 여러 ESXi 호스트에 대한 통일된 구성을 적용하고 다수의 ESXi 호스트를 배포하는 과정을 단순화하는 데 도움이 됩니다. 따라서 각 호스트를 수동으로 구성하는 대신 호스트 프로파일을 생성하고 vCenter에서 필요한 모든 ESXi 호스트에 적용할 수 있습니다. 또한 이 기능은 루트 사용자의 ESXi 암호를 재설정하는 데도 도움이 될 수 있습니다.

다음과 같은 시작 조건을 충족하는 경우 VMware Host Profiles를 사용하여 ESXi 루트 암호를 재설정할 수 있습니다.

  • ESXi 호스트는 vCenter에 의해 관리됩니다.
  • VMware Enterprise Plus 라이선스를 사용합니다(Host Profiles는 vSphere의 Enterprise Plus 버전 이상에서만 사용할 수 있는 기능임).

현재 예제에서는 다음과 같은 기계들이 있습니다.

  • 암호가 분실된 ESXi 서버 – 192.168.101.211
  • 암호가 알려진 ESXi 서버 – 192.168.101.215
  • vCenter Server – 192.168.101.103

VMware ESXi 6.7 및 vCenter Server Appliance 6.7가 사용됩니다.

단계별 지침

  1. 웹 브라우저에 vCenter Server의 IP 주소를 입력하여 VMware vSphere Web Client(이 경우 HTML5 vSphere Web Client)를 엽니다. 이 예제에서는 https://192.168.101.103가 필요한 주소입니다.
  2. 호스트 프로필로 이동하여 바로 가기 메뉴에서 찾으십시오.
  3. 호스트 프로필 추출을 클릭하십시오.
  4. 팝업 화면에서 호스트 프로필을 만들기 위한 기초로 사용할 ESXi 호스트를 선택하십시오. 이 예에서는 192.168.101.215가 선택되었습니다. 다음을 클릭하십시오.
  5. 새로 추출된 프로필의 이름을 입력하십시오. 예를 들어, ESXi-비밀번호를 입력하십시오. 필요한 경우 설명을 입력하십시오. 완료를 클릭하십시오.
  6. 그런 다음, 호스트 프로필 메뉴에서 최근에 생성한 호스트 프로필(이 경우 ESXi-비밀번호)을 선택하십시오. 만들어진 호스트 프로필을 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 호스트 프로필 편집을 선택하십시오.
  7. 새로운 어시스턴트 창의 왼쪽 패널에서 메뉴를 확장하고 보안 및 서비스 > 보안 설정 > 보안 > 사용자 구성 > 루트로 이동하십시오.
  8. 모든 불필요한 옵션을 선택 해제하십시오.
  9. 드롭다운 메뉴에서 고정된 암호 구성을 선택하십시오.
  10. 루트에 대한 새로운 ESXi 암호를 입력하십시오 (예: ChangeMe_357), 암호를 확인하고 저장을 누르십시오.

    참고: ESXi의 암호를 잊어 버린 경우 호스트 프로필을 추출 한 경우이 단계에서 암호를 변경해야합니다. 암호를 알고있는 ESXi 호스트에서 호스트 프로필을 추출 한 경우 암호를 변경하지 않아도됩니다.

  11. 편집 후 ESXi 암호 호스트 프로필이 저장되었습니다.
    루트 암호를 재설정해야하는 ESXi 호스트가 켜져 있는지 확인하십시오.
  12. 호스트 프로필로 이동하고 이전에 편집한 호스트 프로필(ESXi-password)을 마우스 오른쪽 버튼으로 클릭한 다음 호스트 및 클러스터 첨부/분리를 선택하세요.
  13. 루트 비밀번호를 모르는 ESXi 호스트를 선택하세요 (체크박스를 선택하세요). 우리의 경우, 이는 192.168.101.211입니다. 저장을 누르세요.
  14. 회복된 ESXi 호스트를 유지 관리 모드로 전환합니다 – 호스트 및 클러스터로 이동하여 호스트를 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 유지 관리 모드 > 유지 관리 모드로 진입를 클릭합니다. 웹 인터페이스에서 ESXi 호스트의 아이콘이 변경됩니다. ESXi 호스트에서 복구하려는 비밀번호가 있는 VM이 실행 중인 경우 VMware vSphere Client를 사용하여 모든 실행 중인 VM을 종료하거나 다른 ESXi 호스트로 이동하십시오.

    참고: 유지 관리 모드는 메모리 설치, 소프트웨어 업데이트, 패치 적용 등과 같은 ESXi 호스트가 서비스 중일 때 사용해야 하는 특별한 모드입니다. 유지 관리 모드에 진입한 후 VM을 이동하거나 종료한 후 ESXi 호스트를 다시 부팅하거나 종료할 수 있습니다.

  15. 비밀번호를 복구해야 하는 ESXi 호스트가 유지 보수 모드에 있을 때는 호스트 프로필에 이동하여 호스트 프로필을 마우스 오른쪽 버튼으로 클릭한 다음 보강을 선택합니다.
  16. 나타나는 창에서 대상 ESXi 호스트(우리의 경우 192.168.101.211)의 확인란을 선택합니다.
  17. 대상 호스트를 확인하려면 보강 사전 확인을 클릭할 수 있습니다.
  18. 마지막으로 보강을 클릭합니다.
  19. 보강이 성공적으로 완료되면 유지 보수 모드를 종료합니다(ESXi 호스트를 마우스 오른쪽 버튼으로 클릭하고 유지 보수 모드 종료를 선택합니다).
  20. ChangeMe_357비밀번호로 설정된 비밀번호를 사용하여 루트로 ESXi 호스트 콘솔에 로그인하려고 시도하십시오.

이제 모든 것이 제대로 작동해야 합니다 – 루트의 ESXi 비밀번호가 재설정되고 ESXi 호스트에 대한 액세스가 복원됩니다. 이제 ESXi 호스트에 새로운 복잡한 비밀번호를 설정할 수 있습니다.

활성 디렉터리에서 ESXi 비밀번호 복구

vSphere에 대한 Enterprise Plus 라이선스가 없다면 슬퍼할 필요가 없습니다. 최고 수준의 라이선스가 필요하지 않은 활성 디렉터리 통합을 사용하여 잊어버린 ESXi 기본 비밀번호를 재설정할 수 있습니다.

VMware vSphere는 일반적으로 사용자 및 컴퓨터의 중앙 집중식 관리에 사용되는 Active Directory와 통합될 수 있습니다. 각 ESXi 호스트를 Active Directory 도메인에 가입한 다음 Active Directory 도메인 컨트롤러에서 만든 계정을 사용하여 ESXi 호스트에 로그인할 수 있습니다. Active Directory 인증 메커니즘은 ESXi에 대한 PAM (Pluggable Authentication Module) 프레임워크의 구현 덕분에 vSphere에서 활용할 수 있습니다. 이 기능을 사용하여 호스트의 루트 사용자의 ESXi 비밀번호를 재설정할 수 있습니다. 이 방법을 사용하려면 ESXi 호스트를 vCenter로 관리해야 하며 인벤토리에 Active Directory 도메인 컨트롤러가 있어야 합니다.

참고: VMware의 ESXi 설정에서 도메인 컨트롤러의 IP 주소를 DNS 서버로 지정해야 합니다. 이는 ESXi 서버가 도메인과 도메인 컨트롤러의 이름을 해석할 수 있어야 하기 때문입니다. 기억하실 것처럼, ESXi 서버의 네트워크 설정에 있는 DNS 서버의 IP 주소는 기존 도메인 컨트롤러의 IP 주소와 다르며, 임시 머신(물리적 또는 가상)을 Active Directory 도메인 컨트롤러로 배포할 수 있습니다(ESXi 서버의 네트워크 설정에 정의된 DNS 서버 IP 주소를 도메인 컨트롤러의 IP 주소로 설정). 이렇게 하면 ESXi 서버를 임시 도메인 컨트롤러에 연결하여 도메인에 가입할 수 있습니다.

대안으로, 환경에 구성된 도메인 컨트롤러가 있다면 vSphere Client를 열고 암호를 재설정해야 할 ESXi 호스트를 선택한 다음 구성 탭으로 이동하여 네트워킹 > TCP/IP 구성을 선택하여 적절한 기존 도메인 컨트롤러의 IP 주소를 DNS 서버로 편집하거나 추가할 수 있습니다.

참고: VMware 클러스터링에 대한 전자책에서 도메인 컨트롤러를 배포하는 방법을 확인할 수 있습니다.

이 방법을 단계별로 살펴보겠습니다. 현재 예제의 입력 데이터는 다음과 같습니다:

  • 알 수 없는 root 암호를 가진 ESXi: 192.168.101.211
  • vCenter: 192.168.101.103
  • 도메인 컨트롤러: 192.168.101.21

이 예제에서는 Windows Server 2008 R2에 Active Directory 도메인 컨트롤러(ADDC)가 배포되어 있습니다.

단계별 지침

예를 들어 도메인 컨트롤러의 Active Directory 사용자 및 컴퓨터에서 새 사용자를 생성합니다. 이를 위해 서버 관리자를 열고 역할 > Active Directory 도메인 서비스 > Active Directory 사용자 및 컴퓨터 > [당신의 도메인 이름] > 사용자로 이동합니다.

  1. 클릭하여 작업 > 새로 만들기 > 사용자를 선택하고 사용자 이름으로 esxi01을 입력합니다. 다음을 클릭합니다. 이 예에서 도메인 이름은 domain.net입니다.
  2. 이제 이 esxi01 사용자의 비밀번호를 설정합니다. 예를 들어 ESXiDomain_777을 사용할 수 있습니다. 이 비밀번호는 데모를 위한 예시로만 사용되며 ESXi 호스트의 루트 액세스를 복구한 후에 강력하고 고유한 비밀번호로 변경하는 것이 좋습니다. 비밀번호 만료 없음 체크 상자를 선택합니다.
  3.  다음을 클릭한 후 마침을 선택합니다.
  4. 이제 Active Directory 도메인 컨트롤러에서 ESX Admins 그룹을 만들어야 합니다. 그룹 이름은 정확히 동일해야 합니다. ESX Admins 글로벌 보안 그룹의 멤버인 사용자들은 ESXi 호스트에 로그인한 후에 자동으로 루트 권한을 얻게 됩니다.이후에 esxi01 사용자를 이 그룹에 추가해야 합니다. 보안상의 이유로 ESXi 호스트에 로그인하기 위한 사용자를 ESX Admins 그룹에 추가하는 것이 도메인 관리자 그룹에 사용자를 추가하는 것보다 선호됩니다.
  5. 새 그룹을 만들려면 Server Manager에서 작업 > 새로 만들기 > 그룹으로 이동하십시오. 스크린샷에 표시된대로 ESX Admins로 그룹 이름을 설정하십시오.
  6. ESX Admins 그룹을 만든 후에 그룹 속성을 열고 멤버 탭에서 추가 버튼을 클릭하십시오. ESXi 사용자 계정의 이름을 입력하고 (esxi01 이 경우) 이름 확인 을 누르십시오. 이름이 올바르게 입력되고 밑줄이 그어지면, 확인 을 눌러 완료하십시오.
  7. 이제 Active Directory 도메인에 esxi01 사용자가 ESX Admins 그룹의 멤버인 상태입니다.
  8. ESXi 서버의 루트 암호를 기억하지 못하는 것이 도메인에 가입할 시간입니다. 브라우저에서 vSphere HTML5 웹 클라이언트를 엽니다.
  9. 호스트 및 클러스터를 엽니다. ESXi 호스트를 마우스 오른쪽 단추로 클릭하고 목록에서 인증 서비스를 선택한 다음 도메인 가입 버튼을 클릭합니다.
  10. 도메인 관리자 자격 증명을 사용하여 도메인에 가입합니다. 기본적으로 관리자도메인 관리자 그룹의 구성원입니다.
  11. ESXi 호스트가 도메인에 있으면 루트 암호를 복구해야하는 ESXi 호스트에 로그인하기 위해 VMware 호스트 클라이언트를 사용합니다. 브라우저에 ESXi 호스트의 IP 주소를 입력합니다. 우리의 예에서는 https://192.168.101.211를 입력해야 합니다.
  12. 사용자 이름으로 이전에 생성한 Active Directory 사용자 [email protected]와 이 사용자의 도메인 컨트롤러에서 설정한 암호(이 경우 ESXi 기본 암호로 ESXiDomain_777을 사용해야 함)를 입력합니다.
  13. ESXi 호스트에 로그인한 후에는 루트 사용자의 암호를 재설정할 수 있습니다.
  14. 관리 > 보안 및 사용자 > 사용자로 이동하여 root를 선택하고 편집 아이콘을 클릭하십시오.
  15. ESXi 호스트의 루트에 대한 새로운, 강력하고 고유한 ESXi 암호를 설정하십시오. 암호를 다시 잊지 않도록 주의하십시오!

ESXi 루트 암호를 재설정한 후에는 도메인을 사용하지 않을 경우 ESXi 호스트가 Active Directory 도메인을 떠나도록 만듭니다.

/etc/shadow를 편집하여 ESXi 암호 재설정

vCenter에서 관리되지 않는 독립형 호스트가 있는 경우 이전 두 가지 방법을 사용하여 ESXi 기본 암호를 복구할 수 없습니다. 이 방법은 거의 모든 경우에 사용할 수 있습니다.

이론

비밀번호는 ESXi 시스템 파일 중 어디에서도 평문으로 저장되어 있지 않습니다. 기본적으로 ESXi는 Linux와 유사하게 특별한 /etc/shadow 시스템 파일에 암호 해시를 저장하며 이는 루트 사용자만 액세스할 수 있습니다. 이 경우에는 비밀번호가 암호화되어 나타납니다. MD5, Blowfish, SHA-256, SHA-512 등과 같은 특수 수학 알고리즘을 사용하여 소스 비밀번호를 체크 해시 합계로 변환하는 데 사용됩니다. 해시 합계를 계산하는 데 사용되는 알고리즘은 역방향 호환되지 않습니다(단방향 암호화 사용). 따라서 원본 비밀번호를 얻기 위해 역 계산을 수행하는 것은 불가능합니다.

루트 사용자와 관련된 /etc/shadow 문자열 예제를 살펴 보겠습니다:

root:$1$xxxx$xxxxxxxx:13355:0:99999:7:::

이 문자열 및 /etc/shadow 파일의 다른 모든 문자열에는 다음 데이터가 포함되어 있습니다:

  • A user name (root);
  • A password hash that is recorded in the $id$salt$hashed format; where $id$ is the algorithm for calculating a hash sum ($1$ is MD5, $2a$ and $2y$ are Blowfish, $5$ is SHA-256, $6$ is SHA-512).
  • 가장 최근의 비밀번호 변경 날짜 – 1970년 1월 1일부터의 일수(13355);
  • 사용자가 비밀번호를 변경할 수 있는 날짜(0);
  • 사용자가 비밀번호를 변경해야 하는 날짜(99999);
  • 비밀번호 만료 전에 사용자에게 알림이 전달되어야 하는 일수(7);

필드는 콜론(:) 문자로 구분됩니다.

사용자가 비밀번호를 입력하면, 컴퓨터의 메모리에서 특별한 알고리즘을 사용하여 입력된 비밀번호가 해시 합으로 변환되고 이 해시는 /etc/shadow 시스템 파일에 저장된 해시와 비교됩니다. 해시가 일치하면 사용자가 인증되고, 인증 이후에는 적절한 권한을 받게 됩니다 (즉, 인증 이후의 다음 논리적인 단계입니다).

실습

먼저, 라이브 DVD를 준비해야 합니다. 이 예에서는 Ubuntu 18 설치 디스크를 사용할 것입니다. Ubuntu Live DVD 옵션이 포함된 Ubuntu 배포의 ISO 이미지를 공식 웹 사이트에서 다운로드할 수 있습니다. 또한 Kali Linux, BackTrack, Debian, GParted Live CD 등 다른 배포판을 사용할 수도 있습니다.

  1. ISO 이미지를 DVD-R 또는 DVD-RW 미디어에 불러오거나 부팅 가능한 USB 플래시 드라이브에 쓰세요.
  2. 비밀번호를 잊어버린 ESXi 호스트를 종료하거나 전원을 끄세요.
  3. 라이브 DVD 디스크를 DVD 드라이브에 넣거나 부팅 가능한 플래시 카드/드라이브를 해당 슬롯/포트에 넣고 해당 드라이브에서 부팅하세요.
  4. 기본적으로 선택된 설치하지 않고 시도 Ubuntu 부팅 옵션을 선택하세요.
  5. Ubuntu 터미널을 열어주세요 (데스크탑에서 오른쪽 클릭하고 터미널을 선택하세요).
  6. 루트 권한을 얻으십시오:
    sudo -i
  7. ESXi가 설치된 디스크의 파티션을 나열하십시오. 이 예에서는 ESXi가 기본 ESXi 파티션 테이블을 사용하여 별도의 디스크에 설치되었습니다:
    ls -al /dev/sd*
    fdisk -l | grep /dev/sda

    /dev/sda5 파티션에 있는 /etc/shadow 파일에 관심이 있습니다.
  8. 우분투 라이브 DVD에서 실행 중인 가상 파일 시스템에 임시 디렉토리를 만듭니다.
    mkdir /mnt/sda5-esxi 

    이 디렉토리는 /etc/shadow 파일이 저장된 파티션을 마운트하는 데 사용됩니다.

  9. 임시 파일을 저장할 디렉토리를 생성해야 합니다:
    mkdir /temp
  10. sda5 파티션을 위에서 생성한 /mnt/sda5-esxi 디렉토리에 마운트합니다:
    mount /dev/sda5 /mnt/sda5-esxi
  11. ESXi 기본 암호 복구의 일환으로 우리에게 관심이 있는 stage.tgz 파일이 마운트된 디렉토리에 있는지 확인합니다:
    ls -al /mnt/sda5-esxi/state.tgz
  12. state.tgz 아카이브에서 파일을 임시 디렉토리로 추출하십시오:
    tar -xf /mnt/sda5-esxi/state.tgz -C /temp/
  13. local.tgz 파일이 state.tgz 파일에서 추출되었습니다. 다른 아카이브 내부에 아카이브가 있습니다.
  14. local.tgz 파일에서 파일을 추출하십시오:
    tar -xf /temp/local.tgz -C /temp/
  15. local.tgz 파일은 임시 디렉토리에서 삭제할 수 있습니다:
    rm /temp/local.tgz
  16. /etc/shadow 파일을 텍스트 편집기에서 엽니다. Ubuntu에 미리 설치된 vi를 사용하겠습니다:
    vi /temp/etc/shadow
  17. 이 파일의 내용을 편집하십시오. ESXi root 암호를 재설정하려면 root를 포함하는 문자열을 편집하십시오. $6$는 SHA-512 알고리즘을 사용하고 있음을 나타냅니다. 비밀번호 해시는 위의 스크린샷에서 노란색으로 표시됩니다.
  18. 첫 번째 및 두 번째 콜론 사이의 이 텍스트를 삭제하십시오:
    root::13358:0:99999:7:::
  19. 변경 사항을 저장하고 종료하십시오:
    :wq
  20. /temp/ 디렉토리로 이동하십시오:
    cd /temp
  21. 이제 shadow 파일을 아카이브에 다시 추가해야 합니다. 아카이브 다시 패킹:
    tar -czf local.tgz etc
    tar -czf state.tgz local.tgz
  22. 삭제된 root 암호가 있는 새 아카이브를 sda5 파티션의 표준 위치로 이동하십시오. 이 위치는 /mnt/sda5-esxi/ 디렉토리에 마운트됩니다:
    mv state.tgz /mnt/sda5-esxi/
  23. /dev/sda5 파티션을 /mnt/sda5-esxi/ 디렉토리에서 마운트 해제하십시오:
    umount /mnt/sda5-esxi
  24. 서버를 재부팅하고 부팅 가능한 DVD 또는 플래시 미디어를 제거하십시오:
    init 6
  25. ESXi 서버가 부팅되면 인증 화면이 표시되므로 F2를 누릅니다.
  26. 로그인 이름은 root로 두고 비밀번호 필드는 비워 둡니다. 그런 다음 Enter를 누릅니다.
    축하합니다! 이제 비밀번호 없이 ESXi 서버의 콘솔 관리 인터페이스에 로그인할 수 있습니다.
  27. 이제 새로운 ESXi 암호를 설정하고 이번에는 암호를 기억하도록 노력하십시오. 이제 ESXi 호스트에서 필요한 모든 구성을 할 수 있습니다.

state.tgz 아카이브를 교체하여 ESXi 기본 암호 변경하기

이 방법은 이전에 논의된 방법과 유사합니다. 리눅스 콘솔에서 아카이브의 패킹/언패킹 및 /etc/shadow 파일 편집을 수행하여 ESXi 기본 암호를 재설정하고 싶지 않다면, 다른 ESXi 호스트에서 /etc/shadow 파일을 복사할 수 있습니다.

하나 이상의 ESXi 호스트가 있고 적어도 하나의 ESXi 호스트의 암호를 알고 있다면, 잊어버린 ESXi 호스트의 암호를 알고 있는 ESXi 호스트로부터 /etc/shadow 파일을 복사할 수 있습니다. 하나의 ESXi 호스트만 있는 경우에도 이 방법을 사용할 수 있습니다. 이 경우, 사용 가능한 하이퍼바이저(예: VMware Player 또는 VMware Workstation)에 ESXi를 실행하는 가상 머신을 배포해야 합니다. ESXi 호환의 미사용된 물리적 컴퓨터가 있다면 그것을 사용할 수도 있습니다. 현재 예에서는 VMware Workstation에서 실행되는 ESXi를 사용합니다.

간단히 말해서, ESXi 기본 암호를 재설정하는 이 방법의 주요 포인트는 다음과 같습니다:

  • 가상 ESXi에서 ESXi의 새 암호를 설정합니다(예: ChangeMe_567);
  • 그 가상 ESXi의 /etc/shadow 파일을 복사하여 복구해야 하는 ESXi에 액세스합니다. 전체 state.tgz 아카이브를 복사할 수도 있습니다;
  • ESXi 서버를 다시 부팅하고 가상 ESXi 호스트에 설정한 암호(ChangeMe_567)를 사용합니다.

단계별 지침

이 방법을 자세히 살펴보겠습니다.

먼저 VM을 배포하고 해당 VM에 ESXi를 설치하십시오. ESX의 버전은 물리적 ESXi의 버전과 유사해야 합니다. 예를 들어, 6.7 및 6.7, 6.7 및 6.5, 6.0 및 6.5 등입니다. VM에 ESXi를 설치하는 과정은 저희 블로그 글인 VMware 홈 랩에 관한 설명서에서 설명되어 있습니다. ESXi 설치에 대한 상호작용 설치에 관한 블로그 글도 읽어보실 수 있습니다.

  1. 알고 계신 ESXi 호스트에서 수행되는 작업
  2. 루트 암호를 알고 있는 ESXi를 실행 중인 VM을 종료합니다.
  3. VM의 가상 광학 드라이브에 Ubuntu 설치 ISO 이미지를 삽입합니다.VM을 시작하고 Ubuntu ISO 이미지에서 부팅합니다. 부트로더 옵션에서 ‘설치하지 않고 Ubuntu 실행’을 선택하십시오.
  4. USB 플래시 드라이브를 삽입하고 USB 플래시 드라이브를 VM에 연결합니다 (USB 통과 기능을 사용하여 이 작업을 수행할 수 있습니다).
  5. Ubuntu 데스크톱에서 USB 플래시 드라이브 아이콘을 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 ‘터미널에서 열기’를 선택하십시오.
  6. 우리의 경우, USB 플래시 드라이브의 경로는 /media/Ubuntu/USB16_STR입니다.귀하의 경우 경로는 다음과 같은 모습을 가질 수 있습니다: /media/Ubuntu/[flash_name]; 여기서 [flash_name]은 디스크 레이블로도 불립니다.
  7. 루트 권한을 얻으세요:
    sudo su
  8. ESXi 디스크 드라이브의 사용 가능한 파티션을 확인하세요:
    fdisk -l | grep /dev/sda
  9. Ubuntu Live DVD가 사용하는 가상 환경에 필요한 파티션을 마운트할 디렉토리를 만드세요:
    mkdir /mnt/sda5-esxi
  10. 압축된 shadow 파일이 있는 state.tgz 아카이브가 포함된 파티션을 마운트하세요:
    mount /dev/sda5 /mnt/sda5-esxi/
  11. USB 플래시 드라이브(현재 디렉토리이며 점(.)으로 표시됩니다)로 복사하세요. 여기서 state.tgz 아카이브는 /etc/shadow 파일을 포함합니다:
    cp /mnt/sda5-esxi/state.tgz .
  12. state.tgz 파일이 복사되었는지 확인하세요:
    ls -al
  13. 이전에 만든 디렉토리에서 파티션을 마운트 해제하세요:
    umount /mnt/sda5-esxi/
  14. 가상 머신을 종료하세요:
    init 0
  15. 이제 state.tgz 파일이 기록된 USB 플래시 드라이브를 제거하고 이를 ESXi 서버의 USB 포트에 삽입하여 ESXi 루트 암호를 재설정하세요.
  16. 물리적 서버의 DVD 드라이브에 Ubuntu 설치 DVD 디스크를 삽입하세요. 부팅 가능한 플래시 드라이브를 만들었다면 부팅 가능한 미디어로 사용할 수 있습니다.

암호가 잊혀진 ESXi 호스트에서 수행한 작업

  1. ESXi 서버를 종료하고 로그인할 수 없는 경우 우분투 설치 미디어를 삽입하세요 (DVD 드라이브에 DVD 디스크를 삽입하거나 USB 포트에 USB 플래시 드라이브를 삽입하세요). 이 ESXi 서버에서 VM이 실행 중인 경우, 하이퍼바이저를 종료하기 전에 VM을 제대로 종료하는 것을 잊지 마세요.
  2. ESXi 서버를 켜고 우분투 설치 미디어로 부팅하세요.
  3. 부트 로더 옵션에서 설치하지 않고 Ubuntu 시험해 보기를 선택하세요.
  4. 우분투 라이브 DVD가 로드되면 우분투 데스크톱에서 USB 플래시 아이콘을 마우스 오른쪽 버튼으로 클릭하고 터미널에서 열기를 선택하세요.
  5. 이전에 명령을 실행한 것과 같은 방식으로 명령을 실행하세요:
    sudo su
    fdisk -l | grep /dev/sda
    mkdir /mnt/sda5-esxi
    mount /dev/sda5 /mnt/sda5-esxi/
  6. 알려지지 않은 ESXi 루트 비밀번호의 해시를 포함한 원본 state.tgz 파일의 이름을 변경하세요:
    mv /mnt/sda5-esxi/state.tgz /mnt/sda5-esxi/state-old.tgz
  7. USB 플래시 드라이브(현재 디렉터리입니다)에서 state.tgz 파일을 state.tgz 파일의 원래 위치인 디렉터리로 복사하세요:
    cp ./state.tgz /mnt/sda5-esxi
  8. 파일이 복사되었는지 확인하십시오(시간과 날짜를 확인하여 모든 것이 정상인지 확인하십시오):
    ls -al /mnt/sda5-esxi/state.tgz
  9. 이전에 마운트한 디스크 파티션을 마운트 해제하십시오:
    umount /mnt/sda5-esxi/
  10. 서버를 종료하십시오:
    init 0
  11. Ubuntu 설치 미디어와 state.tgz를 복사한 USB 플래시 드라이브를 제거하십시오.
  12. ESXi 호스트를 보통대로 전원을 켜십시오.
  13. ESXi에서 실행 중인 VM의 root 사용자의 비밀번호를 사용하여 로그인하십시오.

모든 것이 이제 괜찮아야합니다. ESXi 콘솔에 로그인한 후에는 ESXi 비밀번호 설정에서 새로운 강력한 비밀번호를 설정하고 기억하지 않도록하십시오.

결론

ESXi 루트 비밀번호를 잊어버렸을 때 ESXi 기본 비밀번호로 재설정할 수 없습니다. ESXi 루트 사용자에 대한 기본 비밀번호가 없기 때문입니다. 잊어버린 ESXi 비밀번호를 변경하는 데 사용할 메소드를 선택하는 것은 몇 가지 요인에 따라 달라집니다. – ESXi 호스트가 vCenter에서 접근 가능한지 여부, Enterprise Plus 라이센스를 가지고 있는지 여부 및 다른 ESXi 호스트에 알려진 루트 비밀번호가 있는지 여부. 네 가지 메소드를 모두 알면 거의 모든 경우에 ESXi 호스트에 대한 액세스를 복원할 수 있습니다.

ESXi 호스트에서 사용하는 비밀번호가 무엇이든, 가상 머신의 백업을 잊지 마십시오. VM 백업을 가지고 있으면 데이터를 보호하고 돈과 시간을 절약할 수 있습니다. NAKIVO 백업 및 복제에 대해 더 알아보고 가상 환경에서 테스트해 보세요.

Source:
https://www.nakivo.com/blog/best-way-reset-esxi-default-password/