我的设置:
- 在生产中,我为每个 Web 应用程序分片使用一个虚拟服务器。分片位于负载均衡器后面。
- 在后台,我们在单个虚拟服务器上运行 Web 应用程序 + DB。后台仅受非身份验证摘要的保护测试员用户。Web 应用程序直接暴露。
Web 应用程序由转到 net.http服务器。运行的代码仅由我们的团队。我们不会将平台暴露给第三方用户来运行他们的代码。
对于这两种设置,都有一个专用的、非特权的用户运行该应用程序。
值得使用吗chroot运行 Web 应用程序时?
我应该使用任何其他安全调整吗?
答案1
“是否值得”主要取决于您的优先事项和您在服务器上运行的应用程序类型。
例如,如果您运行的代码不是您自己放置的,例如,如果您的客户将代码上传到您的服务器,那么使用 chroot 可能是一个好主意。或者,如果您运行的第三方应用程序可能存在安全漏洞并允许攻击者在您的服务器上运行代码,那么将其放入 chroot 中可能也是更好的选择(我自己在使用 PHPMyAdmin 时就遇到过这种情况)。此外,如果您的服务器正在运行多个不同的应用程序,那么最好进行 chroot。这样,您就可以确保如果其中一个应用程序被黑客入侵,攻击者也无法影响/修改其他托管应用程序之一。
否则,如果此服务器上没有运行任何其他程序,则主应用程序之外的任何内容都不会被窃取,并且您准备在服务器被黑客入侵时简单地重新初始化它,也许 chrooting 就没有必要了。