如何对Linux的grub进行加密
2013-11-10 12:52
429 查看
一、加密
设置grub密码:
众所周知,通过编辑GRUB启动参数可以轻松的进入单用户模式从而修改root密码,这对于一台多用户的计算机或服务器来说,无疑增加了安全隐患。大家一定很像为自己的GRUB加一把锁吧,大家可以通过GRUB的password参数对GRUB设置密码。
GRUB的密码设置可分为全局密码和菜单密码,为了防止他人通过GRUB修改root密码大家需要设置一个全局密码。在splashimage这个参数的下一行可以加上password=密码,保存后重新启动计算机,再次登录到GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑。
虽然我们设置了全局密码,但是如果他人得到了全局密码后仍然可以修改GRUB启动标签从而修改root密码;这样我们就可以设置菜单密码,设置菜单密码也非常简单,我们只需要在title的下一行加上password=密码,然后保存退出。这样即使有了全局密码也必需输入菜单密码才能够引导系统。此外,如果直接对GRUB进行明文加密也是非常不安全的,所以就要使用MD5对其进行加密。在终端中输入grub-md5-crypt回车,这时系统会要求输入两次相同的密码,之后系统便会输出MD5码。大家只需要将生成的MD5密文复制下来,然后在按照password--md5
MD5密文这个格式设置全局或者菜单密码,保存退出,重启计算机即可。
1、计算grub的MD5加密密码:
#grub-md5-crypt
Password:
Retype password:
输入两遍密码进行确认以后,就会计算出你所输入密码的MD5加密值,如:$1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ
复制该密码进行MD5加密后的值。
2、设置grub密码:
#vi /boot/grub/grub.conf
比如我原来的/boot/grub/grub.conf文件的内容是下面的。
default=1
timeout=10
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
title Fedora Core (2.4.22-1.2061.nptl)
root (hd0,7)
kernel /boot/vmlinuz-2.4.22-1.2061.nptlro root=LABEL=/
initrd /boot/initrd-2.4.22-1.2061.nptl.img
title WindowsXP
rootnoverify (hd0,0)
chainloader +1
所以我要在/boot/grub/grub.conf中加入 password ——md5 $1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ 这行,以及lock,应该加到哪呢,请看下面的更改实例;
timeout=10
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
password ——md5 $1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ
title Fedora Core (2.4.22-1.2061.nptl)
lock
root (hd0,7)
kernel /boot/vmlinuz-2.4.22-1.2061.nptlro root=LABEL=/
initrd /boot/initrd-2.4.22-1.2061.nptl.img
title WindowsXP
rootnoverify (hd0,0)
chainloader +1
lock的意思就是把Redhat Fedora锁住了。如果启动时会提示错误。这时就应该按P键,然后输入密码就行了。
使用password,lock命令实现几种加密方法如下:
1)单纯对GRUB界面加密,而不对被引导的系统加密在timeout一行下面加一行: password ——md5 PASSWORD
2)对GRUB界面加密,同时对被引导的系统加密在timeout一行下面加一行: password ——md5 PASSWORD 在title一行下面加一行: lock
3)同时存在多个被引导系统,针对特定的系统实例分别加密(未对GRUB操作界面加密) 在title一行下面加一行: lock 在lock一行下面紧贴着再加一行: password ——md5 PASSWORD 注:lock不能单独使用.
二、解密
当Linux系统管理员密码忘记,又不能编辑grub菜单进行单用户模式重置密码,怎么办呢,只有对grub进行解密了。
1、用Linux第一张安装光盘引导系统,进入修复模式。
2、光盘引导系统,选择区域和语言,不用启动网卡。
3、出现Rescue菜单,选择Continue,再弹出一个Rescue菜单,会显示“chroot /mnt/sysimage”,OK。
4、sh-3.2#chroot /mnt/sysimage,若不执行此步,进系统不能进行改写。
5、执行passwd对用户密码进行重置,完后重启正常进入系统。
6、编辑/boot/grub/grub.conf,去掉“password --md5 $1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ”这一行即可。
设置grub密码:
众所周知,通过编辑GRUB启动参数可以轻松的进入单用户模式从而修改root密码,这对于一台多用户的计算机或服务器来说,无疑增加了安全隐患。大家一定很像为自己的GRUB加一把锁吧,大家可以通过GRUB的password参数对GRUB设置密码。
GRUB的密码设置可分为全局密码和菜单密码,为了防止他人通过GRUB修改root密码大家需要设置一个全局密码。在splashimage这个参数的下一行可以加上password=密码,保存后重新启动计算机,再次登录到GRUB菜单页面的时候就会发现,这时已经不能直接使用e命令编辑启动标签了,须先使用p命令,输入正确的密码后才能够对启动标签进行编辑。
虽然我们设置了全局密码,但是如果他人得到了全局密码后仍然可以修改GRUB启动标签从而修改root密码;这样我们就可以设置菜单密码,设置菜单密码也非常简单,我们只需要在title的下一行加上password=密码,然后保存退出。这样即使有了全局密码也必需输入菜单密码才能够引导系统。此外,如果直接对GRUB进行明文加密也是非常不安全的,所以就要使用MD5对其进行加密。在终端中输入grub-md5-crypt回车,这时系统会要求输入两次相同的密码,之后系统便会输出MD5码。大家只需要将生成的MD5密文复制下来,然后在按照password--md5
MD5密文这个格式设置全局或者菜单密码,保存退出,重启计算机即可。
1、计算grub的MD5加密密码:
#grub-md5-crypt
Password:
Retype password:
输入两遍密码进行确认以后,就会计算出你所输入密码的MD5加密值,如:$1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ
复制该密码进行MD5加密后的值。
2、设置grub密码:
#vi /boot/grub/grub.conf
比如我原来的/boot/grub/grub.conf文件的内容是下面的。
default=1
timeout=10
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
title Fedora Core (2.4.22-1.2061.nptl)
root (hd0,7)
kernel /boot/vmlinuz-2.4.22-1.2061.nptlro root=LABEL=/
initrd /boot/initrd-2.4.22-1.2061.nptl.img
title WindowsXP
rootnoverify (hd0,0)
chainloader +1
所以我要在/boot/grub/grub.conf中加入 password ——md5 $1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ 这行,以及lock,应该加到哪呢,请看下面的更改实例;
timeout=10
splashimage=(hd0,7)/boot/grub/splash.xpm.gz
password ——md5 $1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ
title Fedora Core (2.4.22-1.2061.nptl)
lock
root (hd0,7)
kernel /boot/vmlinuz-2.4.22-1.2061.nptlro root=LABEL=/
initrd /boot/initrd-2.4.22-1.2061.nptl.img
title WindowsXP
rootnoverify (hd0,0)
chainloader +1
lock的意思就是把Redhat Fedora锁住了。如果启动时会提示错误。这时就应该按P键,然后输入密码就行了。
使用password,lock命令实现几种加密方法如下:
1)单纯对GRUB界面加密,而不对被引导的系统加密在timeout一行下面加一行: password ——md5 PASSWORD
2)对GRUB界面加密,同时对被引导的系统加密在timeout一行下面加一行: password ——md5 PASSWORD 在title一行下面加一行: lock
3)同时存在多个被引导系统,针对特定的系统实例分别加密(未对GRUB操作界面加密) 在title一行下面加一行: lock 在lock一行下面紧贴着再加一行: password ——md5 PASSWORD 注:lock不能单独使用.
二、解密
当Linux系统管理员密码忘记,又不能编辑grub菜单进行单用户模式重置密码,怎么办呢,只有对grub进行解密了。
1、用Linux第一张安装光盘引导系统,进入修复模式。
2、光盘引导系统,选择区域和语言,不用启动网卡。
3、出现Rescue菜单,选择Continue,再弹出一个Rescue菜单,会显示“chroot /mnt/sysimage”,OK。
4、sh-3.2#chroot /mnt/sysimage,若不执行此步,进系统不能进行改写。
5、执行passwd对用户密码进行重置,完后重启正常进入系统。
6、编辑/boot/grub/grub.conf,去掉“password --md5 $1$3VbjX/$PTzUC7OpcO3QunjIsB6LZ”这一行即可。
相关文章推荐
- 如何对Linux的grub进行加密
- Linux如何使用GPG(GNU Privacy Guard)对信息/文件进行加密和解密
- 关于Linux grub加密禁止非密码用户进入单用户模式
- Linux下如何进行FTP设置
- Linux下grub配置文件以及加密和解密
- 安卓下如何进行MD5加密以及SHA1加密
- 如何在linux系统下对文件夹名有空格的文件夹进行操作
- LINUX安全第一课||关于GRUB加密图文教程全解
- Linux 入门记录:十八、Linux 系统启动流程 + 单用户修改 root 密码 + GRUB 加密
- 用openssl进行rsa的加密与解密(linux,C++版)
- LINUX下如何直接对MYSQL数据库进行备份?
- 译:在ASP.NET中如何对cookies进行加密和解密
- Linux:多进程访问同一文件,如何用文件锁进行保护, fcntl()详解
- 分享如何使用PHP将URL地址参数进行加密传输提高网站安全性
- linux(centos)如何使用svn进行多个版本库的配置
- 如何使用Java对密码进行加密 Java Sah加密方式帮你实现加密
- 如何使用CryptoJS配合Java进行AES加密和解密
- Linux下如何进行FTP设置
- Linux下面如何进行C语言编程技术教程
- python—如何使用post进行登录操作与非对称加密的破解