新聞中心

圖 1 GRUB界面
如圖 1 所示,每個啟動選項都支持按"e"鍵進入編輯模式。在編輯模式中可以修改啟動模式,比如進入單用戶模式(單用戶模式主要用于破解密碼,我們將在后續(xù)章節(jié)中講 解)。
但是有時候,我們不想讓用戶進入編輯模式,就需要給 GRUB 菜單加密。那么,如何生成加密的密碼串呢?可以通過命令
grub-md5-crypt 來實現(xiàn)。命令如下:
[root@localhost ~]# grub-md5-crypt
Password:
Retype password:
#輸入兩次密碼
$1$Y84LB1$8tMY2PibScmuOCc8z8U35/
#生成加密的密碼串
這樣就可以生成加密的密碼串,這個字符串是采用 MD5 加密的,我們會利用這個加密的密碼串來加密 GRUB 配置文件。
GRUB 的加密有兩種模式:
- 給每個啟動菜單加密,如果不輸入正確的密碼,則系統(tǒng)不能正常啟動;
- 給 GRUB 菜單整體加密,如果想進入編輯模式,則必須輸入正確的密碼;
給每個啟動菜單加密
如果給每個啟動菜單加密,那么系統(tǒng)在啟動時進入相應(yīng)的啟動菜單,必須輸入正確的密碼,否則系統(tǒng)不能啟動。具體的方法如下:
[root@localhost ~]# vi /boot/grub/grub.conf
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-279.el6.i686)
password --md5 $l$Y84LBl$8tHY2PibScmuOCc8z8D35/
#加入password選項,密碼串是通過grub-md5-crypt命令生成的
root(hd0,0)
kernel /vmlinuz-2.6.32-279.el6?i686 ro root=UUID=b9a7ala8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_N0_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_N0_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-279.el6.i686.img
這樣就能加密 CentOS 啟動菜單了,在啟動時如果不輸入正確的密碼,是不能啟動系統(tǒng)的。需要注意的是,password 選項一定要在 title 下面第一行。
給GRUB菜單整體加密
如果只是加密單個啟動菜單,那么 GRUB 的編輯模式是不能被鎖定的,仍然可以按"e"鍵進入編輯模式。而且在進入編輯模式后,是可以刪除 password 字段的,再按"b"(boot啟動)鍵就可以不用密碼直接進入系統(tǒng)。這時就需要給 GRUB 菜單整體加密。在整體加密后,如果想進入 GRUB 編輯界面,則必須輸入正確的密碼。加密方法其實只是把 password 字段換一個位置而已,具體方法如下:
[root@localhost ~]# vi /boot/grub/grub.conf
default=0
timeout=5
password --md5 $l$Y84LBl$8tMY2PibScmuOCc8z8U35/
#將password選項放在整體設(shè)置處
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-279.el6.i686)
root (hd0,0)
kernel /vmlinuz-2.6.32-279.el6.i686 ro root=UUID=b9a7ala8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-279.el6.i686.img
這樣就會把 GRUB 界面整體加密,要想進入 GRUB 的編輯界面,必須先輸入正確的密碼,如圖 2 所示。
圖 2 GRUB 整體加密
注意到了嗎?在 GRUB 界面中已經(jīng)看不到"e"鍵了,必須輸入"p"鍵,并輸入正確的密碼才能進入編輯界面。但是這樣加密,在啟動 CentOS 時,是不需要密碼就能正常啟動的。如果既需要 GRUB 的整體加密,又需要系統(tǒng)啟動時輸入正確的密碼,應(yīng)該怎么做呢?
很簡單,方法如下:
default=0
timeout=5
password --md5 $l$Y84LBl$8tHY2PibScmuOCc8z8U35/
splashimage=(hdO,0)/grub/splash.xpm.gz hiddenmenu
title CentOS (2.6.32-279.el6.i686) lock
#在title字段下加入lock選項,代表鎖死,如果不輸入正確的GRUB密碼,則不能啟動root(hd0,0)
kernel /vmlinuz-2.6.32-279.el6.i686 ro root=UUID=b9a7ala8-767f-4a87-8a2b-a535edb362c9 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
initrd / initramf s-2.6.32-27.9 .el6.i686. img
只要在 GRUB 整體配置中加入 password 選項,在 title 中加入 lock 選項,就可以既加密 GRUB 編輯界面,又加密系統(tǒng)啟動過程了。是不是很簡單?
標(biāo)題名稱:LinuxGRUB加密方法詳解(2種加密方式)
文章源于:http://www.dlmjj.cn/article/dppjcio.html


咨詢
建站咨詢
