Versão em vídeo desta seção pode estar disponível no canal do Guia Foca no YouTube: OpenSCAP e validação de conteúdo SCA.
A proteção de senha do grub2 pode ser utilizada para:
Proteger todas as entradas de menu
Específicas entradas
Para usuários específicos, por exemplo, o usuário Gleydson pode acessar o Linux, mas não o Windows no modo de recuperação, que é acessível pela Michelle
Para adicionar a proteção de boot no Grub, você tem as seguintes opções:
O administrador deve ativar a proteção de senha manualmente editando os arquivos de configuação do grub
Usuários e senhas devem ser identificados no arquivo /etc/grub.d/00_header
ou outro arquivo de script do Grub.
A proteção de entradas específicas deve ser identificada em um dos arquivos abaixo:
a - editando scripts em /etc/grub.d/10_linux
e 30_os-prober
b - Editando o aruivo de configuração customizado criado pelo usuário
c - Um dos métodos acima fazem o grub automaticamente adicionar o requisito de senha
se o update-grub for rodado
d - Se o arquivo grub.cfg
for editado diretamente. A proteção de senha será perdida
quando o update-grub rodar
Se qualquer forma de proteção de senha do grub2 for ativada. O nome e senha de superusuario serao requeridos para ter acesso a linha de comando do grub2 e modos de edição de menu
O username e senha pode ser diferente do login/senha de sistema
Até que a encriptação do grub2 seja usada, a senha é armazenada em texto plano em um arquivo legível, o ideal é ativar a encriptação de arquivo.
Para proteção contra a entrada do menu de edição e uso de opções como
single user, etc, no grub 0.97 crie uma senha com grub-md5-crypt e então use a opção
no grub.cfg
:
password --md5 hash_do_grub-md5-crypt
Desta forma, o sistema sempre lhe pedirá uma senha quando acessar o menu de edição do grub.
Esta instruções são válidas para a versão 2 do Grub. Antes mesmo do sistema sistema operacional ser carregado, o Grub2 permite acesso aos arquivos armazenados no sistema de arquivos. Usuários sem permissão de root podem acessar arquivos do Linux no qual nâo deveriam ter acesso, assim que o Grub carregar. Para bloquear este tipo de acesso e evitar que os usuários iniciem certos sistemas operacionais, defina uma senha de boot.
OBS: Com o uso de senha, a splash screen tradicional não é mostrada.
O procedimento para gerar é o seguinte:
Entre como root
Encripte a senha usando grub2-mkpasswd-pbkdf2:
grub2-mkpasswd-pbkdf2 Password: **** Reenter password: **** PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.3CA4611006FE96BC22..
Cole a string encriptada gerada no arquivo /etc/grub.d/40_custom junto com o comando set superusers. As linhas comentadas devem ser mantidas no inicio do aquivo, pois são usadas pelos scripts de manutenção de arquivos do grub:
set superusers="root" password_pbkdf2 root grub.pbkdf2.sha512.10000.9CA4611006FE96BC77A export superusers
Para definir a senha em texto plano (não recomendável) a entrada a seguir pode ser usada:
password root senha1234
Execute em seguida: grub2-mkconfig -o /boot/grub2/grub.cfg
Agora reinicie a máquina. Após o reboot, você será perguntardo pelo usuário e senha para tentar iniciar qualquer entrada no menu. Caso as credenciais estiverem corretas, o sistema inicializará a entrada selecionada do menu.
As entradas menuentry do Grub podem ser protegidas com os seguintes parâmetros:
A presença de --unrestricted desativa a proteção de senha
A presença de --users ativa a proteção de senha para usuários específicos, por exemplo: --users "Jane" - autoriza o superusuario e "Jane" --users Jane,Sergio - autoriza o superusuario e "Jane" e "Sergio".
Seguem mais exemplos de sintaxe no menu do Grub2:
# Todos os usuários (nenhuma proteção) menuentry 'Ubuntu, with Linux 3.6.0-14-generic' --class ubuntu -class os --unrestricted { # Somente superusuário: menuentry 'Ubuntu, with Linux 3.6.0-14-generic' --class ubuntu -class os --users "" { # Superuser e gleydson: menuentry 'Ubuntu, with Linux 3.6.0-14-generic' --class ubuntu -class os --users gleydson { # Superuser, gleydson, foca: menuentry 'Ubuntu, with Linux 3.2.0-24-generic' --class ubuntu -class os --users gleydson,foca {
Note que este método somente funciona se o Grub2 identificar uma partição de recovery do Windows:
1 - Determine a partição recovery do Window. altere sdXY para os valores corretos 2 - No 30_os-prober:
Altere a entrada no menu de:
menuentry "${LONGNAME} (on ${DEVICE})" --class windows --class os {
Para
if [ ${DEVICE} = "/dev/sdXY" ]; then menuentry "${LONGNAME} (on ${DEVICE})" --users "" { else menuentry "${LONGNAME} (on ${DEVICE})" { fi
Finalmente, execute o update-grub para atualizar o
/boot/grub/grub.cfg
.
Copyright © 1999-2020 - Gleydson Mazioli da Silva