Colocando senha criptografada no GRUB 2

Publicado por Atila Aloise de Almeida em 21/01/2012

[ Hits: 16.144 ]

 


Colocando senha criptografada no GRUB 2



Verifiquei que as referências para colocar senha no GRUB 2 são muito escassas.

Em alguns fóruns vi até pessoas dizendo que não era possível. É possível sim! E a criptografia é muito melhor do que a versão anterior do GRUB!

Ocorre o seguinte:

O GRUB 2 utiliza vários arquivos para configuração, então precisamos alterar o arquivo correto. Caso contrário, provavelmente as alterações no arquivo principal de configuração serão sobrescritas.

Então chega de conversa e vamos por a mão na massa.

O arquivo correto a ser alterado é o 00_header, que fica em "/etc/grub.d/".

Primeiro passo:

Criar a senha criptografada. Para isso utilizamos o "grub-mkpasswd-pbkdf2".

Segundo passo:

Colocar o hash da senha no final do arquivo do arquivo 00_header especificando parâmetros adequados. Pois além da senha você diz ao GRUB um usuário.

Terceiro:

Atualizar o GRUB. com o comando "grub-update"

Agora sim, vamos aos comandos de fato:

Por questão de praticidade geramos a hash de senha, e já inserimos no final do arquivo "00_header".

# (echo "senha" ; echo "senha") | grub-mkpasswd-pbkdf2 >> 00_header

Feito isso digite:

# vi 00_header

E vá ao final do arquivo, a saída do comando acima vai estar lá desta forma:

Enter password:
Reenter password:
Your PBKDF2 is grub.pbkdf2.sha512.10000.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXx.........


Coloquei os "XXXX" pois a hash é enorme, você vai manter no arquivo a partir de "grub.pbkdf2........" até o final.

Agora vamos editar o final deste arquivo, mantendo apenas a hash da senha. Deve ficar assim:

cat << EOF
set superusers="USER"
password_pbkdf2 USER grub.pbkdf2.sha512.10000.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXxx.........
EOF


Repare que além da senha, também escolhemos um nome de usuário. O nome desse usuário fica a seu critério e não precisa ser usuário cadastrado no sistema.

Feche o arquivo e dê o comando:

# grub-update

Reinicie e faça o teste.

Ao tentar editar a forma de inicialização, o GRUB vai pedir usuário e senha.

O legal é que a senha pode conter espaços, ou seja, senhas super fortes são possíveis.

Simples e eficiente.

Espero que a minha primeira dica seja de grande utilidade para vocês.

Valeu e até mais!!!

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Nunca execute esses comandos

Bloquear/restringir acesso ao "su" somente ao grupo wheel

SQUID + SSO + Autenticação Segura no AD

Bloqueando portas com IPtables

Backtrack 4 - Atualizando pasta de exploits através do site milw0rm

  

Comentários
[1] Comentário enviado por l0g1in em 20/02/2012 - 13:18h

Cara Muito obrigado, funcionou perfeito tava pastando para conseguir fazer isso no debian 6 agora deu certo valeu!!!
[];

[2] Comentário enviado por xiloba em 22/02/2012 - 15:54h

Muito boa a dica, mas gostaria de saber como colocar senha em uma, ou cada uma das entradas do grub2.
Tipo: o cara quer usar o ubuntu, então vai ter que digitar passwordx; ou vai usar o windows7, então vai ter que digitar passwordy.

[3] Comentário enviado por atila_tux em 22/02/2012 - 16:36h

Obrigado pelos comentarios pessoal.
Caro xiloba.
O objetivo de colocar senha no grub é apenas para evitar que os parametros de inicialização sejam alterados, principalmente para evitar acesso indevido ao root sem senha.
Pelo que entendi que voce quer fazer, Creio que apenas senha de usuario em cada sistema operacional ja atende perfeitamente o que voce deseja.


[4] Comentário enviado por removido em 10/10/2012 - 12:01h

Obrigado.

Funcionou perfeitamente com o BURG, apenas mudei o comando grub-mkpasswd-pbkdf2 para burg-mkpasswd-pbkdf2.

Abraçs

[5] Comentário enviado por removido em 09/12/2012 - 15:22h

Beleza de dica.

[6] Comentário enviado por fanjos em 25/02/2014 - 18:16h

A dica é muito boa, funcionou legal. Deixo aki uma dica pra quem utiliza uma versão que não seja mais aceito o GRUB-UPDATE, usa o UPDATE-GRUB



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts