天天看點

第七章 Selinux

7.1 DAC與MAC

  DAC:Linux自己的安全機制叫做DAC(Discretionary Access Control,自主通路控制)

  MAC:SELinux實作的功能叫做MAC(Mandatory Access Control,強制通路控制機制)

7.2 selinux的工作級别與機制

  SELinux:Secure Enhanced Linux,工作于Linux核心中。

  SELinux有兩種工作級别:

    strict:嚴格級别,每個程序都受到selinux的控制

    targeted:僅有限個程序受到selinux的控制

      隻監控容易被入侵的程序

  SELinux工作機制:

    SELinux采用類似沙箱(sandbox)的方式來運作程序:

      subject operation object

      subject:程序

      object:可以是程序,可以是檔案

        适用于檔案的操作:open,read,write,close,chown,chmod

    SELinux為每個檔案提供了安全标簽,也為程序提供了安全标簽:

      user:role:type

      user:SELinux的user

      role:角色

      type:類型

    SELinux規則庫:

      規則:定義了哪種域能通路哪種或哪些種類型内的檔案

      遵循“法無授權即禁止”的規則,也就是說沒有明确授權的所有操作均禁止

7.3 selinux的配置

  SELinux是否啟用:在/etc/selinux/config檔案中定義

  SELinux的狀态:

    enforcing:強制,每個受限的程序都必然受限

    permissive:啟用,每個受限的程序違規操作時不會被禁止,但會被記錄于審計日志

    disabled:禁用

    相關指令:

      getenforce:擷取selinux目前狀态

      setenforce 0|1

        0:設定為permissive

        1:設定為enforcing

      此設定僅目前有效,重新開機系統後無效

      配置檔案:/etc/sysconfig/selinux,/etc/selinux/config

        SELINUX={disabled|enforcing|permissive}

  給檔案重新打标簽:

    chcon:change context,改變上下文

    chcon [option]... CONTEXT FILE...

    chcon [option]... [-u USER] [-r ROLE] [-t TYPE] FILE...

    chcon [option]...  --reference=RFILE FILE...

    -R:遞歸打标簽

  還原檔案的預設标簽: 

    restorecon [-R] /path/to/somewhere(可以是檔案,也可以是目錄)

  設定某些布爾型特性:

    getsebool

      例:

    setsebool

繼續閱讀