小编mur*_*mur的帖子

如果我的应用程序可以从一开始就在较低级别运行,为什么我要使用 chroot 进行沙箱化以确保安全?

我正在用 C 编写一个 HTTP 服务器守护进程(有原因),用 systemd 单元文件管理它。

我正在重写一个 20 年前设计的应用程序,大约在 1995 年。他们使用的系统是 chroot,然后是 setuid,以及标准程序。

现在在我之前的工作中,通常的策略是永远不要以 root 身份运行任何进程。您为它创建一个用户/组并从那里运行。当然,系统确实以root身份运行了一些东西,但是我们可以不以root身份完成所有业务逻辑处理。

现在对于 HTTP 守护进程,如果我不在应用程序中 chroot,我可以在没有 root 的情况下运行它。那么应用程序永远不会以 root 身份运行不是更安全吗?

从一开始就以 mydaemon-user 身份运行它不是更安全吗?不是用 root 启动它,chrooting,然后 setuid 到 mydaemon-user?

chroot daemon

15
推荐指数
2
解决办法
1783
查看次数

标签 统计

chroot ×1

daemon ×1