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
下一篇 2016-09-19

相关推荐

  • Linux系统安装

    概述:     上篇我们讨论了下关于Linux系统的启动流程和grub相关的内容,本篇将介绍一下Linux的系统安装相关的内容,具体分为:     1、系统安装程序anaconda的介绍     2、kickstart文件的介绍 &nbsp…

    学员作品 2016-09-15
  • for,while,until循环

    一、用until实现下列作业 1、每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并提示该用户退出系统。 #!/bin/bash until  who | grep "^\<hacker\>" > /var/log/l…

    学员作品 2016-08-22
  • 马哥教育网络班20期-第八周课程作业

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。 集线器的英文称为“Hub”。主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它…

    学员作品 2016-09-08
  • sed 流编辑器 练习

    8-9 sed 练习 1、删除/etc/grub2.conf文件中所有以空白开头的行行首的 空白字符 sed 's@^[[:space:]]@@g' /etc/grub2.conf  2、删除/etc/fstab文件中所有以#开头,后面至少跟一个空 白字符的行的行首的#和空白字符 sed 's@^#[[:space:]]\{1…

    学员作品 2016-08-10
  • 马哥教育网络班20期-第七周课程作业

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;     ]#mke2fs -t ext4 -b 2048 -L MYDATA -m&n…

    学员作品 2016-09-07
  • 正则表达式

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

    Linux干货 2016-08-08

评论列表(1条)

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

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