SELinux

基于linux的selinux的两种状态,selinux状态的改变,selinux上下文,selinux布尔值 ####selinux为内核型加强型火墙 ####1、针对文件,会对系统中每个文件添加安全上下文(context) 2、针对进程,会对系统中的每个进程添加安全上下文(context) 3、会在系统服务上设置sebool开关 4、当进程的安全上下文与文件安全上下文不匹配时,进程无法访问此文件 5、sebool会限制服务不安全功能,如果无需此功能,必须调整sebool的值####如何管理selinux... 阅读详情

首先转载了一篇基础的文章,后面是我看文档摘抄下来的总结.

http://baijiahao.baidu.com/s?id=1590170088632157084&wfr=spider&for=pc

下文所有的政策一律改成策略,policy(策ce e ce,略, l 鱼 了 约 略).

一、前言

安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。

SELinux 主要由美国国家安全局开发。2.6 及以上版本的 Linux 内核都已经集成了 SELinux 模块。

SELinux 的结构及配置非常复杂,而且有大量概念性的东西,要学精难度较大。很多 Linux 系统管理员嫌麻烦都把 SELinux 关闭了。

如果可以熟练掌握 SELinux 并正确运用,我觉得整个系统基本上可以到达"坚不可摧"的地步了(请永远记住没有绝对的安全)。

掌握 SELinux 的基本概念以及简单的配置方法是每个 Linux 系统管理员的必修课。

本文均在 CentOS 7.4.1708 系统中操作。

本文纯属个人学习经验分享交流,出错再所难免,仅供参考!如果发现错误的地方,可以的话麻烦指点下,特别感谢!

二、SELinux 的作用及权限管理机制

2.1 SELinux 的作用

SELinux 主要作用就是最大限度地减小系统中服务进程可访问的资源(最小权限原则)。

设想一下,如果一个以 root 身份运行的网络服务存在 0day 漏洞,黑客就可以利用这个漏洞,以 root 的身份在您的服务器上为所欲为了。是不是很可怕?

SELinux 就是来解决这个问题的。

2.2 DAC

在没有使用 SELinux 的操作系统中,决定一个资源是否能被访问的因素是:某个资源是否拥有对应用户的权限(读、写、执行)。

只要访问这个资源的进程符合以上的条件就可以被访问。

而最致命问题是,root 用户不受任何管制,系统上任何资源都可以无限制地访问。

这种权限管理机制的主体是用户,也称为自主访问控制(DAC)。

2.3 MAC

在使用了 SELinux 的操作系统中,决定一个资源是否能被访问的因素除了上述因素之外,还需要判断每一类进程是否拥有对某一类资源的访问权限。

这样一来,即使进程是以 root 身份运行的,也需要判断这个进程的类型以及允许访问的资源类型才能决定是否允许访问某个资源。进程的活动空间也可以被压缩到最小。

即使是以 root 身份运行的服务进程,一般也只能访问到它所需要的资源。即使程序出了漏洞,影响范围也只有在其允许访问的资源范围内。安全性大大增加。

这种权限管理机制的主体是进程,也称为强制访问控制(MAC)。

而 MAC 又细分为了两种方式,一种叫类别安全(MCS)模式,另一种叫多级安全(MLS)模式。

下文中的操作均为 MCS 模式。

2.4 DAC 和 MAC 的对比

这里引用一张图片来说明。

可以看到,在 DAC 模式下,只要相应目录有相应用户的权限,就可以被访问。而在 MAC 模式下,还要受进程允许访问目录范围的限制。

三、SELinux 基本概念

3.1 主体(Subject)

可以完全等同于进程。

注:为了方便理解,如无特别说明,以下均把进程视为主体。

3.2 对象(Object)

被主体访问的资源。可以是文件、目录、端口、设备等。

注:为了方便理解,如无特别说明,以下均把文件或者目录视为对象。

3.3 政策和规则(Policy & Rule)

系统中通常有大量的文件和进程,为了节省时间和开销,通常我们只是选择性地对某些进程进行管制。

而哪些进程需要管制、要怎么管制是由政策决定的。

一套政策里面有多个规则。部分规则可以按照需求启用或禁用(以下把该类型的规则称为布尔型规则)。

规则是模块化、可扩展的。在安装新的应用程序时,应用程序可通过添加新的模块来添加规则。用户也可以手动地增减规则。

在 CentOS 7 系统中,有三套政策,分别是:

1. targeted:对大部分网络服务进程进行管制。这是系统默认使用的政策(下文均使用此政策)。

2. minimum:以 targeted 为基础,仅对选定的网络服务进程进行管制。一般不用。

3. mls:多级安全保护。对所有的进程进行管制。这是最严格的政策,配置难度非常大。一般不用,除非对安全性有极高的要求。

政策可以在 /etc/selinux/config 中设定。

3.4 安全上下文(Security Context)

安全上下文是 SELinux 的核心。

安全上下文我自己把它分为「进程安全上下文」和「文件安全上下文」。

一个「进程安全上下文」一般对应多个「文件安全上下文」。

只有两者的安全上下文对应上了,进程才能访问文件。它们的对应关系由政策中的规则决定。

文件安全上下文由文件创建的位置和创建文件的进程所决定。而且系统有一套默认值,用户也可以对默认值进行设定。

需要注意的是,单纯的移动文件操作并不会改变文件的安全上下文。

安全上下文的结构及含义

安全上下文有四个字段,分别用冒号隔开。形如:system_u:object_r:admin_home_t:s0。

3.5 SELinux 的工作模式

SELinux 有三种工作模式,分别是:

1. enforcing:强制模式。违反 SELinux 规则的行为将被阻止并记录到日志中。

2. permissive:宽容模式。违反 SELinux 规则的行为只会记录到日志中。一般为调试用。

3. disabled:关闭 SELinux。

SELinux 工作模式可以在 /etc/selinux/config 中设定。

如果想从 disabled 切换到 enforcing 或者 permissive 的话,需要重启系统。反过来也一样。

enforcing 和 permissive 模式可以通过 setenforce 1|0 命令快速切换。

需要注意的是,如果系统已经在关闭 SELinux 的状态下运行了一段时间,在打开 SELinux 之后的第一次重启速度可能会比较慢。因为系统必须为磁盘中的文件创建安全上下文(我表示我重启了大约 10 分钟,还以为是死机了……)。

SELinux 日志的记录需要借助 auditd.service 这个服务,请不要禁用它。

3.6 SELinux 工作流程

这里引用一张图片,不必过多解释。

注:上面的安全文本指的就是安全上下文。

四、SELinux 基本操作

4.1 查询文件或目录的安全上下文

命令基本用法

ls -Z

用法举例

查询 /etc/hosts 的安全上下文。

ls -Z /etc/hosts

执行结果

-rw-r--r--. root root system_u:object_r:net_conf_t:s0 /etc/hosts

4.2 查询进程的安全上下文

命令基本用法

ps auxZ | grep -v grep | grep

用法举例

查询 Nginx 相关进程的安全上下文。

ps auxZ | grep -v grep | grep nginx

执行结果

system_u:system_r:httpd_t:s0 root 7997 0.0 0.0 122784 2156 ? Ss 14:31 0:00 nginx: master process /usr/sbin/nginx

system_u:system_r:httpd_t:s0 nginx 7998 0.0 0.0 125332 7560 ? S 14:31 0:00 nginx: worker process

4.3 手动修改文件或目录的安全上下文

命令基本用法

chcon [...]

选项功能-u 修改安全上下文的用户字段-r 修改安全上下文的角色字段-t 修改安全上下文的类型字段-l 修改安全上下文的级别字段--reference 修改与指定文件或目录相一致的安全上下文-R递归操作-h修改软链接的安全上下文(不加此选项则修改软链接对应文件)

用法举例

修改 test 的安全上下文为 aaa_u:bbb_r:ccc_t:s0。

chcon -u aaa_u -r bbb_r -t ccc_t test

4.4 把文件或目录的安全上下文恢复到默认值

命令基本用法

restorecon [选项] [...]

选项功能-v打印操作过程-R递归操作

用法举例

添加一些网页文件到 Nginx 服务器的目录之后,为这些新文件设置正确的安全上下文。

restorecon -R /usr/share/nginx/html/

4.5 查询系统中的布尔型规则及其状态

命令基本用法

getsebool -a

由于该命令要么查询所有规则,要么只查询一个规则,所以一般都是先查询所有规则然后用 grep 筛选。

用法举例

查询与 httpd 有关的布尔型规则。

getsebool -a | grep httpd

执行结果

httpd_anon_write --> off

httpd_builtin_scripting --> on

httpd_can_check_spam --> off

httpd_can_connect_ftp --> off

#以下省略

4.6 开关一个布尔型规则

命令基本用法

setsebool [选项]

选项功能-P重启依然生效

用法举例

开启 httpd_anon_write 规则。

setsebool -P httpd_anon_write on

4.7 添加目录的默认安全上下文

命令基本用法

semanage fcontext -a -t "(/.*)?"

注:目录或文件的默认安全上下文可以通过 semanage fcontext -l 命令配合 grep过滤查看。

用法举例

为 Nginx 新增一个网站目录 /usr/share/nginx/html2 之后,需要为其设置与原目录相同的默认安全上下文。

semanage fcontext -a -t httpd_sys_content_t "/usr/share/nginx/html2(/.*)?"

4.8 添加某类进程允许访问的端口

命令基本用法

semanage port -a -t -p

注:各种服务类型所允许的端口号可以通过 semanage port -l 命令配合 grep 过滤查看。

用法举例

为 Nginx 需要使用 10080 的端口用于 HTTP 服务。

semanage port -a -t http_port_t -p tcp 10080

五、SELinux 错误分析和解决

5.1 认识 SELinux 日志

当开启了 SELinux 之后,很多服务的一些正常行为都会被视为违规行为(标题及下文中的错误均指违规行为)。

这时候我们就需要借助 SELinux 违规日志来分析解决。

SELinux 违规日志保存在 /var/log/audit/audit.log 中。

/var/log/audit/audit.log 的内容大概是这样的。

type=LOGIN msg=audit(1507898701.391:515): pid=8523 uid=0 subj=system_u:system_r:crond_t:s0-s0:c0.c1023 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=25 res=1

type=USER_START msg=audit(1507898701.421:516): pid=8523 uid=0 auid=0 ses=25 subj=system_u:system_r:crond_t:s0-s0:c0.c1023 msg='op=PAM:session_open grantors=pam_loginuid,pam_keyinit,pam_limits,pam_systemd acct="root" exe="/usr/sbin/crond" hostname=? addr=? terminal=cron res=success'

...

该文件的内容很多,而且混有很多与 SELinux 错误无关的系统审计日志。我们要借助 sealert 这个实用工具来帮忙分析(如果提示找不到命令的话请安装 setroubleshoot 软件包)。

5.2 使用sealert分析错误

命令基本用法

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

执行完命令之后,系统需要花一段时间去分析日志中的违规行为并给出分析报告。分析报告的结构讲解请看下图:

 

作者水平有限,先更新这么多.

摘要: 主体:一般指进程,
客体:客体类别及其许可是SELinux中访问控制的基础,客体类别代表资源的范畴,如文件和套接字,许可代表对这些资源的访问权限,如读或发送.
安全上下文:访问控制属性.
一.基本框架.
1.策略源文件policy.conf结构.
2.    LSM:Linux 安全模型框架.
AVC:向量访问缓存.
IPC:进程通信.
MLS:多层安全模式.
MAC:强制访问控制.叫做TE机制.
DAC:自主访问控制.缺点:它们不能识别自然人与计算机程序之间最基本的区别
二.策略规则语法.
1.AV规则:
allow: 允许规则.表示允许主体对客体执行允许操作.
dontaudit 表示不记录违反规则的决策信息,且违反规则不影响运行。
auditallow 表示允许操作并记录访问决策信息。
neverallow 表示不允许主体对客体执行指定的操作。

完整的 AV 规则通用语法如下:
规则名称 类型集(源类型) 类型集(目标类型):类别集 许可集
规则名称 访问向量规则的名称,有效的规则名称是 allow, auditallow,
auditdeny, dontaudit 和 neverallow。
类型集 一个或多个类型和(或)属性,规则中源和目标类型有其独立
的类型集,多个类型集或属性使用空格进行分隔,并使用大括号将它
们括起来,如{bin_t sbin_t}。可以使用( -)来排除类型,如{exec_type
–sbin_t}。在目标类型区域可以使用关键字 self,但在源类型区域
不能使用。 neverallow 规则也支持通配符来代表所有的类型,求补算
操作符( ~)也表示所有的类型,除了明确列出的之外。
类别集 一个或多个客体类别,多个客体类别必须使用大括号括起来,
如{file lnk_file}。
许可集 一个或多个许可,所有许可对类别集列出的所有客体类别都要
有效,多个许可必须用大括号括起来,如{read create}。通配符( *)
指出所有客体类别的所有许可,求补算操作符( ~)用于指出所有的
许可,除了明确列出的之外。
所有 AV 规则在单个策略,基础载入模块和非基础载入模块中都有效,所有 AV
规则除了 auditdeny, neverallow 规则外,其它的在条件语句中也有
效.
self只会向自己的源类型发送目标.
2.声明客体类别.class.
class 类别名字.
客体类别使用类别声明语句( class)进行声明。
使用访问向量语句(也是 class)将许可与客体类别进行关联。
SELinux 中定义了两类许可:通用许可和特定类别许可
3.通用许可.comm
通用许可语句语法
通用许可语句允许你声明一个通用许可名字,许可可以与客体类别一起组成
一个组,通用许可可以与多个客体类别进行联合,完整的通用许可语句语法如下:
common 通用名 {许可集}
通用名 通用许可标识符,该标识符长度不限,可以包括 ASCII 字母,
数字,破折号( -)和句号( .)。
许可集 在一个独立空间列表中的一个或多个许可标识符,标识符长度
不限,可以包括 ASCII 字母,数字,破折号( -)和句号( .)。
通用许可集与客体类别一起使用访问向量语句。
通用许可集只在单个策略和基础载入模块中有效,在条件语句和非基础载入
模块中无效。on.
4.联合许可和客体类别.
访问向量语句语法
联合许可及之前声明的客体类别的访问向量语句,它的完整语法如下:
class 类别名 [inherits 通用许可集名] [{许可集}]
类别名 ---前面声明的客体类别名
通用许可集名 --- 前面声明的通用许可集名
许可集 --- 在一个独立空间列表中的一个或多个许可标识符,标识符的
长度不受限制,包括 ASCII 字母,数字,或句号( .)。
最低情况下,至少要指定一个通用许可集名或一个许可集,但这两者是可以
同时提供的,最后所得到的许可是联合了通用许可和许可集的并集。
访问向量语句只在单个策略和基础载入模块中有效,在条件语句和非基础载
入模块中是无效的。

5.类型声明:类型是构成 TE 规则的最小单位, SELinux 主要就
是使用类型来确定什么访问是被允许的;属性和别名是为减轻管理和使用类型的策略特性,
我们使用属性利用单个标识符来引用一组类型.

类型声明语法
可以使用 type 语句声明类型和选项,以及关联的别名属性,下面是完整的
类型声明语法:
type 类型名称 [alias 别名集] [,属性集];
类型名称 类型标识符,长度任意,允许包括 ASCII 字符,数字,下划
线( _)和点( .)。
别名集 一个或多个别名标识符,别名标识符与类型标识符的命名限制
是一致的,如果指定的不止一个别名标识符,要在一对大括号中用空
格将各个别名区别开来,如: alias {aliasa_t aliasb_t}。
属性集 一个或多个预先声明的属性标识符,如果同时指定多个属性标
识符,属性之间使用逗号进行分隔,如: type
bin_t,file_type,exec_type;。
类型声明在整个策略中,以及基础载入模块和非基础载入模块中都是有效
的。但在有条件的语句中无效.
6. 属性声明语法.
attribute file_type.
使用 attribute 语句进行属性声明,完整的属性声明语法如下:
attribute 属性名称;
属性名称 属性的标识符,它的长度不受限制,可以包括 ASCII 字符,数字,
下划线( _)和点( .)。属性和类型,别名都在同一个命名空间,因
此不能与其他类型或别名重名。
属性声明在整个策略,基础载入模块和非基础载入模块中都有效,但在有条
件的语句中无效.
7.关联类型和属性.
面举的示例语句
type httpd_user_content_t, file_type, httpdcontent;
分成两条语句进行表述
#下面是两条语句
type httpd_user_content_t;
typeattribute httpd_user_content_t file_type,httpdcontent;
typeattribute 语句语法
typeattribute 语句语句允许你关联前面声明的类型和属性,在类型声明时,
如果没有关联属性,就可以使用这个语句进行类型和属性的关联, typeattribute
语句完整的语法如下:
typeattribute 类型名 属性名;
类型名 添加到属性上的类型的名称,类型名必须事先使用 type 语句进行
声明,而且这里只能出现一个类型名。
属性名 一个或多个事先声明的属性标识符,如果指出多个属性标识符,属
性标识符之间使用逗号分隔,如 typeattribute bin_t file_type,
exec_type;
Typeattribute 语句在单个策略,基础载入模块和非基础载入模块中都是有效
的,只有在条件语句中无效。

8.typealias:别名.
typealias 语句允许你定义一个类型别名,在使用 type 语句声明类型时就可
以同时声明别名,完整的 typealias 语句语法如下:
typealias 类型名称 alias 别名名称
类型名称 要添加别名的类型的名称,类型必须使用 type 语句单独声明,
而且这里只能指定一个类型名称.
# 这两条语句等同于
type mozilla_t, domain;
typealias mozilla_t alias netscape_t;
#下面这一条语句
type mozilla_t alias netscape_t, domain;
9.通用类型规则语法.
与 AV 规则一样,每条类型规则有不同的用途和语义,但它们的语法都是通用的,每条
类型规则都具有下列五项元素:
规则名称 type_transition 或 type_change
源类型 创建或拥有进程的类型
目标类型 包含新的或重新标记的客体的客体类型
客体类别 新创建的或重新标记的客体的类别
默认类型 新创建的或重新标记的客体的单个默认类型

通用类型规则语法
完整的通用类型规则语法如下:
规则名称 类型集 类型集:类别集 默认类型;
规则名称 类型规则的名称,有效的规则名称有 type_transition,
type_change 和 type_member。
类型集 一个或多个类型或属性。在规则中源和目标类型有其独
立的类型集,多个类型和属性使用空格进行分隔,并用大括号将
它们括起来,如{bin_t sbin_t},可以在类型名前放一个( -)符
合将其排除,如{exec_type –sbin_t}。
类别集 一个或多个客体类别,多个客体类别必须使用大括号括
起来,并用空格分开,如{file lnk_file}。
默认类型 为新创建的或重新标记的客体类别指定的单个默认类型,
这里不能使用属性和多个类型。
所有类型规则在单个策略,基础载入模块,非基础载入模块和条件语句中都有效。

10.
9.(1)与文件相关的客体类别.
(2)与网络有关的客体类别

(3)system V IPC 客体类别
(4)其它杂类客体类别.
6. 与文件有关的客体类型许可.
7.进程客体类别许可.
三.用户和角色.
1.角色声明语句.
role user_r types user_t;
role user_r types passwd_t;

2.角色控制语句.
角色控制语句( dominance)按照其他角色声明一个角色,我们可以使用这个语句创建
一个角色之间的层次关系,假设这样, "高层角色"可能会自动继承所有与角色关联的类型.
dominance { role super_r {role sysadm_r; role secadm_r; }
3.声明用户以其关联角色.
user joe roles {user_r};

 

【ComfyUI】QwenImageEdit + Z-Image 面部融合图生图 本文介绍了一种基于Stable Video Diffusion(SVD)模型的ComfyUI图生视频工作流,能够将静态图片转换为动态视频。工作流包含模型加载、图像导入、条件生成、视频采样、解码合成等8个核心步骤,通过SVD_img2vid_Conditioning节点实现视觉语义转换。该方案适用于创意视频制作、产品演示等场景,支持设计师和AI爱好者快速实现"以图生动"效果。文中详细说明了工作流架构、关键节点功能、操作流程及应用案例,并提供了模型参数和使用注意事项。 阅读详情

相关推荐

C/C++面试八股文汇总

以对象管理资源,利用的就是C++构造的对象最终会被对象的析构函数销毁的原则。上述的的申请、使用、释放资源的程序较为简单,但是如果程序很复杂的时候,需要为所有的new 分配的内存delete掉,导致极度臃肿,效率下降,更可怕的是,程序的可理解性和可维护性明显降低了,当操作增多时,处理资源释放的代码就会越来越多,越来越乱。栈在函数调用时,第一个进栈的是主函数中后的下一条指令(函数调用语句的下一条可执行语句)的地址,然后是函数的各个参数,在大多数的C编译器中,参数是由右往左入栈的,然后是函数中的局部变量。

wzzrh的博客 1万+

【无标题】 audit: type=1701 audit(1644460994.773:14): auid=4294967295问题讨论

@[TOC audit: type=1701 audit(1644460994.773:14): auid=4294967295问题讨论] 问题描述 在调试NXP开发板的过程中,使用Filezilla将qt写好的程序上传到开发板中,在运行的时候总是弹出如下问题: root@OK8MP:/mnt/thirdpart/libskin/lib# QT_Demo [ 3193.209256] audit: type=1701 audit(1644460994.773:14): auid=4294967295 uid

jiaquwl2017的博客 2966

①Modbus TCP转Modbus RTU/ASCII网关同步采集无需编程高速轻松组网

MS-A1-50X1系列作为MODBUS TCP通信的服务器进行动作。可通过MODBUS TCP 通信,将 MS-A1-50X1 系列产品通过 RS485 采集的仪器仪表之类的值作为通信数 据输出到 PLC,上位机等。

2401_89571741的博客 1398

selinux 引起的 Instantiating disk: failed

asm 初始化创建ASM磁盘组 失败 [root@dga01 ~]# oracleasm createdisk OCR /dev/sde1 Writing disk header: done Instantiating disk: failed Clearing disk header: done 开始以为是asm配置错误,于是重新初始化ASM [root@dga01 ~]# /etc/

GreyHat OMDBA 6563

适合初学者的ROS机器人教程(1): Ubuntu下ROS创建自己的包和使用github下载的包

ROS如何创建自己的包 1. 首先创建catkin工作空间(如果你以及有了请忽略) $ mkdir catkin_ws # 创建一个文件夹里面计划放我们的项目,ws是workspace的缩写 $ cd catkin_ws # 将当前工作文件夹切换到catkin_ws这个文件夹 ~/catkin_ws$ catkin_make # 执行catkin_make创建一ROS项目 此时你的catkin_...

@司南牧|知乎|博客|易懂教程|李韬 3244

Argoverse轨迹预测实战:从数据加载到地图API应用全解析

本文详细解析了Argoverse数据集在轨迹预测中的应用,从数据加载到地图API的实战技巧全涵盖。通过具体代码示例展示如何高效处理轨迹数据、实现可视化及基础预测模型,帮助开发者快速掌握自动驾驶轨迹预测的核心技术。特别介绍了Argoverse地图API的深度应用和性能优化经验。

weixin_29182481的博客 241

linux 7 messages,centos7 messages日志报错auto kernel: type=1106 audit(15426953

messages出现大量日志:Nov 20 14:28:29 auto kernel: type=1106 audit(1542695309.562:30513023): pid=11248 uid=0 auid=4294967295 ses=4294967295 msg=’op=PAM:session_close grantors=pam_keyinit,pam_limits acct=”roo...

weixin_35473090的博客 1164

深度学习——VGG16模型详解

1、网络结构 VGG16模型很好的适用于分类和定位任务,其名称来自牛津大学几何组(Visual Geometry Group)的缩写。 根据卷积核的大小核卷积层数,VGG共有6种配置,分别为A、A-LRN、B、C、D、E,其中D和E两种是最为常用的VGG16和VGG19。 介绍结构图: conv3-64 :是指第三层卷积后维度变成64,同样地,conv3-128指的是第三层卷积后维度变成128; input(224x224 RGB image) :指的是输入图片大小为224244的彩色图像,通道为

橙子的博客 12万+

Linux审计日志

最近在Linux日志中发现有如下信息: vi /var/log/messages type=CRYPTO_KEY_USER msg=audit(1448528863.866:163): user pid=7735 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:sshd_t:s0-s0:c0.c1023 msg='op=d

mhmds的专栏 1万+

软件测试面试题汇总

软件测试面试题汇总 测试技术面试题 ........................................................................................................................................................................ 5 1、什么是兼容

晴天的专栏 2万+

【银河麒麟V10】【桌面】【服务器】系统启动问题

1、如果之前运行好好的,重启后系统报错,一般80%是因为fstab的问题,回想下之前有没有添加过外接存储,修改过/etc/fstab,如果是的话一般是因为存储异常(比如网络存储无法连接,本地存储路径变化)导致系统开机自检失败,导致无法正常启动; 处理方式:进入单用户(单用户进入的几种方式上面有专门文章介绍),修改/etc/fstab,将新增的内容暂时注释掉,然后重启系统,能正常进入系统后再分析失败原因。 ...

桂安俊@KylinOS 3万+

Kubernetes CKS【24】---System Hardening - Kernel Hardening Tools(seccomp)

文章目录1. Seccomp介绍2. Practice - Seccomp for Docker Nginx3. Practice - Seccomp for Kubernetes Nginx 1. Seccomp介绍 2. Practice - Seccomp for Docker Nginx root@master:~/cks/apparmor# docker run --security-opt seccomp=default.json nginx /docker-entrypoint.

爱死亡机器人 3831

ElectrolyteGPT:首个电池电解液逆向设计的生成式 AI 系统 —— 算法原理与复现解析

数据驱动的重要性:1100 万→100 万的精心筛选,比单纯增大模型更有效领域适配:fLine 表示法、正则分词、化学感知的数据增强(SMILES randomization)都是关键小模型的力量:6M 参数在特定化学空间的表现,远超通用大模型在相同任务上的零样本能力条件生成的极限:10 维条件导致模型崩溃,提示我们需要更好的条件编码策略(如 diffusion guidance、RLHF-style 偏好优化)未来方向配方实验验证。

ASKCOS博客 123

查看 SELinux状态及关闭SELinux

http://bguncle.blog.51cto.com/3184079/957315 查看SELinux状态: 1、/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态 SELinux status:                 enabled 2、getenforce

Gabby 3963

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

关闭 SELinux

表示SELinux强制执行表示SELinux不强制执行但会记录违规行为表示SELinux已禁用。

weixin_53389944的博客 2686

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Fedora下查看SeLinux状态及关闭SeLinux

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。         查看SELinux状态: 1、/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态 SELinux status:      

技术狂人 5171

查看SELinux状态及关闭SELinux

一、查看SELinux状态: 1、用这个命令检查 getenforce 2、也可以用下述命令;如果SELinux status参数为enabled即为开启状态 /usr/sbin/sestatus -v SELinux status: enabled 二、关闭SELinux: 1、临时关闭(不用重启机器): ##设置SELinux 成为permissive模式;setenforce 1 设置SELinux 成为enforcing模式 setenforce 0

老吉 7万+

centos6 下查看SELinux状态 关闭SELinux

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,是 Linux历史上最杰出的新安全子系统。在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上。 虽然SELinux很好用,但是在多数情况我们还是将其关闭,因为在不

BoomJane的专栏 1万+

开启Selinux遇到的坑

事故起因: 由于SeLinux会限制部分系统资源访问权限,所以很多开发者很喜欢禁用SeLinux,在布署程序的自动化角本中,也默认加入了禁用SeLinux的代码。这样会导致用户在安装Centos7的计算机上所有帐号都无法登录(包括root),但使用SecureCRT等软件连Ssh却可以正常登录。这还是会造成较大风险,一旦网络环境变化,该机器就会变成一个谁都无法登录的机器。 开启SELinux 实例上运行以下命令,编辑SELinux的config文件。 vi /etc/selinux/config 找到SE

小刘的博客 4083

查看SELinux状态&关闭SELinux

查看SELinux状态 1.1 getenforce getenforce 命令是单词get(获取)和enforce(执行)连写,可查看selinux状态,与setenforce命令相反。 setenforce 命令则是单词set(设置)和enforce(执行)连写,用于设置selinux防火墙状态,如: setenforce 0用于关闭selinux防火墙,但重启后失效 [root@loca...

qq_39128254的博客 1095

查看SELinux状态和设置SELinux

1. 查看SELinux状态 1.1 getenforce getenforce 命令是单词get(获取)和enforce(执行)连写,可查看selinux状态,与setenforce命令相反。 setenforce 命令则是单词set(设置)和enforce(执行)连写,用于设置selinux防火墙状态,如: setenforce 0用于关闭selinux防火墙,但重启后失效 [root@localhost ~]# getenforce Enforcing 1.2 /usr/sbin/

nathan8的博客 3266

Ubuntu的SELinux

Ubuntu的SELinux

qq_33373173的博客 1823

SELinux 权限问题

权限修改 adb在线修改seLinux Enforcing(表示已打开),Permissive(表示已关闭) getenforce; //获取当前seLinux状态 setenforce 1; //打开seLinux setenforce 0; //关闭seLinux 从kernel中彻底关闭 修改LINUX/android/kernel/arch/arm64/configs/xxx_defconfig文件(xxx一般为手机产品名), 去掉CONFIG_SECURITY_SELINU

wq892373445的博客 1008

selinux

安全性增强的Linux或SELinux是内置在基于RHEL的发行版使用的Linux内核中的安全性机制。 SELinux通过允许管理员和用户基于策略规则控制对对象的访问,为系统增加了一层安全保护。 SELinux策略规则指定进程和用户如何相互交互以及进程和用户如何与文件交互。如果没有明确允许访问对象的规则,例如打开文件的进程,则拒绝访问。 SELinux具有三种操作模式: 强制执行:SELinux允许基于SELinux策略规则进行访问。 允许:SELinux仅记录在强制模式下运行会被拒绝的操...

爱吃橙子蜂蜜酱的熊 524
上一篇: cmd开启3389
下一篇: 电脑系统的sp1、sp2、sp3是什么意思?
。。hehe。。
博客等级 码龄7年 51粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值