Linux
在 chroot 監獄中使用 SELinux 有意義嗎?
chroot
在監獄中使用 SELinux 有意義嗎?我在想,既然在chroot
監獄裡應該只有最低限度的,其他的就不能妥協了。
chroot
在監獄中使用 SELinux 是否還有好處?
是的,即使在容器中也可能值得強制執行 SELinux 策略。SELinux 背後的一個想法是有第二道防線,即如果某個容器(或
chroot
)中斷,其中的程序可能仍然無法執行它想要的操作 - 或者,由於 SELinux,它甚至可能無法破壞容器 -或者,它甚至不能在容器/chroot 中做一些不受歡迎的事情。
chroot 監獄只阻止在 chroot 中執行的程序直接訪問 chroot 之外的文件。它不會阻止 chroot 中的程序訪問文件以外的東西,例如其他程序(如果以同一使用者身份執行,則可以被殺死和跟踪)、網路等。它也不會阻止 chroot 中的程序從利用其他程序的錯誤(例如 setuid 程序)。
Chroot 本身並不是一個安全工具。Chroot 僅結合其他措施提供安全性;至少,在監獄內執行的任何程序都必須在與監獄外執行的任何程序不同的使用者 ID 下執行。
SELinux,如果設置正確(這可能很困難),即使對於以 root 身份執行的程序,也可以提供隔離。如果你有 SELinux,Chroot 作為安全工具實際上是多餘的——你可以設置 SELinux 以將程序限制在某些目錄中——但正確設置要容易得多。