Formas de pagamento Abuse

Repor uma palavra-passe no Linux

19.05.2021, 22:32

Todos os utilizadores já se esqueceram, pelo menos uma vez, das palavras-passe de sítios Web e redes sociais que não utilizavam há muito tempo. Uma situação semelhante pode acontecer com uma distribuição Linux. Não é difícil esquecê-la, especialmente se houver muitas distribuições diferentes com senhas diferentes. A seguir, vamos falar sobre o que fazer se a sua palavra-passe Linux foi esquecida, como redefini-la corretamente e não apagar os seus dados. A reposição de uma palavra-passe Linux não é uma tarefa muito difícil. Mas deve ficar claro que não pode descobrir a sua palavra-passe, apenas pode redefini-la.

Repor a palavra-passe usando o LiveCD

Para repor a palavra-passe, precisa de se munir de um disco LiveCD com qualquer distribuição Linux, sendo apenas importante fazer corresponder a capacidade de bits do sistema a ser recuperado e o sistema no disco. É melhor utilizar as versões mais recentes das distribuições. São mais convenientes para trabalhar com elas, embora até o Gentoo e o ArchLinux sirvam.

De seguida, arranque a partir do disco LiveCD e abra o terminal. Se o disco inicializar em um shell de comando sem uma interface gráfica, tudo bem. Você precisa de saber em que disco rígido está localizado o sistema de ficheiros raiz da distribuição que vai instalar. Pode ver todos os discos disponíveis com o comando:

$ fdisk -l

Repor uma palavra-passe no Linux

Como regra geral, o nome do disco começa com as letras sd para discos normais e nvme para SSDs M.2. A partição raiz é pequena se tiver sido atribuída uma partição separada para a pasta home durante a instalação e se tiver um sistema de ficheiros Linux. Se não foi criada uma partição separada para o gestor de arranque, a partição raiz também será marcada com um asterisco como sendo de arranque. Por exemplo, esta é /dev/nvme0n1p1. Ela deve ser montada em /mnt:

 $ mount /dev/nvme0n1p1 /mnt/

Repor uma palavra-passe no Linux

Então podemos ver /dev/nvme0n1p1 - a partição onde o sistema foi instalado. Ela também pode ser /dev/sda1 ou /dev/sdb5. Então entre no ambiente chroot:

$ chroot /mnt /bin/bash

Repor uma palavra-passe no Linux

Encontramo-nos agora no ambiente da distribuição que está instalada no disco montado. Esta é uma variante do modo de recuperação sem iniciar o sistema operativo.

A seguir, o utilizador pode definir a password do utilizador root linux usando o comando passwd:

$ passwd root

Repor uma palavra-passe no Linux

Pode acontecer que o utilitário dê um erro, mas se não der nenhum erro, a palavra-passe foi actualizada com sucesso e pode utilizar o seu sistema.

Há mais uma maneira. As palavras-passe de todos os utilizadores são armazenadas no ficheiro /etc/shadow desta forma:

user_name:encrypted password:user_id:group id_id

Por exemplo:

root:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:0:0:::::
bin:!!:9797:0:::::
daemon:!!:9797:0:::::

Para cada entrada, todos os parâmetros são separados por dois pontos, o primeiro parâmetro (root) é o nome de utilizador, o segundo parâmetro (AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...) é o hash da palavra-passe. Para alterar a palavra-passe para a pretendida, é necessário primeiro criar manualmente o seu hash. Para o fazer, pode utilizar este comando:

$ openssl passwd -1 -salt xyz new_password

Repor uma palavra-passe no Linux

Em seguida, cole-o no lugar do anterior:

$ vi /etc/passwd

Repor uma palavra-passe no Linux

Não é possível remover completamente a senha do Linux, pois sem a senha não será possível autorizar-se no sistema, então a melhor opção é substituí-la por uma nova. Depois de a substituir, guarde as alterações e já está. Antes de reiniciar, não se esqueça de sair do chroot e desmontar a raiz do sistema:

$ exit
$ umount /mnt

Redefinindo a senha com o Grub

Se não tiver um disco à mão, pode usar o Grub para este fim. No menu de opções de arranque, prima E para editar os parâmetros do kernel:

Repor uma palavra-passe no Linux

Aqui, na linha vmlinuz, depois de todos os parâmetros (veja a captura de ecrã), tem de adicionar o parâmetro init=/bin/bash:

Repor uma palavra-passe no Linux

Prima Ctrl+D para continuar o arranque. Após a inicialização estar completa, o kernel passará o controlo para o comando da shell bash que passámos nos parâmetros do kernel, onde pode recuperar a palavra-passe. Por predefinição o sistema de ficheiros está montado em modo apenas de leitura, para poder alterar alguma coisa tem de o remontar para escrita:

$ exit

$ umount /mnt

Todas as outras acções com o ficheiro /etc/shadow são semelhantes ao primeiro ponto.