A ILOM de DB Nodes e Storage Cell de um Exadata não é algo que costumamos acessar tão frequentemente, sendo mais comum durante manuntenções do hardware ou de atualização do Exadata Software.

Alguns ambientes podem ter a chave ssh compartilhada entre o servidor (DB Node ou Storage Cell) e sua respectiva ILOM, o que facilita o acesso via ssh em condições normais, quando todos os nodes estão online. Mas considerando um cenário de manuntenção que envolve restart do servidor, ter conhecimento da senha do root da ILOM para um acesso externo em caso de emergência é um ponto importante a se considerar.

Este post pode ser útil em cenários em que você não tem conhecimento da senha do usuário ROOT da ILOM de um DB Node ou Storage Cell de um Exadata, ou até mesmo quando tem conhecimento da senha, mas a conta do usuário foi bloqueada por excesso de tentativas de login com uma senha incorreta.

Comandos Básicos Para Ter na Sua Caixa de Ferramentas

Utilizamos o utilitário ipmitool que está presente em todos os nodes, os comandos precisam ser executados a partir do respectivo Node associado com a ILOM.

Exemplo A: Se você quer alterar a senha do root na ILOM do DB Node 1, você precisa estar conectado como root no DB Node 1.

Exemplo B: Se você quer alterar a senha do root da ILOM do Storage Cell 3, você precisa estar conectado como root no Storage Cell 3.

1) Listando usuários

ipmitool user list 1

2) Verificando se o usuário está bloqueado

ipmitool sunoem cli "show /SP/users/root" | grep locked

3) Desbloqueando o usuário

ipmitool sunoem cli "set /SP/users/root locked=false"

4) Resetando a senha atual (colocando qualquer uma senha sem saber a senha atual)

ipmitool user set password 0x02 nova_senha

Demonstração

1) Listando usuários existentes na ILOM

O resultado pode variar de um ambiente para o outro se algum usuário adicional foi criado, mas esse é o padrão:

[root@exadb01 ~]# ipmitool user list 1
ID  Name             Callin  Link Auth  IPMI Msg   Channel Priv Limit
1                    false   false      true       USER
2   root             false   false      true       ADMINISTRATOR
3   MSUser           true    false      true       ADMINISTRATOR
4   orarom           true    false      true       ADMINISTRATOR
12  default          true    false      true       NO ACCESS

2) Verificando Se a Conta Está Bloqueada

No resultado abaixo, você deve observar a Propriedade “locked”, onde o valor “true” indica que o usuário está bloqueado.

[root@exadb01 ~]# ipmitool sunoem cli "show /SP/users/root"
Connected. Use ^D to exit.
-> show /SP/users/root

 /SP/users/root
    Targets:
        ssh

    Properties:
        role = aucro
        password = *****
        locked = true    <<<<============== Usuário bloqueado

    Commands:
        cd
        set
        show

-> Session closed
Disconnected

Exemplo verificando em todos os DB Nodes, usando o grep para filtrar o resultado ao que interessa neste contexto:

[root@exadb01 ~]# dcli -g ~/dbs_group -l root 'ipmitool sunoem cli "show /SP/users/root"' | grep locked
exadb01: locked = true
exadb02: locked = true
exadb03: locked = true
exadb04: locked = true

3) Desbloqueando a Conta do ROOT

Para desbloquear a conta do usuário, usamos a opção “set” para alterar a Propriedade com o valor “false”:

[root@exadb01 ~]# ipmitool sunoem cli "set /SP/users/root locked=false"
Connected. Use ^D to exit.
-> set /SP/users/root locked=false
Set 'locked' to 'false'

-> Session closed
Disconnected

Exemplo executando em todos os DB Nodes com o dcl (Note que neste caso o DCLI vai em cada Node via ssh e a partir de lá o comando “ipmi” tool é executado de fato):

[root@exadb01 ~]# dcli -g ~/dbs_group -l root 'ipmitool sunoem cli "set /SP/users/root locked=false"'
exadb01: Connected. Use ^D to exit.
exadb01: -> set /SP/users/root locked=false
exadb01: Set 'locked' to 'false'
exadb01:
exadb01: -> Session closed
exadb01: Disconnected
exadb02: Connected. Use ^D to exit.
exadb02: -> set /SP/users/root locked=false
exadb02: Set 'locked' to 'false'
exadb02:
exadb02: -> Session closed
exadb02: Disconnected
exadb03: Connected. Use ^D to exit.
exadb03: -> set /SP/users/root locked=false
exadb03: Set 'locked' to 'false'
exadb03:
exadb03: -> Session closed
exadb03: Disconnected
exadb04: Connected. Use ^D to exit.
exadb04: -> set /SP/users/root locked=false
exadb04: Set 'locked' to 'false'
exadb04:
exadb04: -> Session closed
exadb04: Disconnected

O mesmo comando pode ser utilizado para Storages Cell (neste caso apenas alterei o arquivo de grupo de hostnames):

[root@exadb01 ~]# dcli -g ~/cell_group -l root 'ipmitool sunoem cli "set /SP/users/root locked=false"'
exacel01: Connected. Use ^D to exit.
exacel01: -> set /SP/users/root locked=false
exacel01: Set 'locked' to 'false'
exacel01:
exacel01: -> Session closed
exacel01: Disconnected
exacel02: Connected. Use ^D to exit.
exacel02: -> set /SP/users/root locked=false
exacel02: Set 'locked' to 'false'
exacel02:
exacel02: -> Session closed
exacel02: Disconnected
exacel03: Connected. Use ^D to exit.
exacel03: -> set /SP/users/root locked=false
exacel03: Set 'locked' to 'false'
exacel03:
exacel03: -> Session closed
exacel03: Disconnected
exacel04: Connected. Use ^D to exit.
exacel04: -> set /SP/users/root locked=false
exacel04: Set 'locked' to 'false'
exacel04:
exacel04: -> Session closed
exacel04: Disconnected
exacel05: Connected. Use ^D to exit.
exacel05: -> set /SP/users/root locked=false
exacel05: Set 'locked' to 'false'
exacel05:
exacel05: -> Session closed
exacel05: Disconnected
exacel06: Connected. Use ^D to exit.
exacel06: -> set /SP/users/root locked=false
exacel06: Set 'locked' to 'false'
exacel06:
exacel06: -> Session closed
exacel06: Disconnected

4) Resetando a Senha:

No exemplo abaixo estou alterando a senha para o padrão “changeme”:

[root@exadb01 ~]# ipmitool user set password 0x02 changeme
Set User Password command successful (user 2)

Exemplo usando o dcli para alterar em todos os Nodes:

[root@exadb01 ~]# dcli -g ~/dbs_group -l root '/usr/sbin/ipmitool user set password 0x02 changeme'
exadb01: Set User Password command successful (user 2)
exadb02: Set User Password command successful (user 2)
exadb03: Set User Password command successful (user 2)
exadb04: Set User Password command successful (user 2)

Colocando uma Nova Senha na ILOM Via Interface WEB

Uma alternativa válida é colocar uma senha temporária via ipmitool (como o exemplo changeme) e depois alterar a senha colocando uma definitiva via interface WEB.

1) A partir de um navegador com acesso aos IPs do Exadata, informe o seguinte endereço:

https://<hostname>-ilom

2) Logue com o usuário root e a senha que acabou que definir via ipmitool:

3) Siga o caminho descrito numericamente:

  1. ILOM Administration (expande para exibir os menus)
  2. User Management
  3. User Accounts
  4. Clique na linha do usuário root
  5. Clique no botão “Edit”

Na nova janela que se abrir:

6. Informe a nova senha

7. Confirme a nova senha

8. Clique em Save

Após finalizar a alteração, recomendo clicar na opção de Logout e já testar a nova senha imediatamente. Caso tenha informado uma senha por engano (e conseguido confirmar por engano), já é uma oportunidade para resetar e alterar novamente com a senha correta.

Se tem aviso, tem história.

Conclusão

Este post apresentou uma lista de comandos básicos que podem ser utilizados para recuperar acesso a ILOM de um DB Node ou Storage Node do Exadata quando não se tem conhecimento da senha atual ou quando a conta do root está bloqueada. Por garantia, é recomendado sempre testar o acesso a ILOM de todos os nodes do Exadata antes de uma manuntenção programada, e caso necessário, alterar a senha do root ou desbloquear a conta do mesmo em todas as ILOM.

Por fim, o exemplo com interface WEB é apenas um bonus demonstrando como alterar a senha pelo caminho “oficial”, mas obviamente você precisa conhecer a senha atual pra poder logar por lá.

2 thoughts on “Como Desbloquear e Resetar Senha do ROOT da ILOM no Exadata (DB Nodes e Storage Cells)”
  1. Ótimo artigo mestre!!!

    Precisei resetar a senha da ILOM de um ODA e funcionou perfeitamente também.

    Executei o seguintes passos do artigo:

    Verifiquei se o root estava bloqueado: (no meu caso, estava)

    ipmitool sunoem cli “show /SP/users/root” | grep locked

    Depois desbloqueei:

    ipmitool sunoem cli “set /SP/users/root locked=false”

    Depois resetei:

    ipmitool user set password 0x02 nova_senha

Leave a Reply to Diogo FernandesCancel reply

Discover more from Blog do Dibiei

Subscribe now to keep reading and get access to the full archive.

Continue reading