Linux中的selinux的使用

Linux中的selinux的作用是什么,具体设置怎么设置,查看怎么查看

selinux的作用:
对于文件的影响:
当selinux开启时,内核会对每个文件及每个开启的程序进行标签加载
标签内记录程序和文件的安全上下文(context)
对于程序功能的影响:
当selinux开启会对程序的功能加载开关,并设定此开关的状态为关闭
当需要此功能时需要手动开启功能开关
此开关叫做sebool

查看方式:
vim /etc/selinux/config
SELINUX=disabled #selinux关闭
SELINUX=enforcing #selinux开机设定为强制状态此状态为selinux开启
SELINUX=permissive #selinux开机设定为警告状态此状态为selinux开启

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/821929
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:linux中如何关闭selinux
  • 除此之外, 这篇博客: Linux selinux的作用及关闭方法中的 selinux的作用及关闭方法 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    简介 :
    安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。

    作用 :
    最大限度地减小系统中服务进程可访问的资源(最小权限原则)。

    工作模式 :

    1. enforcing:强制模式。违反 SELinux 规则的行为将被阻止并记录到日志中。
    2. permissive:宽容模式。违反 SELinux 规则的行为只会记录到日志中。一般为调试用。
    3. disabled:关闭 SELinux

    关闭方法 :

    1. 临时关闭:关机重启都会失效

      setenforce 0或者setenforce permissive(中间状态)

    2. 永久关闭:关机重启都会有效

      步骤1 :将SELINUX=enforcing改为SELINUX=disabled

      sed -i ‘s#SELINUX=disabled#SELINUX=enforcing#g’ /etc/selinux/config

      步骤2 :查看配置文件看是否修改成功

      cat /etc/selinux/config

      步骤3 :重启系统

      reboot

      步骤4:检查selinux系统是否被成功关闭

      getenforce

  • 以下回答来自chatgpt:

    selinux是一种强制访问控制机制,可以增强系统的安全性。它的作用是根据安全策略限制系统中各种进程和文件的行为,使得它们只能访问被赋予的权限。同时,selinux可以通过安全上下文来控制被访问的对象,即只有满足特定安全上下文的进程和文件才能被访问。

    设置selinux可以通过修改配置文件来实现。在/etc/sysconfig/selinux中,可以将SELINUX的值修改为disabled、Enforcing或Permissive来分别对应关闭selinux、强制模式和宽松模式。修改后需要重启生效。使用getenforce命令可以查看当前selinux状态。可以使用setenforce命令来临时修改selinux状态,但是在重启后会被还原。

    查看文件和进程的安全上下文可以使用ls -Z和ps -Z命令。在文件和目录中,安全上下文可以控制访问权限。在服务中,通过设置开关来允许或禁止服务的功能执行。对于文件的移动或复制操作,如果源文件的安全上下文和目标文件不同,则目标文件的安全上下文会被重新生成。

    示例代码:

    1. 查看当前selinux状态
    getenforce
    
    1. 修改selinux配置文件,在Enforcing状态下限制文件访问
    vim /etc/sysconfig/selinux
    # 将SELINUX的值改为Enforcing,保存并退出
    reboot
    
    1. 查看目录中文件的安全上下文
    ls -Z /var/ftp
    
    1. 使用本地用户进行访问,尝试上传文件
    lftp 172.25.254.204 -u student
    # 输入密码
    put /etc/group
    # 无法上传,功能被限制
    
    1. 创建新文件并移动到公共家目录中,再尝试访问该文件
    touch /mnt/file2
    mv /mnt/file2 /var/ftp
    ls /var/ftp
    # 查看到该文件存在
    lftp 172.25.254.204
    ls
    # 无法查看file2文件
    
    1. 查看文件的安全上下文
    ls -Z /var/ftp
    

    注意:selinux对系统安全性的提升是多方面的,本文仅是其中的一些使用方法,对于复杂的系统配置,建议阅读更多资料或咨询专业人士。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^