Chinaunix首页 | 论坛 | 博客
  • 博客访问: 47476
  • 博文数量: 19
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 28
  • 用 户 组: 普通用户
  • 注册时间: 2014-12-16 14:42
文章分类
文章存档

2015年(16)

2014年(3)

我的朋友

分类: LINUX

2015-06-03 14:25:53

原文地址:Grub2启动加密 作者:fuleru

 

需求:在grub2菜单有选项A、及B。A是默认启动的项,如果用户选择了B,则需要输入密码才能启动。可以做到么?注意,不是编辑grub2的菜单加密。

终于实现此功能:

    系统是Debian GNU/Linux squeeze/sid,编辑/etc/grub.d/00_header文件,增加
下面的内容:

 

cat << EOF
set superusers="ct"
password ct ct@xxer
EOF
#设置用户ct与密码ct@xxer

cat << EOF
if keystatus; then
  if keystatus --shift; then
    set timeout=-1
  else
    set timeout=0
  fi
else
  if sleep --interruptible 3 ; then
    set timeout=0
  fi
fi
EOF
#设置shift键

      然后再在/etc/grub.d/40_custom 文件后面增加下面的内容:


 

menuentry "B" --users ct {
insmod ntfs
set root=(hd0,msdos6)
set isofile="/isos/db_recovery.iso"
loopback loop $isofile
linux (loop)/live/vmlinuz boot=live union=aufs noswap noprompt vga=788 ip=frommedia toram=filesystem.squashfs findiso=$isofile
initrd (loop)/live/initrd.img
}

 

    注意“--users ct”这一段

然后update-grub2,更新grub2配置。


这样设置后,系统默认启动设置的项。

当有需要时,在grub2启动时,按住shift进入grub2菜单,如果需要编辑grub菜单,则需要grub2设置的用户跟密码;如果想启动Debian Recovery项,也是需要密码。
这样的密码是明文的,如果密码是使用grub-mkpasswd-pbkdf2生成,则把生成的串值代替成password段是密码的那段,如password_pbkdf2 ct .....

参考内容:


阅读(2456) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~