计算机网络/计算机科学与应用/系统/运维/开发

服务器安全SELinux管理

一、什么是SELinux?

安全增强型Linux  (Security-Enhanced Linux) 简称 SELinux   类似于win中某种安全管家软件中的沙箱。一般情况下不开启

SELinux由美国国家安全局开发


二、两种关闭方式

临时关闭:临时关闭不需要重启主机,但重启后会失效

永久关闭:需要修改配置文件,并重启主机后永久有效


三、安装SELinux

CentOS 5.x中安装SELinux,其他版本中默认已经安装

# yum -y install setroubleshoot
# yum -y install setools-console


四、启动管理

CentOS6.x中修改配置文件

# vi /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted


五、关闭和启动SELinux 修改运行模式即可

SELINUX=enforcing 强制模式 表示SELinux正常运行,所有策略已经生效
SELINUX=permissive 宽容模式 表示SELinux已经启动  但是只会显示警告信息,而并不会实际限制进程访问文件或目录资源
SELINUX=disable  关闭,代表SELinux被禁用


配置完毕后必须要重启Linux系统才有效,强制模式和宽容模式这2种互相切换不用重启Linux系统即可生效(SELinux已经整合到Linux内核)


六、使用命令进行SELinux的运行模式查询和修改

[root@node-a ~]# getenforce
Disabled  # 当前表示关闭


通过setenforce命令修改SELinux运行模式

注意,该命令只能让SELinux在enforcing 和 permissive 两种模式之间切换,如果从启动切换到关闭,或总关闭切换到启动,只能修改配置文件


#setenforce  选项

选项:

0: 切换成permissive(宽容模式)

1: 切换成enforcing(强制模式)


#setenforce 0
# 切换成宽容模式
# getenforce
#setenforce 1
# 切换成强制模式
# getenforce


查询当前SELinux策略:

[root@localhost ~]# sestatus
SELinux status:               enabled           ←SELinux启用
SELinuxfs mount:              /selinux          ←SELinux数据的挂载位置
Current mode:                 enforcing         ←运行模式是强制模式
Mode from config file:         enforcing        ←配置文件所指定的模式也是强制模式
Policy version:               24                ←策略版本
Policy from config file:       targeted         ←目前策略是针对性保护策略


查看Selinux状态

[root@localhost ~]# getenforce Enforcing(强制执行)

或者

# getenforce


1、临时关闭selinux

[root@localhost ~]# setenforce 0    # 0 表示关闭,1表示开启[root@localhost ~]
# getenforce Permissive(允许)


2、永久关闭

修改selinux配置文件 

# vim /etc/selinux/config

将 SELINUX =enforcing
改为SELINUX = disabled

# reboot  重启主机


selinux

知识是抵御一切灾祸的盾牌

评论

^