SELinux的启动和关闭

摘要:
在SELinux访问控制系统的限制下,进程只能访问任务中所需的文件。当SELinux关闭时,setforce命令无法设置强制或许可模式。只能通过修改配置文件进行设置,然后重新启动系统。3.SELinux布尔变量SELinux中一些布尔变量的设置控制程序的运行,有时需要根据情况打开或关闭。

1、SELinux简介

SELinux是Security Enhanced Linux的缩写,字面上的意思就是安全强化的Linux,它是由美国国家安全局 (NSA) 开发的,整合到Linux核心的一个模块,是对于强制访问控制(MAC)的实现,是 Linux历史上最杰出的新安全子系统,提供了比传统的UNIX权限更好的访问控制。在SELinux的访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。

2、SELinux 的启动、关闭和状态

并非所有的 Linux发行版都支持 SELinux 的,CentOS 5.x 以后就支持 SELinux了,目前 SELinux 支持三种模式:

  • enforcing:强制模式,表示SELinux 运行中,且已经正确的开始限制 domain/type 了;
  • permissive:宽容模式,表示SELinux 运行中,不过仅会有警告信息,并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;
  • disabled:关闭,SELinux 没有运行。
1)获取SELinux的状态

[root@www ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 24
Policy from config file: targeted

2)获取SELinux运行模式

[root@www ~]# getenforce
Enforcing //当前的模式为 Enforcing

3)SELinux运行模式切换

[root@www ~]# setenforce [0|1]
选项与参数:
0:转成 Permissive 宽容模式;
1:转成 Enforcing 强制模式

[root@www ~]# setenforce 0
[root@www ~]# getenforce
Permissive

[root@www ~]# setenforce 1
[root@www ~]# getenforce
Enforcing

4)SELinux 的启动和关闭

由于SELinux 整合到Linux核心里了,如果由 enforcing 或 permissive模式改成 disabled,或由 disabled 改成其他两个,系统必须要重新启动;
在 SELinux运行(enforcing或permissive模式)时,只能在enforcing和permissive模式切换,不能够直接关闭 SELinux,只能通过修改配置文件,然后重启系统。
在 SELinux关闭(disabled)时,setenforce命令不能设置Enforcing或Permissive模式,只能通过修改配置文件来设置,然后重启系统。

[root@www ~]# vim /etc/selinux/config
SELINUX=enforcing                //默认为enforcing,可设置为enforcing、permissive、disabled中的一项。
SELINUXTYPE=targeted //目前只能设置成targeted、mls中的一项

注意:
1)如果从 disable 切换到enforcing或permissive模式时,由于系统必须要针对文档写入安全性本文的信息,因此开机过程会花费不少时间在等待重新写入 SELinux 安全性本文 (有时也称为 SELinux Label),而且在写完之后还得要再次的重新启动。
2)如果已经运行在Enforcing模式,但是可能由于SELinux的设置问题,导致某些服务无法正常的运行,此时可以将Enforcing 模式改为Permissive模式,让 SELinux只会警告无法顺利联机的信息,而不是直接阻挡主体程序的读取权限。

3、SELinux布尔变量

SELinux的一些布尔变量的设置对程序的运行起着控制作用,有时需要根据情况需要打开或关闭。
[root@www ~]# getsebool -a | grep samba //获取和samba安全性设置有关的布尔值
bacula_use_samba --> off
samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
samba_export_all_ro --> off
samba_export_all_rw --> off
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off

[root@www ~]#setsebool -P samba_enable_home_dirs=1

[root@www ~]# getsebool samba_enable_home_dirs
samba_enable_home_dirs --> on

4、SELinux安全性文本

1)查看文件的安全性文本
[root@localhost home]# ls -Z rjfws/     
drwxrws---. rjfws rjfws unconfined_u:object_r:user_home_t:s0 data
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 公共的
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 模板
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 视频
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 图片
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 文档
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 下载
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 音乐
drwxr-xr-x. rjfws rjfws unconfined_u:object_r:user_home_t:s0 桌面

2)查看目录的安全性文本
[root@localhost home]# ls -Zd rjfws/   
drwxrwx---. rjfws rjfws unconfined_u:object_r:user_home_dir_t:s0 rjfws/

=-=-=-=-=
Powered by Blogilo

免责声明:文章转载自《SELinux的启动和关闭》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【ArcGIS 10.2新特性】ArcGIS 10.2将PostgreSQL原生数据发布为要素服务同一个tomcat启动多个实例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux fing cd 查找文件/文件夹并进入目录命令

查找文件|文件夹并进入目录命令:cd $()[root@localhost /]# cd $(dirname "`find / -name 'ifcfg-ens33'`") //查找ifcfg-ens33文件并进入该文件所在目录[root@localhost network-scripts]# [root@localhost /]# mkdir -p /...

Linux下安装RabbitMQ

前言 RabbitMQ是一个开源的消息中间件,采用 Erlang 语言进行编写,因此RabbitMQ的安装需要依赖Erlang,现在我们将在 Linux 下进行安装RabbitMQ。 本人环境:CentOS 6.5 64位 安装Erlang 在安装Erlang的时候,有很多种方法,最开始我是想按照官网先下载Erlang安装包,然后再进行安装。但发现下载Er...

DPDK — 安装部署

目录 文章目录 目录 官方手册 环境参数 环境准备 RT Kernel 基础软件依赖 设置大页内存 安装 DPDK 获取 DPDK 代码 设置环境变量 编译安装 目标环境目录 加载内核模块 绑定网卡到新的内核驱动模块 适配 Mellanox ConnectX-5 网卡(可选) hellowrold 官方手册 https://doc.d...

rsync 开启用户密码认证

rsync 客户端 172.17.0.29 rsync 服务端 --daemon  方式运行 172.17.0.31 备份端 以下首先说明服务端的安装情况: 1  检查是否安装rsync     rpm -qa rsync     rsync-3.0.6-12.el6.x86_64  如果没有安装进行yum 安装即可     yum install -y...

linux入门系列19--数据库管理系统(DBMS)之MariaDB

前面讲完Linux下一系列服务的配置和使用之后,本文简单介绍一款数据库管理系统(MySQL的兄弟)MariaDB。 如果你有MySQL或其他数据的使用经验,MariaDB使用起来将非常轻松。 本文讲解Centos7默认的数据MariaDB,由于是入门系列文章因此不会深入讲解,后面有机会在单独深入。 一、MariaDB产生背景 数据处理是软件的核心,软件的本...

Centos下堡垒机Jumpserver V3.0环境部署完整记录(2)-配置篇

前面已经介绍了Jumpserver V3.0的安装,基于这篇安装文档,下面说下Jumpserver安装后的的功能使用: 一、jumpserver的启动 Jumpserver的启动和重启 [root@test-vm001 install]# /opt/jumpserver/service.sh start/restart 二、按照Jumpserver部署过...