首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根用户的只读。

问根用户的只读。
EN

Security用户
提问于 2018-10-20 10:37:52
回答 1查看 159关注 0票数 0

是否有一种永久的、安全的(如完整性方面的)方法使VPS (虚拟专用服务器)的整个Ubuntu系统对所有用户(包括根用户)都是只读的?

EN

回答 1

Security用户

回答已采纳

发布于 2018-10-21 02:32:35

是的,使用强制访问控制。不过,这将是一项非常艰巨的工作。

强制访问控制系统允许您对操作施加限制,即使是由根用户执行的操作,并且能够对进程进行细粒度操作(例如,以根用户身份运行的dhcpcd可以编辑/etc/解析式. can,但以根用户身份运行的vi不能)。

可能不可能有一个运行的Ubuntu系统,它是完全只读的。各种操作系统进程都希望能够写入文件(例如,/bin/login希望更新utmp、btmp、wtmp;很多事情都需要日志记录)。当然,如果您能够找到所有这些文件,您可以允许必要的访问,但这样做是相当繁重的。

最常见的MAC系统是SELinux。引用维基百科的话,

SELinux可以通过非常精确的规范,潜在地控制系统允许每个用户、进程和守护进程进行哪些活动。它用于限制具有明确定义的数据访问和活动权限的数据库引擎或web服务器等守护进程。这将限制来自受限守护进程的潜在危害,使其受到损害。

它与您在评论中声明的目标相匹配:

创建一个在缓冲区溢出的情况下为只读的环境(这将作为一个挑战)。

Ubuntu使用AppArmor而不是SELinux。

MAC系统通常需要“特殊的东西”才能关闭它们,例如重新启动到特殊模式,远程攻击者无法访问该模式。(显然,如果root可以轻松地“关闭它”,那么它就不会保护它不受根保护。)

请允许我重复一遍:做这件事是一项非常艰巨的工作。像SELinux这样的系统很难正确配置;一般来说,您会发现它们在有限的、有针对性的保护配置文件中工作(例如,“不要让web服务器获取东西”),并且在经过测试的操作系统供应商的受控配置中进行分发(例如,Red这样做)。如果你想用它来锁定一切,你有很多工作要做。

就其价值而言,AppArmor的卖点之一是它比SELinux容易,所以你在Ubuntu上的事实可能会给你带来更多的好处。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/196061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档