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

相关推荐

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

    4、写一个脚本   (1) 能接受四个参数:start, stop, restart, status    start: 输出“starting 脚本名 finished.”    …   (2) 其它任意参数,均报错退出;     #!bin/b…

    学员作品 2016-12-05
  • sed和vim的爱恨纠缠

    处理文本的工具sed sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(patternspace),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件,简化对文…

    2016-08-10
  • sed 和 vim 的 用法

    处理文本的工具 三剑客之 sed sed是一种流编辑器,它一次处理一行内容。处理时,把 当前处理的行存储在临时缓冲区中,称为“模式空间”( pattern space),接着用sed命令处理缓冲区中的内容 ,处理完成后,把缓冲区的内容送往屏幕。接着处理下一 行,这样不断重复,直到文件末尾。文件内容并没有改变 ,除非你使用重定向存储输出。Sed主要用来自动编辑…

    Linux干货 2016-08-12
  • sed基本用法详解

    一、sed介绍:        sed是非交互式的编辑器,同时又是面向字符流的,一次处理一行文本。当前输入的行被缓存至一个被称为模式空间(pattern space)的内存空间中,与给定的模式进行比对,若不匹配,则将内容输出至屏幕,之后读取第二行;若匹配,则执行编辑命令,命令执行完成后,将模式空间中…

    Linux干货 2016-08-10
  • 马哥教育网络班20期+第11周博客作业

    1、详细描述一次加密通讯的过程,结合图示最佳。 例如:     bob给alice发送一份数据:只能alice看到,不能被篡改。     bob:     首先用单向加密提取数据的特征码,然后用自己的私钥加密这个特征码并放在原有数据的后面;…

    学员作品 2016-09-15
  • ​Linux中的用户与组

    一、用户与UID 1.用户(User)分为管理员与普通用户 2.对于Linux系统而言,通过UID来界定某用户是属于哪个用户,而不是用户名 3.查看某用户的UID可以通过id命令实现,Centos6.8与7.2系统上的UID部分起始数值有所不同 Centos7.2 [root@localhost home]# id root u…

    学员作品 2016-08-10

评论列表(1条)

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

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