linux中selinux

1.对于selinux的启动以及文件查看命令。

enforcing                         强制模式 
permissive                       警告模式
disabled                          关闭
selinux getenforce          查看selinux模式
setenforce 0|1               更改selinux模式 
                  0                   警告模式 
                  1                   强制模式  

打开配置文件vim /etc/sysconfig/selinux
这里写图片描述
这里写图片描述
正常状态下getenforce所看到的selinux的状态为Enforcing,当我们把配置文件里面的enforcing改为disable时,然后reboot,再次查看时selinux的状态为Disable
这里写图片描述

特别注意:每一次更改完配置文件之后都要reboot重起。

实验
当状态为enforcing时,看文件是否可以转移过来
这里写图片描述
这里写图片描述
当为强制模式enforcing时,不能看到转移过来的文件
当为警告模式permissive时,可以看到转移过来的文件

2.linux中安全上下文

lftp中只能查看pub下的文件,当把mnt下的文件转移到pub下。依旧不能查看,所以这时候就要更改文件的安全上下文,如下图所是,用chcon命令更改文件的安全上下文,然后再用lftp查看时候就可以看见文件了。

这里写图片描述

这里写图片描述

**ls -Z file|dir 查看文件安全上下文**
chcon -t public_content_t  file **更改用户上下文  临时更改**
**在一个目录中,子文件的安全上下文和原目录一致时才能显示**
semanage fcontext -l   **显示系统中所有安全上下文**
semanage fcontext -l | grep /var/ftp/  **过滤安全上下文**
semanage fcontext -l | grep /mnt
semanage fcontext -a -t public_content_t "/mnt/(/.*)?"   **更改安全上下文"/zpy(/.*)?"表示匹配文件中所有字符,永久更**
restorecon -RvvF /mnt/   **对此文件加载**

这里写图片描述

3.Selinux对服务的影响

(1).不符合安全上下文的文件访问不到
(2).默认情况下不安全的功能是关闭的

getsebool -a | grep ftp     **查看 ftp 服务功能状态** 
setsebool -P ftp_home_dir on    **开启本地上传**
       -P:表示永久开启
getsebool -a | grep ftp       查看selinux对ftp服务的限制
setsebool -P ftpd_anon_write on  **更改ftpd_anon_write 开关  允许本地用户上传**

这里写图片描述
这里写图片描述
图中查看ftp服务功能状态时候ftp home dir 处于关闭状态,所以将服务状态用setsebool命令打开后可以上传/etc/passwd文件。图中出现的550报错如下解释:

553    本地文件不支持
550   系统不支持此服务
530   认证失败
500    权限过大

4.查看日志解决selinux问题

当安全上下文等不匹配或者有问题时,我们可以查看日志,日志中有解决方法 前提是有setroubleshoot-3.2.17-2.el7.x86_64 软件
Selinux 日志存放位置:
cat /var/log/audit/audit.log 默认位置**
setroubleshoot-server.x86_64 可以将/var/log/audit/audit.log里面的日志经过处理存放到/var/log/messages**
这里写图片描述

这里写图片描述

Linux Security Enhanced Linux (SELinux) 是一种强制访问控制(MAC)的安全模块,它增强了系统的安全性,通过将用户、进程和其他系统实体分配到安全上下文(也称作“角色”),限制它们之间的交互。为了在Linux上启用SELinux,你需要按照以下步骤操作: 1. **安装SELinux**:如果你的系统已经预装了SELinux,可以直接跳到下一步;如果没有,可以使用包管理器如`yum`或`apt-get`安装,例如在CentOS/RHEL上:`sudo yum install selinux-policy-targeted`。 2. **配置SELinux状态**:检查当前状态,一般有`enforcing`, `permissive` 和 `disabled`三种模式。若需启用,可以修改 `/etc/selinux/config` 文件,将 `SELINUX=enforcing` 或 `SELINUX=permissive` 设置为 `SELINUX=enforcing`,然后重启系统使设置生效。 3. **启动并加载内核模块**:运行命令 `semodule -i` 来初始化SELinux,这会加载必要的内核模块。 4. **验证和设置文件系统权限**: SELinux 可能需要你对某些文件系统或目录设置额外的规则,使用 `chcon` 命令调整权限。 5. **管理策略模块**:SELinux 安全策略由一组二进制文件组成,可通过 `semanage` 工具创建、编辑和删除策略。 6. **审核和日志**:为了监控和调试SELinux,可以配置审计规则和设置日志记录,使用 `auditctl` 和 `setsebool` 命令。 注意,对于首次使用,建议先在非生产环境测试和了解 SELinux 的影响,因为它可能会改变默认的行为。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值