参考サイト

GRUBにパスワードを設定するには
grub.confの設定

1. パスワードのハッシュ値を求める

grub-crypt コマンドを使うことで、任意の値に対するSHA-512のハッシュ値が求められる。
ここではハッシュ値を表示するだけで、設定をしているわけではない。

$ grub-crypt
Password:           <- パスワードに設定したい文字列を入力
Retype password:    <- 再度入力
$6$JwVUgOpbTe/F5upc$rIChRUYq0F0NElbM9oqoVUKhTpMyNkfUrBmXQjTOI5azDSoFwL9EvoEn6Qf9Lds41sBtTtQ8wMS6dTR.YC6/0/

2. grub.conf にパスワードを設定

$ sudo vi /boot/grub/grub.conf

/etc/grub/grub.conf の編集内容

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root
#          initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=10
--- CHANGE ---
password --encrypted $6$JwVUgOpbTe/F5upc$rIChRUYq0F0NElbM9oqoVUKhTpMyNkfUrBmXQjTOI5azDSoFwL9EvoEn6Qf9Lds41sBtTtQ8wMS6dTR.YC6/0/    ## この設定を入れることで、起動時にgrubの設定を変更する際にパスワードが必要になる
--- CHANGE ---
splashimage=(hd0,0)/grub/splash.xpm.gz
#hiddenmenu
title CentOS 6 (2.6.32-573.el6.x86_64)
--- CHANGE ---
        lock       ## このオプションを入れることで、OS起動時にもPWが必要になる
--- CHANGE ---
        root (hd0,0)
        kernel /vmlinuz-2.6.32-573.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
        initrd /initramfs-2.6.32-573.el6.x86_64.img