什么是 SELinux?为什么都想要禁用它?
原创 入门小站 入门小站 2023-05-06 21:30 发表于湖北 收录于合集#Linux778个 入门小站 分享运维技巧及10k+Stars的开源项目 241篇原创内容 公众号【Linux250个常用命令速查手册】关注【入门小站】,后台回复 「1001」 自取。
什么是SELinux?
SELinux 是一种安全增强型 Linux 安全模块,用于控制 subjects(例如程序、进程等)访问 objects(例如文件、设备等)的权限和可访问性。SELinux 基于政治策略,这些策略由安全策略分析家编写,包括如何允许和拒绝系统中的对象和主体进行交互。它提供了比标准 Linux 安全性更高级别的访问控制和安全性保护。
然而,许多人想要禁用 SELinux,因为它可以很难配置和管理。一些用户可能会发现它导致他们访问某些文件或应用程序时遇到了麻烦。此外,由于 SELinux 根据其预定义的策略来执行访问控制,这使得它很难与某些程序或服务进行集成。
SELinux如何工作?
SELinux执行访问策略,内核在每个进程需要访问文件或对象时将遵循该策略。根据策略,每个文件或进程都被分配一个标签。因此,当具有a:a:a标签的进程需要访问文件(具有b:b:b标签的文件)时,两者都应匹配(除了根据策略按层次结构进行的MLS配置)。
在此处和这里阅读有关标记的更多信息。
请注意,禁用服务器中的SELinux会带来很多威胁。确保您这样做的原因不是因为方便,也不是因为文章中的推测内容,而是有一个有效的原因。
禁用SE Linux的缺点
禁用SELinux后,每个进程都将像在普通Linux系统中一样访问文件。无法防止滥用权利。黑客进程可能会访问不需要其原始目的的机密文件,并可能被滥用。这是一个严重的问题。
如果具有根权限的进程受到攻击,则整个系统处于风险之中。 SELinux提供的是更严格的安全性。在此处了解更多风险信息。
如果它是一种安全功能,为什么要禁用SELinux?因为通常极端的安全功能会成为一种痛苦。 SELinux也是如此。因为它对哪些文件可由哪些进程访问太严格,而您在服务器上可能会难以使各种服务正常工作。
例如,如果/var/lib中的文件归root所有,并具有000的文件权限,则需要这些文件的程序将不会运行。
此外,在调试应用程序时,SELinux会成为问题。禁用它可以省去您的麻烦。
提示:在SELinux中使用被动模式 一个相对较好的做法是在部署应用程序或调试问题之前将SELinux置于被动模式中,然后在此之后重新启用它。
被动模式的工作方式就像禁用了SELinux,但是同时,它将记录下使SELinux处于启用状态的日志。
这样,您可以从/var/log/messages日志中了解如果启用SELinux会发生什么情况。检查拒绝信息。
在CentOS和其他Linux发行版中禁用SELinux
- 第1步:打开配置文件/ etc / selinux / config或其符号链接/ etc / sysconfig / selinux
- 第2步:将行从SELINUX=enforcing更改为SELINUX=disabled。
- 第3步:重启系统或使用setenforce 0将SELinux模式更改为当前会话,更改将在重启时生效。
加入我的星球一起学习
Ansible自动化运维快速入门
和25个常用Shell脚本细讲
,免费提问
入门小站 分享运维技巧及10k+Stars的开源项目 241篇原创内容 公众号 收录于合集 #Linux 778个 上一篇可以通过Web访问的Linux终端工具!下一篇Linux中可怕的fork炸弹 阅读 1883 写下你的留言 精选留言【Linux250个常用命令速查手册】关注【入门小站】,后台回复 「1001」 自取。
- elite✈️ 来自北京 根本没说到点子上,主要是因为SELinux是米国国安局强加的间谍软件。 入门小站 (作者) linus怎么能允许呢
- 小张 来自陕西 问个事情,你这个知识星球和鱼皮的一样吗 入门小站 (作者) 不一样哦