Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
24.6. Protection de GRUB 2 par un mot de passe
GRUB 2 donne deux types de protection de mot de passe :
- Un mot de passe est exigé pour pouvoir modifier les entreés de menu mais pas pour les entrées de menu boot existantes.
- Un mot de passe est requis pour pouvoir modifier les entrées de menu et pour pouvoir démarrer un, plusieurs ou toutes les entrées de menu.
Configurer GRUB2 pour qu'un mot de passe ne soit exigé que pour les saisie de modification.
Pour demander une authentification de mot de passe afin de modifier les entrées GRUB2, suivre les étapes suivantes :
- Exécutez la commande
grub2-setpassword
en tant qu'utilisateur root :~]#
grub2-setpassword
- Saisir et confirmer le mot de passe :
Enter password: Confirm password:
En suivant cette procédure, vous créerez un fichier
/boot/grub2/user.cfg
qui contient le hachage du mot de passe. L'utilisateur de ce mot de passe, root
, est défini dans le fichier /boot/grub2/grub.cfg
. Avec ce changement, pour modifier une entrée boot au moment de l'amorçage nécessite que vous spécifiez le nom d'utilisateur root
et votre mot de passe.
Configurer GRUB 2 pour qu'un mot de passe soit exigé pour les saisies de modification et de booting.
Définir un mot de passe avec
grub2-setpassword
protègent les entrées de menu de modifications non autorisées, mais pas de booting non autorisé. Pour demander un mot de passe de booting d'entrée, suivre ces étapes après avoir défini le mot de passe avec grub2-setpassword
:
Avertissement
Si vous oubliez le mot de passe GRUB2, il n'y aura pas de booting possible pour les entrées que vous allez reconfigurer dans la procédure suivante.
- Ouvrir un fichier
/boot/grub2/grub.cfg
. - Cherchez l'entrée boot que vous souhaitez protéger avec le mot de passe en cherchant des lignes commençant par
menuentry
. - Supprimer le paramètre
--unrestricted
du bloc d'entrée de menu comme dans l'exemple :[file contents truncated] menuentry 'Red Hat Enterprise Linux Server (3.10.0-327.18.2.rt56.223.el7_2.x86_64) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-c109825c-de2f-4340-a0ef-4f47d19fe4bf' { load_video set gfxpayload=keep [file contents truncated]
- Enregistrer et fermer le fichier.
Vous devez maintenant saisir le nom d'utilisateur et le mot de passe
root
pour le booting.
Note
Les changements au
/boot/grub2/grub.cfg
persistent quand de nouvelles versions de noyau sont installées, mais sont perdues quand on génère à nouveau grub.cfg
par la commande grub2-mkconfig
. Ainsi, pour conserver la protection du mot de passe, il vous faudra utiliser la procédure ci-dessus à chaque fois que vous utiliserez grub2-mkconfig
.
Note
Si vous supprimez le paramètre
--unrestricted
de chaque entrée de menu dans le fichier /boot/grub2/grub.cfg
, alors tous les noyaux nouvellement installés auront une entrée de menu créée sans --unrestricted
et donc, héritera automatiquement la protection du mot de passe.
Mots de passe définis avant la mise à jour à Red Hat Enterprise Linux 7.2
L'outil
grub2-setpassword
a été ajouté dans Red Hat Enterprise Linux 7.2 et représente maintenant la méthode de choix pour définir les mots de passe GRUB 2. Ceci est en contraste avec les anciennes versions de Red Hat Enterprise Linux, où les entrées boot avaient besoin d'être spécifiées manuellement dans le fichier /etc/grub.d/40_custom
, et les superutilisateurs dans le fichier /etc/grub.d/01_users
.
Utilisateurs GRUB 2 supplémentaires
Les entrées boot sans paramètre
--unrestricted
nécessitent le mot de passe root. Cependant, GRUB 2 permet également de créer des utilisateurs non-root supplémentaires qui peuvent initialiser ces entrés sans mot de passe. Vous aurez quand même besoin d'un mot de passe pour modifier ces entrées. Pour obtenir des informations sur la façon de créer ces utilisateurs, voir le manuel GRUB 2.