Linux —— selinux

目录

1. selinux功能

1.1 selinux关闭状态

1.2 selinux开启状态

1.3 selinux功能

2. selinux状态

2.1 状态的查看

2.2 状态的切换

3. 安全上下文

3.1 安全上下文的临时更改

3.2  永久更改目录或文件安全上下文

4. sebool

5. setrouble


1. selinux功能

1.1 selinux关闭状态

  • 在/mnt/中建立文件文件安全上下文为空
  • ftp程序安全上下文为空
  • 用户可以上传文件
  • 文件被移动到ftp默认发布目录中可以被访问

Linux —— selinux_第1张图片

1.2 selinux开启状态

  • 在/mnt/中建立文件文件有安全上下文
  • ftp程序有安全上下文
  • 用户不 可以上传文件
  • 文件被移动到ftp默认发布目录中可以无法被访问

Linux —— selinux_第2张图片

1.3 selinux功能

selinux:内核级加强型防火墙

功能:

  • 当selinux开启会给系统中的每一个文件及每一个程序加载安全上下文,特定安全上下文的程序只能访问特定安全上下文的文件
  • 当selinux开启会对服务本身相对不安全的功能加载开关sebool并且设定开关为off状态,来保证服务安全性,当需要此功能时需要超级用户手动调节

2. selinux状态

2.1 状态的查看

getenforce       ## 状态的查看
setenforce 0|1   ## 0表示警告模式1表示强制模式 
## 状态类型:
disabled         ## 关闭
enforcing        ## 强制   [不只警告,还会限制]
permissive       ## 警告   [只会警告,不会限制]

Linux —— selinux_第3张图片

2.2 状态的切换

## selinux开关
vim /etc/sysconfig/selinux
SELINUX=[selinux的状态]
reboot                     ## 当disabled <----> [enforcing|permissive]都需要重启系统

3. 安全上下文

3.1 安全上下文的临时更改

## chcon -t 安全上下文 文件
## chcon -R -t 安全上下文 目录
chcon -t public_content_t dsdlinuxfile      ## 修改文件
chcon -R -t public_content_t dsdlinuxfile   ## 修改目录

## lftp访问服务器会发现此文件会被访问成功

Linux —— selinux_第4张图片 

3.2  永久更改目录或文件安全上下文

mkdir /ftpuserdir/dsddir
设定westos用户登陆ftp服务时默认家目录为/ftpuserdir
当用westos用户登陆ftp时/ftpuserdir内容无法访问,因为selinux安全上下文不匹配
semanage fcontext -l | grep ftpuserdir                         ## 内核安全上下文列表中无信息
semanage fcontext -a -t public_content_t /ftpuserdir'(/.*)?'   ## (/.*)?表示目录中将要出现的内容,此命令只添加列表信息,当前不生效
restorecon -RvvF /ftpuserdir/                                  ## 刷新文件安全上下文

Linux —— selinux_第5张图片

 

Linux —— selinux_第6张图片

4. sebool

sebool:是selinux对服务功能添加的开关

getsebool -a | grep ftp             ## 查看ftp的功能开关
setsebool ftpd_anon_write=1|on      ## 表示开启此匿名用户写的功能
setsebool -P ftpd_anon_write=1|on   ## 表示永久开启此匿名用户写的功能

Linux —— selinux_第7张图片

5. setrouble

dnf install setroubleshoot-server-3.3.19-1.el8.x86_64 -y sealert -a  

/var/log/audit/audit.log ##分析日志并提供解决方案

 

你可能感兴趣的:(RHCSA)