Como proteger o GRUB com uma senha (Linux)

Normalmente passamos boa parte do nosso tempo em prevenir o acesso não autorizado às nossas equipes: configuramos firewalls, permissões de usuário, ACLs, criamos senhas fortes, etc.; mas raramente nos lembramos proteger a inicialização de nosso equipamento.

Se uma pessoa tiver acesso físico ao computador, ela pode reiniciá-lo e alterar os parâmetros do GRUB para obter acesso de administrador ao computador. Simplesmente adicione '1' ou 's' ao final da linha 'kernel' do GRUB para obter esse tipo de acesso.


Para evitar isso, você pode proteger o GRUB usando uma senha, de forma que se ela não for conhecida, não seja possível modificar seus parâmetros.

Se você tiver o carregador de inicialização GRUB instalado (que é mais comum se você usar as distribuições mais populares do Linux), poderá proteger cada entrada no menu GRUB com uma senha. Desta forma, sempre que você escolher um sistema operacional para inicializar, ele solicitará a senha que você especificou para inicializar o sistema. E, como bônus, se seu computador for roubado, os invasores não conseguirão acessar seus arquivos. Parece bom, certo?

GRUB2

Para cada entrada do Grub, um usuário pode ser estabelecido com privilégios para modificar os parâmetros das entradas que o GRUB aparece quando o sistema inicia, além do superusuário (aquele que tem acesso para modificar o Grub pressionando a tecla “e”). Faremos isso no arquivo /etc/grub.d/00_header. Abrimos o arquivo com nosso editor favorito:

sudo nano /etc/grub.d/00_header

No final, cole o seguinte:

gato < < EOF
definir superusuários =”usuário1″
senha usuario1 senha1
EOF

Onde user1 é o superusuário, exemplo:

gato < < EOF
definir superusuários=”superusuário”
senha de superusuário 123456
EOF

Para criar mais usuários, adicione-os abaixo:

senha de superusuário 123456

Seria mais ou menos assim:

gato < < EOF
definir superusuários = "superusuário"
senha de superusuário 123456
senha user2 7890
EOF

Depois de estabelecer os usuários que queremos, salvamos as alterações.

Proteja o Windows 

Para proteger o Windows, você deve editar o arquivo /etc/grub.d/30_os-prober.

sudo nano /etc/grub.d/30_os-prober

Procure uma linha de código que diz:

menuentry "$ {LONGNAME} (em $ {DEVICE})" {

Deve ser parecido com isto (superusuário sendo o nome do superusuário):

menuentry "$ {LONGNAME} (em $ {DEVICE})" –users superusuário {

 
Salve as alterações e execute:

sudo update-grub

Abri o arquivo /boot/grub/grub.cfg:

sudo nano /boot/grub/grub.cfg

E onde está a entrada do Windows (algo assim):

menuentry "Windows XP Professional" {

mude para este (user2 sendo o nome do usuário que tem privilégios de acesso):

menuentry "Windows XP Professional" –usuários usuário2 {

Reinicie e vá. Agora, quando você tentar entrar no Windows, ele pedirá a senha. Se você pressionar a tecla "e", também será solicitada a senha.

Proteja Linux

Para proteger as entradas do kernel do Linux, edite o arquivo /etc/grub.d/10_linux e procure a linha que diz:

menuentry "$ 1" {

Se você quiser que apenas o superusuário consiga acessá-lo, deve ser assim:

menuentry "$ 1" –users user1 {

Se você deseja que um segundo usuário possa acessar:

menuentry "$ 1" –users user2 {

Você também pode proteger a entrada da verificação de memória, editando o arquivo /etc/grub.d/20_memtest:

menuentry "Teste de memória (memtest86 +)" –users superusuário {

Proteja todas as entradas

Para proteger todas as entradas, execute:

sudo sed -i -e '/ ^ menuentry / s / {/ –users superusuário {/' /etc/grub.d/10_linux /etc/grub.d/20_memtest86+ /etc/grub.d/30_os-prober / etc / grub.d / 40_custom

Para desfazer esta etapa, execute:

sudo sed -i -e '/ ^ menuentry / s / –users superusuário [/ B] {/ {/' /etc/grub.d/10_linux /etc/grub.d/20_memtest86+ /etc/grub.d/30_os- prober /etc/grub.d/40_custom

GRUB

Vamos começar abrindo o ambiente GRUB. Abri um terminal e escrevi:

larva

Então, eu digitei o seguinte comando:

md5crypt

Ele solicitará a senha que deseja usar. Digite-o e clique em Enter. Você receberá uma senha criptografada, que deve ser guardada com muito cuidado. Agora, com permissões de administrador, abri o arquivo /boot/grub/menu.lst com seu editor de texto favorito:

sudo gedit /boot/grub/menu.lst

Para colocar a senha nas entradas do menu GRUB de sua preferência, você deve adicionar o seguinte a cada uma das entradas que deseja proteger:

senha --md5 my_password

Onde my_password seria a senha (criptografada) retornada por md5crypt: Antes:

título Ubuntu, kernel 2.6.8.1-2-386 (modo de recuperação)
root (hd1,2)
kernel /boot/vmlinuz-2.6.8.1-2-386 root = / dev / hdb3 ro único
initrd /boot/initrd.img-2.6.8.1-2-386

Depois:

título Ubuntu, kernel 2.6.8.1-2-386 (modo de recuperação)
root (hd1,2)
kernel /boot/vmlinuz-2.6.8.1-2-386 root = / dev / hdb3 ro único
initrd /boot/initrd.img-2.6.8.1-2-386
password –md5 $1$w7Epf0$vX6rxpozznLAVxZGkcFcs

Salve o arquivo e reinicie. Assim tão fácil! Para evitar, não só que uma pessoa mal-intencionada possa alterar os parâmetros de configuração da entrada protegida, mas também que nem mesmo inicie aquele sistema, pode-se adicionar uma linha na entrada "protegida", após o parâmetro título. Seguindo nosso exemplo, seria algo assim:

título Ubuntu, kernel 2.6.8.1-2-386 (modo de recuperação)
trancar
root (hd1,2)
kernel /boot/vmlinuz-2.6.8.1-2-386 root = / dev / hdb3 ro único
initrd /boot/initrd.img-2.6.8.1-2-386
password –md5 $1$w7Epf0$vX6rxpozznLAVxZGkcFcs

Na próxima vez que alguém quiser iniciar esse sistema, terá que inserir a senha.

fonte: delanover & Fazer uso de & Fóruns Ubuntu & Desenvolvedor Elav


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Marcelo miranda dito

    Olá, quero ajuda, por favor, quero proteger o kernel do meu sistema android com uma senha porque se o dispositivo for roubado, eles trocam a ROM e eu nunca conseguiria recuperá-la! Se você puder me ajudar ... Tenho acesso de superusuário, mas quero que ele me peça um passe quando colocar o dispositivo em modo de download. Desde já, obrigado.

  2.   Jose damian dito

    Excelente contribuição. Subscrito