目的是為了防止他人修改grub,用單用戶模式啟動。
grub加密碼只需要修改grub啟動文件,增加一行 password 關鍵字,可以采用明文存儲或者MD5 加密後存儲。下面我們介紹一下用 MD5 加密的方式。
1、先用 /sbin/grub-md5-crypt 產生一個MD5密碼串
/sbin/grub-md5-crypt
Password:
Retype password:
{GetProperty(Content)}$oWpTe$/MWUUYbBlF.2RUZK8nbWU0
原始密碼是 "abc"。
2、修改 grub.conf 文件
default=0
timeout=5
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
password --md5 {GetProperty(Content)}$oWpTe$/MWUUYbBlF.2RUZK8nbWU0
title Red Hat Enterprise Linux AS (2.6.x-xx.EL)
.........
這裡要注意, password 這樣必須加在 splashimage 和 title 之間這段,否則不能生效。
然後重啟機器,就會發現想要修改 grub 菜單,就必須要先按 P 然後輸入正確的密碼才可以繼續了。
再附上一個用 sed 修改 grub.conf 方法,可以利用這個方法批量修改所有的服務器。
GRUB=/boot/grub/grub.conf
TEMP=/tmp/grub.conf
grep -v password $GRUB && cat $TEMP | sed -e 's/hiddenmenu/hiddenmenu\npassword --
md5 \{GetProperty(Content)}\$oWpTe\$\/MWUUYbBlF.2RUZK8nbWU0/g' > $GRUB