浅触selinux(持续更新)
ls -lZ 查看selinux权限情况

chcon命令
修改对象(文件)的安全上下文,比如:用户、角色、类型、安全级别。也就是将每个文件的安全环境变更至指定环境。使用--reference选项时,把指定文件的安全环境设置为与参考文件相同。chcon命令位于/usr/bin/chcon。
Gammar
chcon [选项]... 环境 文件...
chcon [选项]... [-u 用户] [-r 角色] [-l 范围] [-t 类型] 文件...
chcon [选项]... --reference=参考文件 文件...
Option
-h, --no-dereference:影响符号连接而非引用的文件。
--reference=参考文件:使用指定参考文件的安全环境,而非指定值。
-R, --recursive:递归处理所有的文件及子目录。
-v, --verbose:为处理的所有文件显示诊断信息。
-u, --user=用户:设置指定用户的目标安全环境。
-r, --role=角色:设置指定角色的目标安全环境。
-t, --type=类型:设置指定类型的目标安全环境。
-l, --range=范围:设置指定范围的目标安全环境。
以下选项是在指定了-R选项时被用于设置如何穿越目录结构体系。如果您指定了多于一个选项,那么只有最后一个会生效。
-H:如果命令行参数是一个通到目录的符号链接,则遍历符号链接。
-L:遍历每一个遇到的通到目录的符号链接。-P:不遍历任何符号链接(默认)。--help:显示此帮助信息并退出。
--version:显示版本信息并退出。 Example:
chcon -u system_u loki.log # 修改loki.log 文件的安全上下文,角色的值 restorecon命令
恢复SELinux文件属性即恢复文件的安全上下文。
Grammar
restorecon [-iFnrRv] [-e excludedir ] [-o filename ] [-f filename | pathname...]
Option
-i:忽略不存在的文件。
-f:infilename 文件 infilename 中记录要处理的文件。
-e:directory 排除目录。
-R/-r:递归处理目录。
-n:不改变文件标签。
-o/outfilename:保存文件列表到 outfilename,在文件不正确情况下。
-v:将过程显示到屏幕上。
-F:强制恢复文件安全语境。
Example:
restorecon -R /var/www/html/ # 使用restorecon来恢复网页主目录中所有文件的SELinux配置信息(如果目标为一个目录,可以添加-R参数递归)
sestatus 命令
-v Verbose check of process and file contexts.
-b Display current state of booleans.


seinfo 命令
查询SELinux的策略提供多少相关规则,一个主体进程能否读取到目标文件资源的重点是在于SELinux的策略以及策略内的各项规则,然后再通过该规则的定义去处理各项目标文件的安全上下文,尤其是“类型”部分。
GRAMMAR:
seinfo [OPTIONS] [EXPRESSION] [POLICY ...]
EXPRESSIONS:
-c[NAME], --class[=NAME] print object classes
--sensitivity[=NAME] print sensitivities
--category[=NAME] print categories
-t[NAME], --type[=NAME] print types (no aliases or attributes)
-a[NAME], --attribute[=NAME] print type attributes
-r[NAME], --role[=NAME] print roles
-u[NAME], --user[=NAME] print users
-b[NAME], --bool[=NAME] print conditional booleans
--constrain print constrain statements
--initialsid[=NAME] print initial SIDs
--fs_use[=TYPE] print fs_use statements
--genfscon[=TYPE] print genfscon statements
--netifcon[=NAME] print netif contexts
--nodecon[=ADDR] print node contexts
--permissive print permissive types
--polcap print policy capabilities
--portcon[=PORT] print port contexts
--protocol=PROTO specify a protocol for portcons
--all print all of the above
OPTIONS:
-x, --expand show more info for specified components
--stats print useful policy statistics
-l, --line-breaks print line breaks in constrain statements
-h, --help print this help text and exit
-V, --version print version information and exit
For component options, if NAME is provided, then only show info for
NAME. Specifying a name is most useful when used with the -x option.
If no option is provided, display useful policy statistics (-s).
The default source policy, or if that is unavailable the default binary
policy, will be opened if no policy is provided.
EXAMPLE:
seinfo -b # list all tyep(bool)
semanage命令
查询与修改SELinux默认目录的安全上下文。
GRAMMAR:
semanage {login|user|port|interface|fcontext|translation} -l
semanage fcontext -{a|d|m} [-frst] file_spec
OPTION:
-l:查询。
fcontext:主要用在安全上下文方面。
-a:增加,你可以增加一些目录的默认安全上下文类型设置。
-m:修改。
-d:删除。
getsebool命令
查询SElinux策略内各项规则的布尔值。
getsebool [-a] [布尔值条款]
-a:列出目前系统上面的所有布尔值条款设置为开启或关闭值。
setsebool命令
修改SElinux策略内各项规则的布尔值。
setsebool [-P] 布尔值=[0|1] # 1 是开启, 0 是关闭
-P:直接将设置值写入配置文件,该设置数据将来会生效的。
setsebool -P allow_ftpd_anon_write=1 # 允许vsvtp匿名用户写入权限
setsebool -P ftp_home_dir 1 # 如果你希望你的ftp用户可以访问自己的家目录的话,需要开启
sesearch命令
使用seinfo命令可以查询SELinux的策略提供多少相关规则,如果查到的相关类型或者布尔值,想要知道详细规则时,使用sesearch命令查询。
sesearch [-a] [-s 主体类型] [-t 目标类型] [-b 布尔值]
-a:列出该类型或布尔值的所有相关信息
-t:后面还要接类型,例如 -t httpd_t
-b:后面还要接布尔值的规则,例如 -b httpd_enable_ftp_server
sesearch --all |grep "logrotate"
REFER TO:
http://man.linuxde.net/
浅触selinux(持续更新)的更多相关文章
- 【持续更新】JavaScript常见面试题整理
[重点提前说]这篇博客里的问题涉及到了了JS中常见的的基础知识点,也是面试中常见的一些问题,建议初入职场的园友Mark收藏,本文会持续更新~ 1. 引入JS的三种方式 1.在HTML标签中直接使用,直 ...
- LookAround开元之旅(持续更新中...)
应用介绍随便瞧瞧是一款为android用户量身定做的免费图文资讯软件集美食,文学,语录等频道于一体界面简洁,操作流畅,图文分享,个性收藏是广大卓粉的必备神器APK下载 -->https://ra ...
- BAT 前端开发面经 —— 吐血总结 前端相关片段整理——持续更新 前端基础精简总结 Web Storage You don't know js
BAT 前端开发面经 —— 吐血总结 目录 1. Tencent 2. 阿里 3. 百度 更好阅读,请移步这里 聊之前 最近暑期实习招聘已经开始,个人目前参加了阿里的内推及腾讯和百度的实习生招聘, ...
- iPadOS 更新日志 - 持续更新中
本文只是为了简单记录一下每个正式版本发布时间和更新内容,只有这个初衷,从2019年9月25日开始,将会持续更新. iPadOS 13.1 - 2019年9月25日 经全新命名的 iPadOS 是一款强 ...
- iOS 更新日志 - 持续更新中
本文只是为了简单记录一下每个正式版本发布时间和更新内容,只有这个初衷,从2019年9月25日开始,将会持续更新. iOS 13.1 - 2019年9月25日 iOS 13.1 iOS 13.1 包括错 ...
- 2020/1/29 PHP代码审计之进一步学习XSS【持续更新】
0x00 上午学习了XSS漏洞,中午吃饭想了想,还是思考的太浅层了,这种老生常谈的东西对于现在的我意义不大.现在我需要的是思考.于是就有了这个随笔.在本文中,我会持续更新一些XSS的深入思考,payl ...
- 深入理解Java虚拟机--个人总结(持续更新)
深入理解Java虚拟机--个人总结(持续更新) 每天按照书本学一点,会把自己的总结思考写下来,形成输出,持续更新,立帖为证 -- 2020年7月7日 开始第一次学习 -- 2020年7月8日 今天在百 ...
- JVM面试题(史上最强、持续更新、吐血推荐)
文章很长而且持续更新,建议收藏起来,慢慢读! 高并发 发烧友社群:疯狂创客圈(总入口) 奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : 极致经典 + 社群大片好评 < Java 高并发 三部 ...
- Zookeeper 面试题(持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
随机推荐
- linux常用命令:ln 命令
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在 ...
- 查看firefox浏览器 驱动geckodriver.exe文件的版本号的方法,以及下载链接
1-进入到geckodriver.exe文件的目录: 2-在路径栏下输入cmd: 3-命令行界面下输入:geckodriver.exe -h 可以看到文件的帮助信息,其中第一行就列出了版本号 为0.1 ...
- jquery一句话实现快速搜索功能
jquery一句话实现快速搜索功能 //快捷搜索公共方法,其中obj为显示行的子节点function filter(obj, filterNameValue){ $(obj).hide().filte ...
- mysql日志文件目录
默认情况下mysql的二进制日志文件保存在默认的数据目录data下,如:/usr/local/mysql/data 修改日志保存目录(/backup/mysqlbinlog/mysql-bin)的话: ...
- android 接受系统锁屏广播,及高版本发送广播
protected BroadcastReceiver messageReceiver = new BroadcastReceiver() { @Override public void onRece ...
- 安装使用composer基本流程
composer工作原理: 这里经过几个步骤:1.composer读取composer.json(这个文件手动建立,官网有格式),这个json是在当前执行composer目录的,如果目录下没有这个js ...
- 20145127 《Java程序设计》第四次实验报告
在本周,我们进行了Andirod部分的学习,这一次实验是使用Andirod Studio来运行简单的Andirod小程序,并在自己的手机虚拟机上显示自己的学号,为了达到这一效果,我在Andirod S ...
- UVa 1471 Defense Lines - 线段树 - 离散化
题意是说给一个序列,删掉其中一段连续的子序列(貌似可以为空),使得新的序列中最长的连续递增子序列最长. 网上似乎最多的做法是二分查找优化,然而不会,只会值域线段树和离散化... 先预处理出所有的点所能 ...
- C++ 一串数字三位一节,用逗号隔开表示
#include <iostream> #include <string> #include <sstream> using namespace std; stri ...
- C# 获取当前IIS请求地址
using System;using System.Collections.Generic;using System.Linq;using System.Web; /// <summary> ...