Como recuperar a senha de root no Linux

Como recuperar a senha de root no Linux

(Last Updated On: 14 de novembro de 2017)
Estou estudando Docker! EntĂŁo fui instalĂĄ-lo no meu computador pelo terminal, jĂĄ que estou usando o Ubuntu, ĂŠ uma distribuição Linux:
Basta que eu digite a senha e pronto! Terei o docker instalado em minha mĂĄquina. SĂł temos um pequeno problema… esqueci a senha do meu usuĂĄrio! đŸ™
Sem essa senha não consigo instalar ou remover programas, atualizar o sistema operacional… Ou seja, não consigo realizar tarefas administrativas no sistema. E agora, como posso recuperar essa senha?
Existem algumas maneiras de se recuperar a senha do usuĂĄrio administrador (ou do super usuĂĄrio) no Linux. Uma muito comum ĂŠ alterar o modo que o sistema inicia, ou seja, quando realiza o boot. Dessa forma, acessamos o sistema como superusuĂĄrio e alterar a senha.
Para isso, precisamos antes entender melhor o que seria o boot!

Entendendo o boot

Boot nada mais ĂŠ do que o momento em que sua mĂĄquina estĂĄ sendo ligada. Nesse momento, um programa chamado BIOS carrega algumas informaçþes sobre o hardware do computador e o checa. ApĂłs esse processo ela chama o gerenciador de boot (boot loader) que carrega o sistema operacional.
Existem diversos gerenciadores disponĂ­veis. No caso do Linux, esse gerenciador mais comum ĂŠ o GRUB, porĂŠm existem outros.
Utilizando o GRUB nĂłs conseguimos acessar o sistema como superusuĂĄrio executar alguns comando, como trocar a senhas de usuĂĄrios.
Mas como consigo acessar o GRUB?

Acessando o GRUB

Conseguimos acessar o GRUB no momento em que a mĂĄquina estĂĄ ligando. Basta apertar a tecla Esc, ou Shift. ApĂłs um tempo, uma tela parecida com estĂĄ deve aparecer:
Queremos falar para o GRUB que desejamos acessar o sistema como usuĂĄrio administrador, dessa forma conseguimos modificar a senha.
Para dizer isso ao GRUB, temos que editar uma linha em sua configuração. Logo, pressionamos e (edit) para editar essas informaçþes:
Neste arquivo, o GRUB passa algumas informaçþes (parâmetros) para o kernel, isto ĂŠ, o nĂşcleo do sistema operacional. Algumas dessas informaçþes sĂŁo: o sistemas de arquivos do root, o tipo de montagem de uma partição, entre outros.
Queremos entrar como super usuĂĄrio no momento em que o Linux ĂŠ carregado. Logo, vamos atĂŠ a linha linux para colocar essa configuração:
Essa linha nos mostra quando o boot começar.
O GRUB tentarĂĄ carregar o arquivo do kernel que estĂĄ em /boot/vmlinuz-4.8.0-36-generic como usuĂĄrio root (super usuĂĄrio), em modo de leitura (ro, read only), sem escrever na tela (quiet), apresentando uma tela de carregamento (splash) e o modo grĂĄfico ($vt_randoff).
Mas eu quero poder alterar a senha do meu usuĂĄrio quando o sistema iniciar. Isto ĂŠ, quero poder escrever as configuraçþes, entĂŁo vamos alterar a opção ro (read only) para rw (read and write).
O sistema serå acessado via o terminal. Então podemos retirar essas opçþes que mostram a tela de carregamento e o modo gråfico:
Bem, vamos acessar o sistema pelo terminal… Mas qual terminal?
Precisamos dizer para o GRUB iniciar um terminal assim que o sistema carregar, dessa forma conseguiremos realizar as alteraçþes.
Para isso falaremos para ele iniciar (init) um Shell, como o Bash, um shell muito comum para os sistemas Linux, que estĂĄ localizado na pasta bin:
Pronto! Configuraçþes realizadas! Vamos dizer para o sistema iniciar com essas configuraçþes. Para isso nĂłs pressionamos Ctrl + x ou simplesmente F10.
O sistema irå iniciar com essas configuraçþes em um terminal jå logado como super usuårio:
Agora resta apenas alterar a senha do usuĂĄrio.
No meu caso vou alterar a senha do usuĂĄrio administrador yuri, entĂŁo posso dizer para o terminal: "Por favor, altere a senha (passwd) do usuĂĄrio yuri":
passwd yuri
Vamos informar a nova senha e pronto! Vamos reiniciar o computador para instalar nosso programa. JĂĄ que vamos reiniciar a mĂĄquina podemos utilizar o comando reboot:
Hum… Deu um erro, nĂŁo conseguimos reiniciar o computador. đŸ™
Quando estamos como monousuĂĄrio no GRUB, nĂŁo conseguimos reiniciar o computador com esses comando como reboot.
EntĂŁo, como podemos reiniciar nosso computador?
Bem, podemos desligĂĄ-lo da energia e ligĂĄ-lo novamente. Ou, podemos utilizar outro comando.
Existe um comando chamado init. Com este comando conseguimos mudar o nĂ­vel de execução do sistema. Isto ĂŠ, podemos desligĂĄ-lo, reiniciĂĄ-lo, entre outras coisas.
Cada nĂ­vel possui um cĂłdigo, como por exemplo o nĂ­vel 6, que reinicia o sistema.
JĂĄ que queremos reiniciar o sistema, vamos falar para o init fazer isso para a gente:
Humm… outro erro. O sistema não conseguiu se comunicar com o comando desta forma. Vamos tentar passar o caminho até o local onde o comando está localizado para conseguir executá-lo.
Queremos executar (exec) o comando init, que estĂĄ localizado na pasta /sbin/init, passando como parâmetro o nĂ­vel 6 (reiniciar):
Quando o computador reiniciar podemos usar essa nova senha para instalar o Docker:
Funcionou! Conseguimos alterar a senha com sucesso.

Para saber mais

Neste caso, eu utilizei o GRUB para mudar a senha do usuĂĄrio administrador do sistema, mas poderia ter usado para modificar a senha do superusuĂĄrio (root).
Essas mudanças feitas no GRUB são temporårias. Isto Ê, só valem na vez que foram configuradas no boot. Caso queira que as mudanças sejam permanentes Ê necessårio alterar o arquivo do GRUB.
Esse Ê apenas um dos muitos jeitos de recuperar a senha do usuårio administrador ou do usuårio root no Linux. AlÊm desse, outro muito utilizado Ê usando um pendrive inicializåvel com um sistema operacional. Dessa forma conseguimos montar uma partição e utilizå-la para alterar as senhas.
Veja que conseguimos acessar o sistema como root apenas com uma configuração no gerenciador de boot. Isso pode ser muito perigoso caso alguĂŠm com mĂĄs intençþes tenha acesso a mĂĄquina. Por isso existem algumas formas de proteger o GRUB desse tipo de ataque.
NĂłs acessamos o sistema como super usuĂĄrio, por isso, cuidado! Caso nĂŁo tenha certeza do que um comando faz, nĂŁo o execute.

Senhas recuperadas

Um problema comum que pode acabar gerando muitas dificuldades Ê esquecer senhas de usuårio administrador. No caso do Linux, percebemos que isso pode ser revertido utilizando o gerenciador de boot para iniciar o sistema como super usuårio e realizar essa alteração.
Para isso, precisamos antes de mais nada, entender como funciona o boot no sistema e como configurar o boot loader para carregar o sistema como root.
Só então acessamos o terminal e alteramos a senha do nosso usuårio. PorÊm, não podemos esquecer que isso tambÊm Ê muito perigoso, pois um usuårio com mås intençþes conseguiria acesso ao sistema. Por isso existem algumas formas de proteger o GRUB desse tipo de ataque.
E aĂ­, o que achou? JĂĄ conhecia essas tĂŠcnicas? Conhece outras? NĂŁo deixe de compartilhar conosco nos comentĂĄrios! đŸ™‚
Gosta de Linux? Aqui na alura temos uma formação completa no sistema do pinguim. Nela vocĂŞ aprenderĂĄ sobre os comandos do sistema, sobre sua estrutura de diretĂłrios, gerenciar usuĂĄrios, grupos, alĂŠm de muitas outras coisas

ComentĂĄrios

Ebook

Postagens mais visitadas