SELinux refpolicy详解(9)
接前一篇文章:SELinux refpolicy详解(8)
三、refpolicy内容详解
上一回讲解了refpolicy源码根目录下的build.conf文件的前一部分内容。本回继续讲解其后一部分。
2. build.conf
文件路径:refpolicy源码根目录/build.conf。
文件内容如下:
########################################
#
# Policy build options
## Policy version
# By default, checkpolicy will create the highest
# version policy it supports. Setting this will
# override the version. This only has an
# effect for monolithic policies.
#OUTPUT_POLICY = 33# Policy Type
# standard, mls, mcs
TYPE = standard# Policy Name
# If set, this will be used as the policy
# name. Otherwise the policy type will be
# used for the name.
NAME = refpolicy# Distribution
# Some distributions have portions of policy
# for programs or configurations specific to the
# distribution. Setting this will enable options
# for the distribution.
# redhat, gentoo, debian, suse, and rhel4 are current options.
# Fedora users should enable redhat.
#DISTRO = redhat# Unknown Permissions Handling
# The behavior for handling permissions defined in the
# kernel but missing from the policy. The permissions
# can either be allowed, denied, or the policy loading
# can be rejected.
# allow, deny, and reject are current options.
UNK_PERMS = deny# Direct admin init
# Setting this will allow sysadm to directly
# run init scripts, instead of requiring run_init.
# This is a build option, as role transitions do
# not work in conditional policy.
DIRECT_INITRC = n# Systemd
# Setting this will configure systemd as the init system.
SYSTEMD = n# Build monolithic policy. Putting y here
# will build a monolithic policy.
MONOLITHIC = n# User-based access control (UBAC)
# Enable UBAC for role separations.
UBAC = y# Custom build options. This field enables custom
# build options. Putting foo here will enable
# build option blocks named foo. Options should be
# separated by spaces.
CUSTOM_BUILDOPT =# Number of MLS Sensitivities
# The sensitivities will be s0 to s(MLS_SENS-1).
# Dominance will be in increasing numerical order
# with s0 being lowest.
MLS_SENS = 16# Number of MLS Categories
# The categories will be c0 to c(MLS_CATS-1).
MLS_CATS = 1024# Number of MCS Categories
# The categories will be c0 to c(MLS_CATS-1).
MCS_CATS = 1024# Set this to y to only display status messages
# during build.
QUIET = n# Set this to treat warnings as errors.
WERROR = n
策略构建选项:
- DIRECT_INITRC
直接管理初始化。
设置此选项将允许sysadm直接运行init脚本,而不需要run_init。
这是一个构建选项,因为角色转换在条件策略中不起作用。
README中的讲解:
布尔(类型)。
如果设置(为y),sysadm将被允许直接运行init脚本,而不需要run_init工具。
这是一个构建选项,而不是可调的,因为角色转换在条件策略中不起作用。
此选项控制direct_sysadm_demon策略块。
注:此项在build.conf中默认设置为n。
对应代码片段:
# Direct admin init
# Setting this will allow sysadm to directly
# run init scripts, instead of requiring run_init.
# This is a build option, as role transitions do
# not work in conditional policy.
DIRECT_INITRC = n
- SYSTEMD
Systemd。
设置此项将把systemd配置为init系统。
README中的讲解:
布尔(类型)。
如果设置,则systemd将被假定为init进程的提供者。
注:此项在build.conf中默认设置为n。
对应代码片段:
# Systemd
# Setting this will configure systemd as the init system.
SYSTEMD = n
- MONOLITHIC
构建单一整体策略。
把y放在这里将建立一个单一整体的策略。
README中的讲解:
布尔(类型)。
如果设置(为y),则构建一个单一整体策略;否则(为n)构建一个模块化策略。
注:此项在build.conf中默认设置为n。
对应代码片段:
# Build monolithic policy. Putting y here
# will build a monolithic policy.
MONOLITHIC = n
- UBAC
基于用户的访问控制(UBAC)。
为角色分离启用UBAC。
README中的讲解:
布尔(类型)。
如果设置,SELinux用户将额外用于近似的角色分离。
注:此项在build.conf中默认设置为y。
对应代码片段:
# User-based access control (UBAC)
# Enable UBAC for role separations.
UBAC = y
- CUSTOM_BUILDOPT
自定义生成选项。
此字段启用自定义生成选项。
在此处放置foo将启用名为foo的构建选项块。选项应该用空格分隔。
README中的讲解:
无。
对应代码片段:
# Custom build options. This field enables custom
# build options. Putting foo here will enable
# build option blocks named foo. Options should be
# separated by spaces.
CUSTOM_BUILDOPT =
- MLS_SENS
MLS敏感度的数量。
灵敏度为s0到s(MLS_SENS-1)。
优势将以数字顺序递增,s0最低。
README中的讲解:
整数(类型)。
设置MLS策略中的敏感度数量。在standard和MCS策略忽略此项。
注:此项在build.conf中默认设置为16。
对应代码片段:
# Number of MLS Sensitivities
# The sensitivities will be s0 to s(MLS_SENS-1).
# Dominance will be in increasing numerical order
# with s0 being lowest.
MLS_SENS = 16
- MLS_CATS
MLS类别的数量。
类别为c0到c(MLS_CATS-1)。
README中的讲解:
整数(类型)。
设置MLS策略中的类别数。在standard和MCS策略忽略此项。
注:此项在build.conf中默认设置为1024。
对应代码片段:
# Number of MLS Categories
# The categories will be c0 to c(MLS_CATS-1).
MLS_CATS = 1024
- MCS_CATS
MCS类别的数量。
类别为c0到c(MCS_CATS-1)。
README中的讲解:
整数(类型)。
设置MCS策略中的类别数。在standard和MLS策略中忽略此项。
注:此项在build.conf中默认设置为1024。
对应代码片段:
# Number of MCS Categories
# The categories will be c0 to c(MLS_CATS-1).
MCS_CATS = 1024
- QUIET
将此值设置为y可在构建期间仅显示状态消息。
README中的讲解:
布尔(类型)。
如果设置,则构建系统将仅显示状态消息和错误消息。此选项对策略没有影响。
注:此项在build.conf中默认设置为n。
对应代码片段:
# Set this to y to only display status messages
# during build.
QUIET = n
- WERROR
若此项设置,则将警告视为错误。
README中的讲解:
布尔(类型)。
如果设置,则构建系统将把警告视为错误。如果遇到任何警告,则构建将失败。
注:此项在build.conf中默认设置为n。
对应代码片段:
# Set this to treat warnings as errors.
WERROR = n
至此,build.conf文件就全部讲解完了。
相关文章:
SELinux refpolicy详解(9)
接前一篇文章:SELinux refpolicy详解(8) 三、refpolicy内容详解 上一回讲解了refpolicy源码根目录下的build.conf文件的前一部分内容。本回继续讲解其后一部分。 2. build.conf 文件路径:refpolicy源码根目录/build.conf。 文…...
零基础上手,秒识别检测,IDEA研究院发布全新T-Rex模型
目标检测作为当前计算机视觉落地的热点技术之一,已被广泛应用于自动驾驶、智慧园区、工业检测和卫星遥感等场景。开发者在研究相关目标检测技术时,通常需熟练掌握图像目标检测框架,如通用目标检测框架 YOLO 系列,旋转目标检测框架…...
python每日一题——20旋转图像
题目 给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]]…...
云计算生成式 -给你不一样的音乐推荐新体验
目录 摘要: 正文: 一、亚马逊云与生成式 AI 结合的展望/总结 二、我用亚马逊云科技生成式 AI 产品打造了什么,解决了什么问题 三、未来云端技术发展趋势的见解 四、云端技术未来需要解决的问题 1、如何保护数据安全和隐私? …...
Zabbix 6.0部署+自定义监控项+自动发现与自动注册+部署zabbix代理服务器
Zabbix 6.0 Zabbix 6.0一、关于zabbix1、什么是zabbix2、zabbix工作原理3、zabbix 6.0 特性4、zabbix 6.0 功能组件 二、Zabbix 6.0 部署1、 部署 zabbix 服务端(1) 部署 Nginx PHP 环境并测试(2) 部署数据库(3) 编译安装 zabbix server 服务端(4) 部署 Web 前端,进…...
Docker 简介及其常用命令详解
Docker 简介及其常用命令详解 Docker 自推出以来,已成为开发和运维领域的重要工具。它简化了应用的部署、测试和分发过程,使得容器化技术成为现代软件开发的标准实践。本文将为您提供Docker的基础介绍以及其常用命令的详细讲解。 什么是Docker…...
基于PHP的高中生物学习平台
有需要请加文章底部Q哦 可远程调试 基于PHP的高中生物学习平台 一 介绍 此高中生物学习平台基于原生PHP开发,数据库mysql。系统角色分为用户和管理员。(附带参考设计文档) 技术栈:phpmysqlphpstudyvscode 二 功能 学生 1 注册/登录/注销 2 个人中心 …...
Git多库多账号本地SSH连接配置方法
Git多库多账号本地SSH连接配置方法 一、前言二、环境三、帮助文档四、多环境配置4.1 配置config文件 五、生成RSA秘钥对5.1 ssh秘钥位置5.2 生成秘钥对(公钥、私钥)5.3 添加公钥到GIT用户配置中 六 测试git是否可以使用七、总结 一、前言 在使用Git管理…...
爬虫学习-基础(HTTP原理)
目录 一、URL和URI 二、HTTP和HTTPS (1)HTTP (2)HTTPS (3)HTTP与HTTPS区别 (4)HTTPS对HTTP的改进:双问的身份认证 三、TCP协议 (1)TCP三次握手…...
Gazebo 中为地面和车轮添加摩擦属性
Gazebo 中为地面和车轮添加摩擦属性 Link friction properties not applied from URDF to Gazebo SDFormat Specification Adding friction to model wheels Gazebo中模型自行滑动(后溜)的原因探究 移动机器人在仿真时,一旦以较大的速度启动&…...
【重点】【滑动窗口】3. 无重复字符的最长子串
题目 参考《算法小抄》重的解法,重点理解!!! class Solution {public int lengthOfLongestSubstring(String s) {if (s.length() < 2) {return s.length();}char[] array s.toCharArray();int left 0, right 0, res 0;int…...
python初始化矩阵相关
做算法题经常需要初始化一个二维的dp数组 下面两种方法是最常用的 matrix [[0]*n]*n matrix [[0]*n for _ in range(n)]以前经常混用也没发现什么问题,直到昨天debug的时候发现第一种初始化之后对矩阵进行赋值时混乱的,比如matrix[0][1]2会导致所有行…...
C++ :运算符重载
运算符重载: 运算符重载概念:对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型 运算符的重载实际是一种特殊的函数重载,必须定义一个函数,并告诉C编译器,当遇到该重载的运算符…...
如何跑通跨窗口渲染:multipleWindow3dScene
New 这是一个跨窗口渲染的示例,用 Three.js 和 localStorage 在同一源(同产品窗口)上跨窗口设置 3D 场景。而这也是本周推特和前端圈的一个热点,有不少人在争相模仿它的实现,如果你对跨窗口的渲染有兴趣,可…...
flutter-web中使用js工具类
文章目录 为什么要调用js1. flutter-web1. 引入js web/index.html2. 创建工具js web/CryptoEnc.js3. 创建对应的lib/js/js_interop.dart4. 由于引入的js是针对web平台的,所以引入需要做引入处理5. 使用 2. Android1. 引入依赖2. index.html3. dart引用 为什么要调用…...
@ResponseBody详解:用于响应体响应数据
RestFul风格或者是web阶段接触过的异步请求,都需要把数据转换成Json放入响应体中。 ResponseBody的作用其实是将java对象转为json格式的相应内容 使用 RequestMapping注解时,Spring会将返回值解析为视图路径,然后跳转路径返回对应的视图页面…...
【Python百练——第3练】矩形类及操作
💐作者:insist-- 💐个人主页:insist-- 的个人主页 理想主义的花,最终会盛开在浪漫主义的土壤里,我们的热情永远不会熄灭,在现实平凡中,我们终将上岸,阳光万里 ❤️欢迎点…...
【C语言学习疑难杂症】C语言中数组存储时为什么从低地址到高地址
在C语言中,数组的存储从低地址到高地址是有其历史原因的。这种设计主要是为了与计算机系统的内存组织方式相一致。 在计算机系统中,内存通常按照字节进行编址,地址从低到高递增。数组在内存中是连续存储的,因此数组的第一个元素&…...
Linux:查看端口占用的进程
命令 netstat -tunlp可以从图中看到,端口被那个进程占用,对应进程的pid是多少。...
医美店会员管理系统预约小程序作用是什么
医美在美业中占据着一定地位,爱美使然和经济独立、悦己消费下,不少女性会前往医美机构做脸部整容、嫩肤补水等服务,如美容院一样都是具备本地外地属性的,因此在如今互联网盛行下,商家需要借势线上破解难题及增强生意效…...
钱学森物理大一统:宇宙速度阶梯尺 全套公版正式文档(带可计算代码)
宇宙速度阶梯尺 全套公版正式文档 (无版权全开源全民通用可直接印刷发布/平台投稿/社区分发) 开篇总纲 定名:本源速度阶梯尺 核心主旨:大道至简,以地球天然标准音速为万物速度本源基底,以宇宙真空光速为速度…...
Steam游戏清单一键下载:告别繁琐操作,3分钟搞定你的游戏库管理
Steam游戏清单一键下载:告别繁琐操作,3分钟搞定你的游戏库管理 【免费下载链接】Onekey Onekey Steam Depot Manifest Downloader 项目地址: https://gitcode.com/gh_mirrors/one/Onekey 还在为复杂的Steam游戏清单下载而烦恼吗?Oneke…...
通达信缠论插件ChanlunX:3分钟实现专业缠论分析的完整解决方案
通达信缠论插件ChanlunX:3分钟实现专业缠论分析的完整解决方案 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 你是否曾经面对复杂的K线图感到无从下手?是否因为缠论的手工绘制耗时…...
别再手动整理了!用这个油猴脚本,5分钟搞定百度网盘群文件目录导出
百度网盘群文件目录导出神器:油猴脚本极简操作指南 1. 为什么需要群文件目录导出工具 百度网盘作为国内主流的云存储服务,群组文件共享功能被广泛用于团队协作、资源分发等场景。但官方界面存在一个明显的痛点:当群文件数量达到数百甚至上千时…...
《Java 100 天进阶之路》第23篇:缓冲区数据结构 ByteBuffer
第23篇:缓冲区数据结构 ByteBuffer 📌 系列导航:《Java 100 天进阶之路》完整目录 | ⬅️ 上一篇:第22篇:Java字符串简介 | ➡️ 下一篇:第24篇:Java枚举类型 enum 用法👈 待发布 一…...
FPGA新手避坑指南:用Vivado IP核搞定AXI总线,从看懂波形开始
FPGA新手避坑指南:用Vivado IP核搞定AXI总线,从看懂波形开始 第一次在Vivado中看到AXI总线波形时,我盯着屏幕上跳动的信号线完全摸不着头脑。VALID和READY信号像在玩捉迷藏,突发传输的时序如同天书——这大概是每个FPGA初学者都会…...
终极Citra 3DS模拟器完整指南:在电脑上免费畅玩任天堂3DS游戏
终极Citra 3DS模拟器完整指南:在电脑上免费畅玩任天堂3DS游戏 【免费下载链接】citra A Nintendo 3DS Emulator 项目地址: https://gitcode.com/GitHub_Trending/ci/citra 想要在电脑上重温《精灵宝可梦》系列、《塞尔达传说》等经典3DS游戏吗?Ci…...
Excel插件E灵实战:把杂乱的家庭成员明细表,一键变成规整的‘一户一档’报表
Excel插件E灵实战:从杂乱数据到专业报表的智能转换 在日常办公中,我们经常需要处理各种家庭成员信息表,这些原始数据往往杂乱无章,包含重复、缺失或不规范的记录。传统的手工整理方式不仅耗时费力,还容易出错。本文将详…...
从电赛A题到实战:手把手教你搞定单相交流电子负载的SPWM控制与功率因数调节
从电赛A题到实战:手把手教你搞定单相交流电子负载的SPWM控制与功率因数调节 在电子设计竞赛中,单相交流电子负载的设计一直是极具挑战性的题目。它不仅考验参赛者对电力电子技术的理解,更要求具备将理论转化为实际电路的能力。本文将从硬件选…...
告别手动处理!用MATLAB App Designer打造你的专属数据(图片/表格)预处理小工具
告别手动处理!用MATLAB App Designer打造你的专属数据预处理小工具 在数据分析与科研工作中,我们常常陷入重复性劳动的泥潭:每次收到新数据集都要用不同软件打开图片查看尺寸、用Excel检查表格结构、用统计工具计算基础指标。这种碎片化操作不…...
