Les options de configuration de Grub 2 sont réparties sur plusieurs fichiers au lieu du fichier unique menu.lst utilisé par Grub 1. Il est donc devenu plus compliqué de définir un mot de passe. Ces étapes s'appliquent à Grub 1.99, utilisé dans Ubuntu 11.10. Le processus peut être différent dans les versions futures.
Générer un hachage de mot de passe
Tout d’abord, nous allons lancer un terminal à partir du menu des applications d’Ubuntu.
Nous allons maintenant générer un mot de passe obscurci pour les fichiers de configuration de Grub. Il suffit de taper grub-mkpasswd-pbkdf2 et appuyez sur Entrée. Il vous demandera un mot de passe et vous donnera une longue chaîne. Sélectionnez la chaîne avec votre souris, cliquez dessus avec le bouton droit de la souris et sélectionnez Copier pour la copier dans votre presse-papiers pour plus tard.
Définir un mot de passe
Type sudo nano /etc/grub.d/40_custom pour ouvrir le fichier 40_custom dans l’éditeur de texte Nano. C'est l'endroit où vous devez définir vos propres paramètres personnalisés. Ils peuvent être écrasés par les versions les plus récentes de Grub si vous les ajoutez ailleurs.
set superusers=”name” password_pbkdf2 name [long string from earlier]
Notez que Bob est un super-utilisateur alors que Jim ne l’est pas. Quelle est la différence? Les super-utilisateurs peuvent modifier les entrées de démarrage et accéder à la ligne de commande Grub, contrairement aux utilisateurs normaux. Vous pouvez affecter des entrées de démarrage spécifiques à des utilisateurs normaux pour leur donner un accès.
Enregistrez le fichier en appuyant sur Ctrl-O et Entrée, puis appuyez sur Ctrl-X pour quitter. Vos modifications ne prendront effet que lorsque vous exécuterez la sudo update-grub commander; voir la section Activation de vos modifications pour plus de détails.
Mot de passe protégeant les entrées de démarrage
La création d'un superutilisateur nous fait presque tout le chemin. Avec un superutilisateur configuré, Grub empêche automatiquement les utilisateurs de modifier les entrées de démarrage ou d'accéder à la ligne de commande Grub sans mot de passe.
Voulez-vous protéger par mot de passe une entrée de démarrage spécifique afin que personne ne puisse la démarrer sans fournir de mot de passe? Nous pouvons le faire aussi, même si c’est un peu plus compliqué pour le moment.
Tout d’abord, nous devrons déterminer le fichier contenant l’entrée de démarrage que vous souhaitez modifier. Type sudo nano /etc/grub.d/ et appuyez sur Tabulation pour afficher une liste des fichiers disponibles.
Disons que nous voulons protéger par mot de passe nos systèmes Linux. Les entrées de démarrage Linux sont générées par le fichier 10_linux. Nous allons donc utiliser le fichier sudo nano /etc/grub.d/10_linux commande pour l'ouvrir. Soyez prudent lorsque vous éditez ce fichier! Si vous oubliez votre mot de passe ou si vous entrez un mot de passe incorrect, vous ne pourrez pas démarrer Linux si vous ne démarrez pas à partir d’un CD live et ne modifiez d’abord votre configuration Grub.
C'est un long fichier avec beaucoup de choses en cours, nous allons donc appuyer sur Ctrl-W pour rechercher la ligne que nous voulons. Type menuentry à l'invite de recherche et appuyez sur Entrée. Vous verrez une ligne commençant par printf.
printf “menuentry ‘${title}’
peu au début de la ligne à:
printf “menuentry –users name ‘${title}”
Appuyez sur Ctrl-O et Entrée, puis sur Ctrl-X pour enregistrer et fermer le fichier après l'avoir modifié.
Cela devrait devenir plus facile avec le temps car les développeurs de Grub ajoutent plus d’options à la commande grub-mkconfig.
Activer vos modifications
Vos modifications ne prendront effet que lorsque vous exécuterez la sudo update-grub commander. Cette commande génère un nouveau fichier de configuration Grub.