4.7.4. root 密码安全
为阻止人们使用 root 权限访问你的机器,你需要做下面的操作。
阻止对硬盘的物理访问
锁住 BIOS 来阻止从可移动介质启动
为 GRUB 交互式会话设置密码
锁住 GRUB 菜单,禁止编辑
如果可以物理访问硬盘,则可以使用下面的步骤,相对简单的重置密码。
将硬盘拿到一个可以设置 BIOS 从CD 启动的电脑。
使用紧急介质启动系统(Debian 启动磁盘, Knoppix CD, GRUB CD, …)。
用读写访问挂载根分区。
编辑根分区的”
/etc/passwd
“文件,使root
账户条目的第二段为空。
对于 grub-rescue-pc
,即使用紧急介质启动的电脑,如果有编辑 GRUB 菜单条目 (参见 第 3.1.2 节 “第二阶段:引载加载程序”) 的权限,在启动时,使用下面的步骤更加简单。
使用内核参数启动系统来修改一些事情,比如说,”
root=/dev/hda6 rw init=/bin/sh
“.编辑 “
/etc/passwd
“ 文件,使root
账户条目的第二段为空。重启系统。
系统的 root shell 现在可以无密码访问了。
注意 | |
---|---|
一旦某人拥有 root shell 访问权限,他能够访问任何内容,并可以重设系统上的任何密码。此外,他可以使用 |
为避免这些相关问题,仅有的理论上的软件解决方案是使用 dm-crypt 和 initramfs (参见 第 9.8 节 “数据加密提示”)加密 root 分区(或 “/etc
“ 分区) 。这样的话,你总是需要密码来启动系统。