如何在Debian,Ubuntu和Kali Linux上密码保护grub

大家好!
您是否认为您正在运行Linux Os,并使用用户密码来限制访问权限来保护它?
并非如此,因为有人可以使用grub轻松更改用户密码,这可能会损害系统的安全性。那你该如何控制呢?
您需要设置GRUB密码。这就是方法。
编辑文件。

/etc/grub.d/00_header

输入以下内容以创建密码。

# grub-mkpasswd-pbkdf2

输入所需的密码。

如下面的屏幕快照所示,这将生成一个长的加密密码。

复制整个生成的代码
使用vi或leafpad例如编辑文件/etc/grub.d/00_header

# vi /etc/grub.d/00_header

# sudo leafpad /etc/grub.d/00_header

移至文件末尾。 vi使用G移至文件末尾(当使用叶子板滚动至文件末尾时)。
输入以下命令:

cat << EOF
set superusers="username"
password_pbkdf2 username 'paste the generated code copied above here'
EOF

例如,以我的情况检查屏幕截图

如何在Debian,Ubuntu和Kali Linux上密码保护grub

保存更改,退出编辑器并使用以下命令之一更新grub。

# update-grub

# grub-mkconfig -o /boot/grub/grub.cfg

要测试您的更改,请重新启动系统。如果以上步骤成功,请选择grub条目并启动它,系统将提示您输入用户名和密码。输入这些凭据,然后去那里,您的手套将得到保护!

另一方面,

如果您忘记了密码或grub密码不起作用,这是一种使用可启动的实时闪存驱动器或DVD恢复更改的方法。查看有关如何创建可启动闪存驱动器的链接。创建后,使用它来引导系统。

实时启动后,请按照此处描述的步骤进行操作。
启动gparted并检查安装系统操作系统的分区(在我的情况下检查屏幕截图)

如何在Debian,Ubuntu和Kali Linux上密码保护grub

使用以下命令挂载Linux OS根分区

# sudo mount /dev/sda6 /mnt/
# cd /mnt/

然后按原样输入以下命令:

# for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; 
done

使用/etc/grub.d/00_header文件进行编辑

vi /etc/grub.d/00_header

就我而言,删除最后添加的行,如下所示,

cat << EOF
set superusers="Koromicha"
password_pbkdf2 Koromicha grub.pbkdf2.sha512.10000.0EF3409AFA03D25C3CFCC47EE7664B8BE6A9554D5D9ADBB9D78
084820957098E4B7F360A28C896EC83522A7A0516701E1E54AC280A5E71D36780D49438579FA5.CC1E540432E3047A
4C8AD38DE14965FA737F7609C73286FEB2EE263FC54F4CBE9ECED1F190AC99DFD8288B768CBBF6FC4134CCF9ABC204
9AC0E39AB28A17866B
EOF

更新GRUB

# update-grub

使用以下命令在主启动记录(MBR)上安装grub

# grub-install /dev/sda

再次更新grub以使更改生效。

# update-grub

重新启动系统后,grub密码提示消失!

Sidebar