Grub mot de passe

Protéger GRUB par un mot de passe

Voir :

https://blog.sleeplessbeastie.eu/2015/01/06/how-to-password-protect-grub-entries/

RedHat

grub2-set-password

Ce script bash va appeler grub2-mkpasswd-pbkdf2

Ce qui crée le fichier suivant

GRUB2_PASSWORD=grub.pbkdf2.sha512.10000.92613724ED40696F3D7917C8F257901BDB39790E6F7DB78830E094D8A60EA6E1DAE7366A64866BCBCD8F9A8FAA6A508DAA560DB3B89A682F58E8D8EB56FC5DE7.95FD391CF51F57EA5CCDC6143B5F9262785DA96857368E40FE4C4710D19D07F513333568B7897B75EF9375FA13395335A823AAEE35A89964022810A72446679C

L'utilisateur est : root

Note : pbkdf2 voir ⇒ https://mjg59.dreamwidth.org/66429.html If the PBKDF is either “pbkdf2” or “argon2i” you should convert to “argon2id”

Debian Jessie (8)

Générer le hash du mot de passe

grub-mkpasswd-pbkdf2

Entrez le mot de passe :
Entrez de nouveau le mot de passe :
Le hachage PBKDF2 du mot de passe est grub.pbkdf2.sha512.10000.F272C7B98DD8F942A27F30637F34D75B9EBC97157E9DB19679D12C22C627DEAE383B2A5AFFC3432457C52EAFA99ACF539C470B1B3631DDA3658F565FCB90B461.8455EB485F5AA06864E7632C698D4B363457B7DD0FC8733F23AF39B90589D0ABAA9D87B134C91C8201AA567F5D8030E2BEA9D4717AA9C6E575253BB099335931

Ajouter les lignes suivantes

set superusers="admin"
password_pbkdf2 admin grub.pbkdf2.sha512.10000.F272C7B98DD8F942A27F30637F34D75B9EBC97157E9DB19679D12C22C627DEAE383B2A5AFFC3432457C52EAFA99ACF539C470B1B3631DDA3658F565FCB90B461.8455EB485F5AA06864E7632C698D4B363457B7DD0FC8733F23AF39B90589D0ABAA9D87B134C91C8201AA567F5D8030E2BEA9D4717AA9C6E575253BB099335931

Mise à jour la conf

update-grub

Debian Wheezy (7)

A tester la même manip que pour Debian Jessie.Mais apparemment la manip diffère.

cat << EOF set superusers="admin" password_pbkdf2 admin grub.pbkdf2.sha512.10000.F272C7B98DD8F942A27F30637F34D75B9EBC97157E9DB19679D12C22C627DEAE383B2A5AFFC3432457C52EAFA99ACF539C470B1B3631DDA3658F565FCB90B461.8455EB485F5AA06864E7632C698D4B363457B7DD0FC8733F23AF39B90589D0ABAA9D87B134C91C8201AA567F5D8030E2BEA9D4717AA9C6E575253BB099335931 EOF

Mise à jour la conf

update-grub

Reset password

RedHat / CentOS

Rebooter le serveur.

Sélectionner la ligne du grub souhaité en la mettant en surbrillance.

Éditer le grub en tapant e.

Modifier la ligne de contenant Linux16, ajouter rd.break à la fin de la ligne

Lancer l’exécution de la ligne modifié en tapant ctrl + x

A l'invite root, remonter /sysroot en lecture/ecriture : mount -o remount,rw /sysroot

chroot /sysroot

passwd root (pour changer le mot de passe)

touch /.autorelabel (créer autorelabel caché pour reetiqueter les contextes selinux correctement).

/sbin/reboot -f