Senha padrão da raiz Raspbian

16

Tentei modificar o arquivo sudoers no Raspbian /etc/sudoerse parece que cometi um erro, pois não consigo modificá-lo novamente. Também não consigo chamar nenhum comando que exija sudopermissões. Então, eu fiz algumas pesquisas e encontrei uma solução aqui .

A solução utiliza o comando *pkexec visudo*, mas quando eu tentei que me dá uma mensagem de erro: Authentication is needed to run '/usr/sbin/visudo' as the super user. Também há uma lista suspensa, que contém apenas a palavra 'raiz' (e não pôde ser alterada). Bem como Identidade e uma caixa de texto em branco chamada Senha.

Então a questão é como eu poderia saber a senha root? Eu tentei 'root', 'raspberry', 'admin' etc. mas nada funcionou.

De acordo com as respostas, parece um pouco impossível fazer login usando root, e usar o pkexec visudo não resolverá o meu problema! e de acordo com a resposta, minha única maneira é usar um pc linux para visualizar meu conteúdo sd e modificar o arquivo sudoers. Eu já instalei o Debian na minha máquina virtual e, finalmente, posso acessar o arquivo sudoers, mas não tenho permissão para acessá-lo! diz que eu não sou o dono do arquivo! Entendo esse problema de segurança, mas como muitas pessoas durante minha pesquisa on-line sugerem usar um pc linux para modificar o arquivo sudoers, deve haver uma maneira de obter acesso a ele. Alguém sabe desse jeito?

Dani
fonte

Respostas:

15

O Raspbian por padrão está configurado para que a conta raiz não possa ser conectada usando uma senha. Isso é feito começando com uma entrada na /etc/passwordqual começa:

root:x:0:0:

Os campos são separados por dois pontos e explicados em man 5 passwd(observe que 5, uma vez man passwdque você fornecerá a página de manual do comando passwd; a seção 5 é para arquivos de configuração e, nesse caso, eles têm o mesmo nome). Aqui o primeiro é o nome ( root), o terceiro e o quarto são os uid e gid numéricos (ambos 0), e o segundo é para a senha. Para a maioria das entradas, isso xindica que a senha real está em outro arquivo /etc/shadow,.

Observe que "a senha real" não é realmente armazenada em nenhum lugar. O que está armazenado shadowé um hash unidirecional da senha real. Um hash unidirecional é o resultado de um processo que sempre produzirá a mesma coisa (permitindo que sua senha seja verificada), mas é irreversível. Em outras palavras, se alguém shadowcolocar as mãos em prática , não há como deduzir a senha do hash. No entanto, se eles podem modificar shadow , obviamente eles podem desativar ou alterar o que funcionará como uma senha. Mas eles nunca serão capazes de descobrir suas senhas. É por isso que nem mesmo é rootpossível fazer isso (embora o root sempre possa alterá-los para outra coisa sem precisar do original).

No caso do root, a entrada in shadowcomeça assim, assim como na maioria das outras contas do sistema:

root:*:

O *indica que atualmente não existe uma senha possível que possa ser usada para esta conta.

O usuário root pode alterar isso, no entanto, usando o passwdcomando para definir uma nova senha, que substituirá a *pelo hash mencionado anteriormente (eles sempre começam $n$onde nhá algum valor aleatório usado como "salt" para o hash, mas você não precisa entender isso).

De qualquer forma, quando eu configuro um cartão a partir de uma imagem nova, a primeira coisa que faço é entrar /etc/passwde remover a xentrada do root, então começa:

root::0:0

Observe que agora não há segundo campo. Isso significa que não há senha e tudo que você precisa fazer é digitar rootem um prompt de login e você está logado como root. Você pode usar passwdpara definir um.

Portanto, você tem duas opções aqui, mas ambas exigem que você retire o cartão do pi e acesse a segunda partição de outro sistema (que pode ler / gravar partições ext4).

  1. Restaurar sudoers. Se você tem uma imagem de referência, é fácil, basta recolocá-la do jeito que estava, substituindo-a. Caso contrário, é a opção mais complicada, pois você deve saber o que está fazendo (e seu histórico sudoersnão é tão bom ...).

  2. Edite /etc/passwde remova-o xconforme descrito acima, coloque o cartão novamente, efetue login como root, crie uma senha. Obviamente, você ainda precisará corrigir sudoers, mas a tentativa e o erro serão facilitados, pois, se você for realmente root, sempre poderá acessá-lo.

Se você não possui um sistema que pode acessar sistemas de arquivos ext4 (um "CD ao vivo" do Debian é uma boa opção aqui), então você está preso. Você precisará atualizar novamente o cartão e começar de novo.

Cachinhos Dourados
fonte
Eu já instalei o debian no VM Ware e inseri meu cartão, mas ele exibe apenas os arquivos que são mostrados como se eu estivesse usando o sistema Windows. Quero dizer, não consigo visualizar / modificar o arquivo sudoers. devo usar alguns comandos para visualizá-los no debian?
Dani
Eu não sou um usuário de VMware, então não posso ajudar com os detalhes disso, mas presumivelmente você tem acesso root na VM, certo? Nesse caso, e você pode acessar o cartão SD a partir da VM, poderá montar a segunda partição e pesquisar /etc. Se sudoersnão estiver lá, você pode excluí-lo acidentalmente; nesse caso, você terá que substituí-lo por uma nova imagem do debian (você não precisa criar um novo cartão, só precisa do arquivo de imagem, veja aqui ). #
Goldilocks
... Você também deve poder acessar etc/passwdo cartão e alterá-lo através da conta raiz da VM Debian.
goldilocks
(você poderá montar a segunda partição e procurar em / etc) que comandos devo usar para montar a segunda partição?
Dani
De uma VM VMware? Eu não sei. Eu uso o virtualbox, mas nunca tive que configurar o acesso ao hardware ou montagens no sistema host, além da rede (se precisar transferir dados, basta fazê-lo pela rede). Presumo que seja possível e simples, mas meu sistema host também é linux. Eu também presumiria que há alguma maneira de usar o VMware com um host Windows / Mac / Whatever para conceder à VM acesso ao dispositivo SD conectado ao hardware do host ... mesmo se o próprio host não puder ler a partição, ele ainda poderá acessar a placa real, para que a VM também possa (e o sistema operacional da VM possa lê-la).
goldilocks
4

Raspbian NÃO tem uma rootsenha. Difere do Ubuntu nesse aspecto. Você pode criar uma rootsenha, mas o AFAIK exige sudo.

A melhor aposta é editar os arquivos montando o cartão SD em uma máquina Linux.

Isso pode ser feito no Pi se 1. você tiver um leitor de cartão SD 2. Você usa um bom sistema operacional em outro SD para inicializar o Pi.

Milliways
fonte
mas por que raspbian me pediu senha? e por que não aceitou senhas vazias?
1110 Dani
A conta raiz pode ter uma senha "inválida" ou "impossível" - é um truque comum para bloquear a conta raiz dessa maneira.
Flakeshake
4

Para definir uma senha root:

  • Inicialize e entre normalmente.
  • Corre:sudo passwd root
  • Digite a nova senha para root, conforme solicitado

Fonte: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=5056&start=25

Excellence Ilesanmi
fonte
1
O problema é que não consegui usar o comando sudo porque cometi um erro durante a modificação do arquivo sudoers. O problema foi resolvido através da instalação de linux debian OS no meu computador, inserindo o cartão SD e mudando a parte de trás do arquivo sudoers para seu estado original ...
Dani
-1

Se você baixar o Puppy Linux para Raspberry Pi em http://puppylinux.org/main/Download%20Latest%20Release.htm#quirky e instalá-lo em um pendrive, poderá inicializar seu computador a partir disso e porque o Puppy sempre executado como root sem senha, você pode alterar qualquer coisa no computador que desejar. Faça as modificações e reinicie o computador sem a mídia de inicialização do Puppy. Agora o computador irá inicializar no seu sistema alterado sem o Puppy.

Sou um pouco novo no Raspberry Pi, então não sei como inicializá-lo a partir de um dispositivo diferente (pen drive), mas provavelmente há uma maneira. Talvez o sistema Noobs mantenha pressionada a tecla shift durante a inicialização.

Vou adicionar uma alternativa simples para inicializar a partir de outra unidade: o Raspberry Pi pode ser inicializado a partir da instalação do Puppy em um cartão SD (ou cartão microSD) e a mídia de instalação original pode ser lida e alterada a partir de um leitor de cartão conectado ao o mesmo Raspberry Pi.

Miriam English
fonte
2
Acho que a votação é desagradável, então tentarei preencher o voto negativo anônimo. Uma resposta que tenha "não sei" talvez seja mais apropriada como comentário. Infelizmente, isso requer uma reputação de 50. Continue com seus esforços para ajudar. O esforço vale a pena. : D
OyaMist