Redefinindo uma senha raiz do ESXi

7

Acabei de herdar uma configuração de VM muito simples com um par de servidores ESXi em cluster e tudo está praticamente conectado. Problema é que eu não tenho as senhas de raiz para os servidores e ninguém tem idéia do que são (adivinhação de senha foi tentada).

Pelo que entendi, o ESXi não tem um modo de usuário único ou algo equivalente. Quais são as minhas opções para fazer o backup das VMs e atacar o site?

    
por Daniel Goldberg 06.03.2014 / 21:13

4 respostas

9

Para o ESXi , o único método suportado para alterar a senha é reinstalar.

Reinstalling the ESXi host is the only supported way to reset a password on ESXi. Any other method may lead to a host failure or an unsupported configuration due to the complex nature of the ESXi architecture. ESXi does not have a service console and as such traditional Linux methods of resetting a password, such as single-user mode do not apply.

Se você tiver dois hosts e eles tiverem os recursos para suportá-lo, você poderá o vMotion (e / ou o Storage vMotion) todos os servidores em um único host, remover e reconstruir o host vazio e adicioná-lo novamente ao cluster. Em seguida, mova todos os convidados para o host reconstruído e remova / recrie o host restante. Isso permitiria que você reconstruísse sem incorrer em qualquer tempo de inatividade dos convidados. Dependendo da sua infraestrutura e dependendo do número de máquinas virtuais a serem movidas, os dois hosts devem levar menos de um dia para serem reconstruídos, a menos que você tenha uma configuração de host extraordinariamente grande ou complexa.

Além disso, se você estiver em uma versão mais antiga do ESXi, esse também seria um bom momento para verificar seu hardware atual em relação à HCL e passar para a versão mais recente, se suportado (após atualizar seu servidor vCenter primeiro, é claro).

Com relação aos métodos não suportados que mencionarei, mas não necessariamente aconselho.

  • Use o vCenter para unir cada host a um domínio do AD e configurar e configurar um usuário do AD como administrador do host e permitir a autenticação do AD. Use o cliente vSphere para se conectar diretamente ao host usando as credenciais do AD para efetuar login. Uma vez conectado dessa maneira, você poderá alterar a senha da conta raiz por meio do cliente vSphere conectado diretamente ao host. Eu usei isso em uma pitada e isso funciona.
  • Gere um perfil de host que especifique a senha e anexe-a ao host. Isso pode ser feito, mas ainda requer que o host seja colocado no modo de manutenção. Não usei este método pessoalmente.
por 06.03.2014 / 21:17
10

Existem métodos para redefinir a senha de root de um host ESXi, desde que você tenha acesso físico ou fora de banda ao servidor.

  • Eu fiz isso com Host Profiles , reaplicando o perfil coletado de outro host para o servidor afetado. Mas você provavelmente não tem o licenciamento para suportar isso.
  • Eu também tenho que usar o CD de inicialização / Live Abordagem de CD ( também aqui ), que pressupõe algum conhecimento sobre o Linux e envolve a configuração de uma senha vazia ou uma senha criptografada conhecida no arquivo shadow.

Sobre como isso pode acontecer ... Documentação ruim, administradores mal finalizados, um técnico de data center que deixou o CAPS-LOCK ligado ao construir os servidores, minha memória ruim , etc, :)

    
por 06.03.2014 / 21:32
1

A senha de root do ESXi é criptografada e armazenada em um arquivo chamado / ect / shadow. Assim como este artigo explica que você pode remover a senha de root com as seguintes etapas:

  1. Inicialize seu servidor no Live CD do Ubuntu.
  2. Descompacte o state.tgz e depois o local.tgz, exclua o hash da senha dentro do arquivo shadow e reempacote o archive.
  3. Depois disso, você pode fazer logon no host ESXi como a conta raiz sem uma senha.
por 30.11.2014 / 05:34
-3

Para o ESXi 6 trabalhar para mim:

# https://www.linkedin.com/pulse/reset-esxi-root-password-through-vcenter-esxcli-method-buschhaus
#First, setup $vmhosts. You can do this many ways.$vmhosts = Get-Cluster -Name ClusterWithUnknownPassword | Get-VMHost

# Just so it contains one or more VMHost objects.
# To reset all ESXi host passwords use
# $vmhosts = Get-VMHost

$NewCredential = Get-Credential -UserName "root" -Message "Enter an existing ESXi username (not vCenter), and what you want their password to be reset to."

Foreach ($vmhost in $vmhosts) {
    $esxcli = get-esxcli -vmhost $vmhost -v2 #Gain access to ESXCLI on the host.
    $esxcliargs = $esxcli.system.account.set.CreateArgs() #Get Parameter list (Arguments)
    $esxcliargs.id = $NewCredential.UserName #Specify the user to reset
    $esxcliargs.password = $NewCredential.GetNetworkCredential().Password #Specify the new password
    $esxcliargs.passwordconfirmation = $NewCredential.GetNetworkCredential().Password
    Write-Host ("Resetting password for: " + $vmhost) #Debug line so admin can see what's happening.
    $esxcli.system.account.set.Invoke($esxcliargs) #Run command, if returns "true" it was successful.
}
    
por 12.04.2017 / 10:39