我想使在 Live Boot 会话期间无法发出任何 root 命令。 我不希望任何人都能够以 root 身份登录。 时期!
那么,是否可以停止 sudo 服务?如果可以,这能完成我想要做的事情吗?
我尝试了下面三个可能的停止服务命令但chkconfig --list
显示 sudo 仍然有效:
(1)
sudo stop sudo
(2)
sudo /etc/init.d/sudo stop
(3)
sudo service sudo stop
答案1
您必须限制物理访问。如果有人可以物理访问您的计算机(硬盘),那么无论使用哪种操作系统,他们都有 root 访问权限。
这就是他们将服务器放在上锁的房间的原因=)
其次是加密安装。这将使具有物理访问权限的人难以或无法访问您的数据(假设计算机已关闭并且他们没有安装修改后的内核)。
为了进一步完善我的回答,既然您已经询问了有关设置信息亭的问题..
首先,您需要通过某种机制(sudo 或 su,任您选择)获得 root 访问权限,以执行系统管理。因为完全禁用 sudo 、su 或所有 root 访问权限是不现实的。根据您发布的内容,我会考虑使用 apparmor 锁定您的信息亭(查看用户帐户的 apparmor 配置文件作为模板)。
如果您不知道如何使用 apparmor,请使用以信息亭形式构建的发行版。为什么要重新发明轮子?
这里的选项
1)使用带有 guest 帐户的 Ubuntu。guest 帐户受 apparmor 限制:
http://dangertux.wordpress.com/2011/11/22/341/
2)还有其他选择
Fedora 使信息亭旋转,使用 selinux 锁定
http://spins.fedoraproject.org/kiosk/#home
3)其他干扰因素
答案2
你无法摆脱sudo
思维方式,但你可以明确定义用户可以做什么,从禁止sudo
到要求特定命令输入密码。它非常强大。
您可以使用sudoers
/etc/sudoers 文件控制谁可以在哪些机器上以哪些用户身份运行哪些命令,还可以控制特殊事项,例如是否需要为特定命令输入密码。
它通过四种别名实现这一点:User_Alias、Runas_Alias、Host_Alias 和 Cmnd_Alias,它们的工作原理正如其名称所暗示的那样。
哪个