最小特权原则鼓励我们限制软件组件只访问它们需要的资源。然而,在默认情况下,Linux进程可以做任何它正在运行的用户可以做的事情——从绑定到任意端口到生成新的shell。的Linux安全模块(LSM)框架,它允许将安全扩展插入内核,已用于在Linux上实现MAC。SELinux和AppArmor是主要的和最著名的与内核兼容的lsm实现。我们建议团队学习使用这些安全框架之一(这就是为什么我们将其放在Adopt环中的原因)。他们帮助团队评估关于谁可以访问共享主机上的哪些资源的问题,包括包含的服务。这种保守的访问管理方法将帮助团队将安全性构建到他们的SDLC流程中。
应用白名单已被证明是减轻网络入侵攻击最有效的方法之一.实现这个广泛推荐的实践的一个方便的方法是通过Linux安全模块.随着大多数Linux发行版中默认包含SELinux或AppArmor,以及更全面的工具(如Grsecurity)的可用,我们在这个版本中将该技术纳入了Adopt环。这些工具帮助团队评估关于谁可以访问共享主机上的哪些资源(包括包含的服务)的问题。这种保守的访问管理方法将帮助团队将安全性构建到他们的SDLC流程中。
虽然服务器加固是一项老技术,对于管理生产系统的系统管理员来说是相当普遍的技术,但在开发人员社区中还没有普及。然而,DevOps文化的兴起导致了对SELinux、AppArmor和Grsecurity等工具的重新关注,这些工具旨在使这一过程变得更简单,至少在Linux生态系统中是这样。这些工具都有各自的优缺点,目前很难选择一个作为唯一需要的工具。也就是说,我们强烈建议所有团队至少评估哪一个Linux安全模块将是他们的正确选择,并使安全和服务器加固成为他们开发工作流程的一部分。