Desde já vou adiantando que condeno qualquer uso deste artigo para prejudicar alguém e gostaria que esta informação não fosse compartilhada pelos leitores com alguém que tenha más intenções. Agradeço a quem tiver esta preocupação.
Os exemplos abaixo são comuns em casos que precisamos da senha:
Para continuar o trabalho de um administrador de rede (babaca) que perdeu o serviço de manutenção de um servidor e não deu a senha de root. Já aconteceu comigo. Um otário, querendo complicar minha vida, não deu a senha do root para o DONO DO COMPUTADOR, mas eu quebrei e ganhei o cliente (espero que ele leia este artigo, hehehe);
Para resolver um problema de invasão, quando alguém descobre a senha do root, muda, e passa a brincar com o seu servidor;
Quando você usou um teclado ruim para mudar a senha do root. Já aconteceu comigo também. Mudei uma senha de root remotamente num PC cujo teclado não funcionava a tecla "7". É claro que mesmo pedindo confirmação, digitei a senha errada (sem saber) duas vezes e assim ficou. No dia que tentei entrar diretamente no servidor a senha não funcionava;
A mais comum: quando esquecemos a senha.
Na verdade, para quebrar a senha do root temos que editar o arquivo /etc/shadow e apagar os caracteres referentes a senha do root. É SÓ ISSO E PRONTO! O que disserem a mais é perda de tempo. Já vi vários artigos pela internet falando de outras coisas, mas o resumo é este: ALTERAR O /etc/shadow.
Para isso você deve dar o boot por uma distribuição live ou um disquete. Neste artigo vou dar o exemplo de uma distribuição live. Pode ser Ubuntu, Kurumin ou qualquer outra. No meu caso usei o Conectiva Live 10.
As distribuições live já montam a partição referente ao HD da máquina, mas a maioria monta como "somente leitura", ou seja, você pode ver os arquivos mas não pode salvar nada. Temos então que alterar esta propriedade para permitir leitura/gravação. Ou você faz isso pelo modo gráfico facilmente, ou desmonta e monta de novo, que foi o que fiz.
Para desmontar use o comando umount /dev/hda2 (troque o /dev/hda2 para a sua partição). Para montar use o comando:
# mount /dev/hda2 /mnt/hda2_linux (/mnt/hda2_linux pode ser qualquer outro diretório)
Após a partição montada você já poderá editar o arquivo shadow e apagar a senha criptografada do root. No meu caso, a partição do HD ficou em /mnt/hda2_linux. O caminho para editar o arquivo de senhas é /mnt/hda2_linux/etc/shadow.
ATENÇÃO: Não confundir com /etc/shadow. Com o CD live, esta é apenas uma pasta e um arquivo virtual. Como a partição do HD foi montada dentro de um diretório (/mnt/hda2_linux) você deve editar o arquivo da partição montada e não os da distribuição live. Leia um pouco sobre montagem de partições para maiores esclarecimentos.
Para apagar a senha criptografada do root, entre no arquivo shadow, procure a linha do root e apague todos os caracteres entre o primeiro ":" (dois pontos) e o último. Exemplo:
Depois disso é só reiniciar o PC normalmente e logar como root. Ele não pedirá a senha. Você deve, é claro, definir sua senha logo após o login através do comando passwd.
Resumindo e repetindo o que eu disse no começo deste artigo, para remover a senha do root, basta editar o arquivo shadow e apagar os caracteres referentes a senha. Toda aquele processo de montagem e desmontagem é apenas para dar permissão de gravação no arquivo shadow.
Se você conhece outra maneira de fazer isso use-a como achar melhor. No meu caso achei este exemplo o mais simples e resolvi postar aqui pra ajudar a quem já teve dificuldads como eu tive. Quaisquer dúvidas estou à disposição.
[1] Comentário enviado por leandrorocker em 31/05/2007 - 08:24h
interessante, me diz uma coisa, você sabe qual função de via única é usada pra armazenar a senha de root?
recentemente terminei meu tcc que era justamente sobre como quebrar funções de via única, usei como exemplo o md5, sha1, sha224, sha256, sha384 e sha512, mas creio que não é nenhuma dessas que é usada no linux.
[6] Comentário enviado por kenshisk em 01/06/2007 - 01:23h
Realmente não tem como deixar um sistema seguro, minha senha tem uns vinte digitos com caracteres maisculos, numeros, e apenas umas cinco vogais (antiga: Tivstfo.ToftihurdfrStsujo1987 ) e pelo jeito nada disso funciona hehe.
já precisei mudar a senha mais fiz isso com o linux single mesmo, na hora não tinha live cd.
mais boa dica.
[7] Comentário enviado por removido em 21/06/2007 - 16:15h
cara, sei que é meio difícil, mas mesmo assim vou perguntar...
tem como eu alterar a senha de root sem ter que rebootar a máquina?
aconteceu comigo a mesma coisa que com você, entrei em uma empresa, e o antigo cara de suporte não me deu a senha de root, porém não posso DE JEITO NENHUM rebootar o servidor que fica em produção 24/7...
[8] Comentário enviado por malacker em 24/06/2007 - 11:23h
Só tem uma alterativa, mas vai depender da sua sorte. Se vc tiver um outro usuário com privilégios de root pode alterar normalmente.
Sempre que instalo um servidor crio um usuário que tem os mesmos poderes do root, para no caso de um eventual problema com senha, poder entrar a alterar facilmente através do comando passwd root.
Outra (que tb depende da sorte) é dar uma olhada se o adm antigo não esqueceu nenhum terminal aberto, mas seu server deve ter apenas modo texto.
Use a combinação de teclas Alt+F1, Alt+F2, Alt+F3, Alt+F4, Alt+F5 e veja se todos os terminais estão fechados. Caso o cara tenha esquecido algum aberto você pode mudar a senha.
Como eu disse, vai depender muito da sua sorte.
[10] Comentário enviado por fabiofernandes em 25/07/2007 - 12:59h
Opa
Cara quero saber se vc pode me ajudar com uma coisa ?
Alguem quebrou a senha do meu servidor mikrotik e agora ta acabando com a net do pessoal vc sabe como que ele fez isso pq eu ja refz e ele sempre quebra minha senha!!!!
[14] Comentário enviado por DebianWoman em 30/11/2007 - 11:36h
Tenho uma dúvida, se eu não sei a senha do root e não tenho um disco de boot do linux, como eu faço para dar vim /etc/shadow????
Acredito, que esteja "viajando na maionese", mas é uma dúvida, não é galera?
Caso possam ajudar nem que seja para falar que realmente não tem como, por favor estarei no aguardo.
[16] Comentário enviado por malacker em 02/12/2007 - 17:34h
DebianWoman,
Você deve ter um CD live. Tipo Kurumin, Ubuntu, Kubuntu, etc.
Nenhum destes CDs "live" pedem a senha do root. Você carrega o sistema na memória e pode fazer o que quiser. Inclusive criar uma senha para o root.
Uma vez com acesso ao root (DO CD LIVE) você pode fazer os procedimentos do artigo para apagar a senha do root.
Vou repetir: PARA APAGAR A SENHA DO ROOT. E não para descobrir a senha.
Agora, se vc não sabe a senha do root e não tem nenhum CD live, ou outra distro que faça este papel, obviamente não tem jeito. Nem reza resolve.
[20] Comentário enviado por henbran em 22/05/2009 - 11:19h
Para quem não tem algum live cd pode-se até quando iniciar o processo de ligamento da máquina antes do boot, pressine a tecla "esc" no caso
do ubuntu, entrar pelo console e seguir os passos acima descritos.
Abraços
Paulo - Guarulhos - SP
henbran@hotmail.com
[23] Comentário enviado por leandro.leal em 28/02/2012 - 09:05h
Fiz o teste aqui com o ubuntu 11.10 e depois que remove a senha, não consegue mais entrar pois da erro de senha. Uma maneira mais eficiente é usar o comando sudo chroot depois da montagem da unidade citado acima.
[24] Comentário enviado por nettux em 29/05/2012 - 13:38h
é mais fácil acertar na loteria do que descobrir quem vai usar essa dica para o bem...
mas basta o administrador criar uma senha forte no usuário (o ideal é trocar o tradicional root/admin por algo mais customizado...) que o cara não tem acesso ao servidor se ele conseguir passar pelo usuário admin, daí é só um abraço...
[26] Comentário enviado por marcos356 em 15/06/2014 - 17:54h
Boa tarde, tenho um pc, nele estar instalado um linux pandorga 0.6.1 e foi perdido a senha do administrador como faço pra resetar a senha do root. Podem me ajudar.