Selinux的基本命令及练习

配置
SELinux

相关命令:

      getenforce: 获取selinux当前状态



      sestatus :查看selinux状态



      setenforce 0|1






               1: 设置为enforcing

配置文件:

      /boot/grub/grub.conf



               使用

selinux=0禁用SELinux

      /etc/sysconfig/selinux



      /etc/selinux/config



      SELINUX={disabled|enforcing|permissive}

修改
SELinux安全标签

给文件重新打安全标签:

      chcon [OPTION]... [-u USER] [-r ROLE] [-t

TYPE] FILE…

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



      -R:递归打标;

恢复目录或文件默认的安全上下文:

      restorecon [-R] /path/to/somewhere

默认安全上下文查询与修改

semanage 来自 policycoreutils-python包

查看默认的安全上下文

      semanage fcontext –l

添加安全上下文 semanage fcontext -a –t httpd_sys_content_t

‘/testdir(/.*)?’

      restorecon –Rv /testdir

删除安全上下文

      semanage fcontext           -d –t httpd_sys_content_t

‘/testdir(/.*)?’

Selinux端口标签

查看端口标签

semanage port –l

添加端口

semanage port -a -t port_label -p tcp|udp PORT

semanage port -a -t http_port_t -p tcp 9527 v

删除端口

semanage port -d -t port_label -p tcp|udp PORT

semanage port -d -t http_port_t -p tcp 9527

修改

semanage port -m -t port_label -p tcp|udp PORT

semanage port -m -t http_port_t -p tcp 9527

SELinux布尔值

布尔型规则:

      getsebool



      setsebool

查看bool命令:

      getsebool [-a]



      semanage boolean –l



      semanage boolean -l –C 查看修改过的布尔值

设置bool值命令:

      setsebool [-P] boolean value  



      setsebool [-P] Boolean=value

SELinux 日志管理

yum install setroubleshoot* (重启生效)

将错误的信息写入
/var/log/message

grep setroubleshoot /var/log/messages

sealert -l UUID

查看安全事件日志说明

sealert -a /var/log/audit/audit.log

扫描并分析日志

SELinux帮助

yum -y install selinux-policy-devel 7

yum -y install selinux-policy-doc 6

mandb 7

Makewhatis 6

  • httpd服务,改变网站的默认主目录为/website,添加SELinux文件标签规则,设置http_sys_content_t到 /website及目录下所有文件,使网站可访问

   yum -y install httpd | policycoreutils-python | setroubleshoot |               selinux - policy -devel /doc
在用户家目录新建/website即可。
更改
     etc/httpd/conf/httpd.conf

将userdir disabled 禁用
将userdir 后跟的文件夹改为用户家目录的/website文件夹即可

为文件打上标签。
         chcon -t  –t httpd_sys_content_t  ' /website(/.*)?'
         semanage fcontext -a –t httpd_sys_content_t  ' /website(/.*)?'
  • 修改网站端口为9527,增加SELinux端口标签,使网站可访问

         semanage port -m -t http_port_t -p tcp 9527
  • 启用SELinux布尔值,使用户student的家目录可通过 http访问

              setseboo boolean 1

原创文章,作者:sjfbjs,如若转载,请注明出处:http://www.178linux.com/46617

(1)
sjfbjssjfbjs
上一篇 2016-09-19 13:48
下一篇 2016-09-19 13:48

相关推荐

  • 马哥教育网络班20期+第8周博客作业

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。   网桥:链接层设备,基于MAC地址过滤。   集线器:物理层设备,基本都属于半双工模式。集线器与网桥在现在的局域网中基本都不用了。   二层交换机:基本MAC转发数据,功能齐全的可支持VLAN等功能。常见的有100/1…

    学员作品 2016-09-10
  • Linux学习总结及练习&day08-sed文本处理工具

    第一部分、Linux文本处理三剑客之sed(Stream EDitor)文本编辑工具     一、sed的基本功能工作原理     sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令…

    Linux干货 2016-08-10
  • 马哥教育网络班20期-第九周课程作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash nologinsum=$(awk -F: '$NF~/\/sbin\/nologin$/{print $1}'&n…

    学员作品 2016-09-08
  • Linux文本处理工具sed

    sed工作原理:sed从文件中读取出来一行,并不会直接进行编辑处理而是会放在自己的模式空间内进行处理,处理的结果将会送到标准输出,默认情况下sed可以对每行文本进行处理,也可以让sed处理符合条件的行,我们可以利用正则表达式做文本过滤,模式空间有两种输出结果,一种是可以匹配到的,会根据编辑要求进行处理,例如删除,过滤字符串。另外一种则是匹配失败的,会直接进行…

    学员作品 2016-08-10
  • 正则表达式

    grep:Global search REgular expression and Print out the line         文本搜索工具,根据用户指定的”模式“对目标文本逐行进行匹配检查;打印匹配到的行        模式:由正则表达式字符及文本字符所编写的过滤条件…

    Linux干货 2016-08-08
  • sed & vim练习

    1、 删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符  2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空白字符的行的行首的#和空白字符 3、在/root/install.log每一行行首增加#号 4、在/etc/fstab文件中不以#开头的行的行首增加#号 5、处理/etc/fstab路径,使用s…

    学员作品 2016-08-10

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-20 14:37

    对命令的使用介绍的很全面,但是内容再充实点就好了。