CentOS_note_4

本贴最后更新于 2780 天前,其中的信息可能已经斗转星移

系统启动

普通 pc 机系统启动的流程:

  1. BIOS

  2. MBR:Boot Code

  3. GRUB

  4. 加载内核

  5. 执行 init

  6. runlevel

BIOS

Basic Input Output System,基本输入输出系统,称之为 BIOS。保存在电脑的主板上。

BIOS,第一负责检查硬件,第二查找可启动的设备(如硬盘,U 盘等)

可启动设备是指里面包含引导代码

MBR

MBR 不属于任何系统,他其实是硬盘最开始的 512 个字节。

BIOS 启动其内含的引导代码。引导代码去加载 GRUB(一个更复杂的引导程序,因为 MBR 只有少量字节,只能作为一个跳板或者中转站)

MBR 前 446 字节为引导代码,后面第 447 到 512 个字节用来让 BIOS 识别自己。

GRUB

Linux 的主流引导程序。使用范围很广。

GRUB 相关文件保存在 centos 的/boot/grub 目录中

转到这个目录下

会出现几个主要的文件,如 stage1,stage2,grub.conf(启动配置)

内核

之后加载内核。

内核保存在/boot/vmlinuz 字样的文件里。一同加载的还有一个驱动打包文件,同一目录下 initramf 字样的文件。

Linux 的内核是精简的内核,所以一些驱动都放在另一个文件里,在需要的时候再动态加载,从而不影响速度。

init

init 是操作系统上的第一个进程(pid 是 1),内核去运行他。并且一直存在这个进程,直到系统关闭。

init 进程:初始化系统,挂载系统文件,根据级别去启动服务

这里的级别就是下面的 runlevel,他决定系统以什么级别运行,/etc/inittab 可以修改默认运行级别

/etc/init 下也有很多初始配置文件

runlevel

Linux 的运行级别。总共分为 7 个级别。

一般常用

级别 0:关机

级别 3:不使用图形界面

级别 5:使用图形界面

级别 6:restart

防止物理修改 root 密码

之前说到系统启动的流程,实际上是可以在这个流程里,通过物理接触主机的方式,直接修改 root 密码,并且你不需要输入原来的密码。

步骤如下:

  1. 在启动时,使用上下键,使得系统停在 grub 的引导界面

  2. 使用 e 修改引导配置。

  3. 在引导内核的一行最后加入数字 1(效果就是 grub 告诉内核,你按照级别 1 去启动系统,级别 1 是一个单用户模式,自动进入 root)

  4. 进入系统后直接使用 passwd 直接修改密码就行

从这里可以看出,只要有人接近你的主机,就可以用物理的方式修改你的 root 密码,从而获得 root 权限。因此需要一个特殊的 grub 密码

grub 密码是指,对之前的步骤 2 进行了修改,如果要进入修改引导配置,需要先输入 grub 密码,许可后才可以修改。

配置 grup 密码

在 grub.conf 文件中,加入一行:

  • password --md5 laodf.......

这个密码还是用 md5 方式加密的,更安全一点,最后那串东西是 md5 加密后的密码,当然也可以直接明文,password 后跟上密码。

Linux 自带的 grub-md5-crypt 命令可以帮助生成 md5

总结

其实在 grub 密码配置这一段,已经涉及到了信息的保护,信息安全的保护很复杂,没有一个完美的保护方案。

技术只能作为保护的一面,关键突破还在于人。即使是 grub 加密,仍然可以通过把硬盘偷走,挂载到别的 Linux 系统下进行修改从而获得信息这种物理的手法。

大部分人都觉得自己的家是安全的,直到有一天忽然发现自己被锁在了门外,我们的看法才会在刹那间改变,才明白原来安全漏洞是那么明显

--《社会工程-安全体系中的人性漏洞》

  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    946 引用 • 943 回帖
  • grub
    5 引用

相关帖子

回帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...