linux之selinux

SELinux,全称SecurityEnhancedLinux,是一种安全优化的Linux。
它是由美国国家安全局(NSA)和其他安全机构(如SCC)联合开发的,旨在提高传统Linux操作系统的安全性,解决传统Linux中自由访问控制(DAC)系统(如:DAC)中的各种权限问题。
例如过多的root权限等)。
SELinux提供了三种工作模式:Disabled、Allowed和Enforced,每种模式提供不同的Linux系统安全优势。
1.禁用工作模式(Off模式)在禁用模式下,SELinux关闭,并使用标准的DAC访问控制方法。
此模式在不需要增强安全性的环境中很有用。
例如,如果一个正在运行的应用程序从您的角度来看工作正常,但生成大量SELinuxAVC拒绝消息,这可能会使日志文件混乱并导致系统无法使用。
在这种情况下,最简单的解决方案是禁用SELinux。
但是,您还可以为应用程序访问的文件设置正确的安全上下文。
需要注意的是,在禁用SELinux之前,必须考虑系统上是否允许再次使用SELinux。
如果您决定将来将其设置为“Enforcing”或“Permissive”,系统将在系统启动时通过自动SELinux文件重新启动,并在下次重新启动。
关闭SELinux也很容易。
只需编辑配置文件/etc/selinux/config,将文本中的SELINUX=更改为SELINUX=disabled即可。
系统重新启动后,SELinux将被禁用。
2.许可工作模式(permissivemode)在许可模式下,SELinux被启用,但不强制执行安全策略规则。
如果安全策略规则应拒绝访问,则仍允许访问。
但是,系统会向日志文件发送一条消息,指示应拒绝访问。
在某些情况下,audit2allow命令可用于读取SELinux审核日志并生成新的SELinux规则以选择性地允许被拒绝的行为。
这也是允许应用程序在不禁用SELinux的情况下运行的一种方法。
3.执行操作模式(Enforcementmode)从该模式的名称可以看出,在执行模式下,SELinux启动并执行所有安全策略规则。