加密GRUB2
默认情况下,Linux系统GRUB菜单不需要任何密码就可以进行编辑并修改root密码,如若需要加强系统安全,可将GRUB加密!注:加密的方式有明文加密和MD5加密两种。
1、(HREL7/CentOS7)hash算法加密
几乎能接触到物理机的人都能用上面的方法去修改 root 密码,安全性还是有点问题,我们可以通过 grub 菜单加密,进入 grub 时必须输入密码,这样就能避免上述情况发生。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M7tkjxu2-1605745384727)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201019204758065.png)]
grub2-mkpasswd-pbkdf2
# 输入两次密码,生产密码的hash码
Reenter password: PBKDF2 hash of your password is grub.pbkdf2.sha512.10000.497F246861691979B9B7A6E3758A865929ED27D121E913DB7CE825BA8051A6F12C8AFA6A1A497BA87AC2AEEF2FDDC293523114CAC53603B78B6BD790EEE802A7.3E1A2876C499CD9F12A8A634C7D4A18B84F8F0AF69BDB4D9C1E859A1861BB01EA5E34BBF65388CED8F4435C50051C61FBB460E489F1D1E4DA41A5B5984E43F1C
编辑/etc/grub.d/ 下的随意一个文件的名为,添加内容
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3qGNmtCL-1605745384729)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201019163216348.png)]
cat << EOF
set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.10000.497F246861691979B9B7A6E3758A865929ED27D121E913DB7CE825BA8051A6F12C8AFA6A1A497BA87AC2AEEF2FDDC293523114CAC53603B78B6BD790EEE802A7.3E1A2876C499CD9F12A8A634C7D4A18B84F8F0AF69BDB4D9C1E859A1861BB01EA5E34BBF65388CED8F4435C50051C61FBB460E489F1D1E4DA41A5B5984E43F1C
EOF
执行命令,重新生成配置文件
grub2-mkconfig -o /boot/grub2/grub.cfg
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UT05crzU-1605745384730)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201019163343106.png)]
reboot重启
重复单用户破密码步骤(通过密码登录),需要密码才能进入GRUB**
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QH9vy0tn-1605745384732)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201019163449302.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZdQJiPwf-1605745384733)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20201019163454443.png)]
从7.2开始,上述用于保护Grub的方法不起作用。在7.2中引入了新的实用程序“ grub2-setpassword ”
- 执行 grub2-setpassword 命令
# grub2-setpassword Enter password: Confirm password:
如果此时reboot重新启动系统后,并尝试修改引导条目,系统将要求提供凭据。相当于是系统加固,防止进入单用户模式。
2)如果想要启动进入grub时,有账号密码验证,则需要修改 /boot/grub2/grub.cfg 文件 搜索 --unrestricted 关键字 删除
reboot 重启验证,只有当输入正确的用户名和密码时,才能进入 grub 菜单或者修改引导条目。
注:输入密码时无回显,Linux 特征
2、清除grub加密
★GRUB密码忘了怎么办——用光盘救援模式清除GRUB密码
1,使用安装时的系统镜像,刻录成光盘或U盘启动,在安装界面选择 Rescue installed system 进入救援模式;
2,根据提示选择语言和键盘;
3,选择是否配置网卡,选择no;
4,根据硬盘上的系统提示,表示已经找到并挂载在/mnt/sysimage下,选continue用读写模式加载;
5,系统提示 chroot /mnt/sysimage 改变磁盘根目录;
6,选择:shell那一行,输入chroot /mnt/sysimage
7,然后vi /etc/grub.conf把添加的加密密码的那行删除,然后exit退出,reboot重启即可。
注:系统重启后会有些提示什么的不用管它,待系统自动重启一次就可正常进入登录界面了。
3、修复grub(未经测试仅供参考)
★如果grub被破坏了导致系统无法启动该怎么办?
1,使用安装时的系统镜像,刻录成光盘或U盘启动,在安装界面选择 Rescue installed system 进入救援模式;
2,根据提示选择语言和键盘;
3,选择是否配置网卡,选择no;
4,根据硬盘上的系统提示已经找到并挂载在/mnt/sysimage下,选continue用读写模式加载;
5,选择:shell那一行,输入chroot /mnt/sysimage改变磁盘根目录;
6,fdisk -l /dev/sda 使用fdisk查看分区情况;
7,grub-install /dev/sda 安装grub引导程序到磁盘/dev/sda的MBR扇区;
8,exit,reboot重启。
isk查看分区情况;
7,grub-install /dev/sda 安装grub引导程序到磁盘/dev/sda的MBR扇区;
8,exit,reboot重启。