unit9 & unit10selinux的管理;系统恢复
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了unit9 & unit10selinux的管理;系统恢复相关的知识,希望对你有一定的参考价值。
**************************************
***************selinux的管理************
**************************************
1.基本SELINUX安全性概念
2.显示及更改SELINUX模式
1.查看)【ps axZ | ps -Zc | ls -Z】
vim /etc/sysconfig/selinux【selinux的配置文件】
(disable:关闭;enforcing:强制;permissive:警告;状态切换需重启)
ls -Z XX【查看文件的安全上下文类型】
例如:ps auZ | grep vsftpd
【解释:如果你开启起了selinux,并且服务是受到selinux影响的,比如像vsftpd这种服务(基本网络服务大部分都会受影响),比如你可以查看/var/frp/pub/下的文件,但是 你如果在/mnt下建立文件,并且mv到/var/ftp/pub下,你lftp后,查看/pub/下的文件,是找不到你在/mnt下建立的文件的。这就是因为目录和文件‘安全上下文’类型不一样。】
2.更改)
1)临时更改(修改selinux配置文件重启的话,文件类型会自动修改为目录默认的‘安全上下文类型’,如果相同就可以访问,不同就还需要修改为相应的类型)
chcon -t public_conten_t /vat/ftp/pub -R【将pub下的所有文件安全上下文类型更改为‘public_content_t’,这样你就可以查看了】
chcon --reference=/etc/passwd /var/www/html/index.html 【以某个文件作为模板(/etc/passwd)修改文件(/are/www/html/index.html)的‘安全上下文’】【执行restorecon刷新后还原‘安全上下文’】
2)永久修改(重启selinux配置文件,会自动读取你为修改的目录所添加的‘安全上下文’类型。)
semanage fcontext -l | grep ftpdir 【例子:查看ftpdir目录的默认‘安全上下文’类型】
semanage fcontext -a -t public_content_t ‘/ftpdir(/.*)?‘ 【-a:所有的;-t:修改的类型;后面是固定常用的扩展正则表达式是‘(/.*)?‘】
restorencon -RvvF /ftpdir/ 【将下列文件以及目录修改,并且将显示到屏幕上】【-R:连同子目录一起修改;-v显示到屏幕上;-F将此‘安全上下文类型’载入默认型。
3)修改sebool(selinux的布尔值)【这个改了,想开什么开什么,畅通无阻】
getsebool -a | grep ftp【查看ftp服务的sebool信息】
setsebool -P ftpd_anon_write on 【打开ftp服务写入的功能,这样以来你手动调整setenforce 1|0 就不会影响你所用的服务的功能了,-P表示:直接将设置写入配置文件】
3.监控 SElinux 冲突
*必须安装 setroubleshoot-server 软件包,才能将SELinux 消息发送至 /var/log/messages
*etroubleshoot-server 侦听/var/log/audit/audit.log 中的审核信息并将简短摘要发送至 /var/log/messages
*摘要包括SElinux 冲突的唯一标识符(UUIDs),可用于收集更多信息。Sealert -l UUID用于生成特定事件的报告。
Sealert -a /var/log/audit/audit.log 用于在该文件中生成所有事件的报告。
***************************************
***************系统恢复*****************
***************************************
1.系统启动流程
通电
||
bios(主板上的只读存储中,basic input op output system)
作用,硬件检测,激活硬件
||
grup系统引导(grub引导分为两个阶段)
1)阶段1 mbr(主引导记录)主引导记录在硬盘上的0磁道,一扇区,446个字节
*)dd if=/dev/zero of=/dev/vda bs=446 count=1 清空mbr
*)进入到挽救模式,执行chroot /mnt/sysimage切换到真实/环境,
并执行grub2-install /dev/vda
2)阶段2 grub文件引导阶段
找到/boot分区
读取/boot/grub2/grub.cfg
文件丢失,grub2-mkconfig > /boot/grub2/grub.cfg
【测试】在正常进入的时候,选项界面,你按C进入手动引导,输入如下(不正常的情况就是直接进入C的情况)
set root=‘hd0,msdos1‘【这个地址点,你可以先在文件中grub.cfg中查看】
linux16 /boot/vmliunz-3.10.0-123.e17.x86_64 ro root/dev/vda1
initrd16 /boot/initramfs-3.10.0-123.e17.x16_64.img
boot
||
启动内核,只读挂载/设备
检测设备
对设备驱动进行初始化
进入系统初始化阶段
内核丢失,从新安装内核安装包可以解决
rpm -ivh kernel-XXXXXX.rpm --force
||
系统初始化阶段
系统初始化阶段加在initrd镜像
开始初始化进程systemd
开始selinux
加在内核参数
初始化系统时钟,键盘,主机名称
重新读写挂载/设备
激活raid,lvm
激活配额
启动multi-user.target.wants中的所有服务
开启虚拟控制台
启动图形
initramfs-`uname -r`.img丢失用:
mkinitrd initramfs-`uname -r`.img `uname -r`
在紧急救护模式 可以使用 mkinitrd /boot/initramfs-$(uname -r).img $(uname -r),使得丢失的文件(initranfs-3.10-123.e17.x86_64.img)文件生成。
恢复
【开机默认选择(以0开始为第一个)】
grub2-set-default <序号>
【手动引导进入字符编辑页面】
*)进入编辑启动项(可写)【在选择启动项时,按c(界面有提示)。进入,将fi下的linux16 。。。 找到ro,从这里起删除后面的并该为:rw rd.break;Ctrl+x,重新载入后会得到一个shell,进入你自己的shell(chroot /sysroot),开始修改你所要修改的内容】
1,管理员密码被篡改)
passwd(更改密码)
*)/.autorelable【重新载入系统更改配置,例如:实验是在不知道密码的情况下,在救护模式手动更改密码。在更改完密码后,touch /.autorelable,不然这个更改也许不成功,这和(selinux)防护有关。】
2.bash被删除【你将进入不了自己的bash,执行不料chroot /sysroot】【首先进入救护模式下】
cp /bin/bash/mnt/sysimage/bin/bash【bash丢失,你将救护模式下的bash复制到你的本机下,就可以了】
【*理解并熟悉关于控制系统服务开机启动的文件multi-user.target.wants*】
当系统设定服务开机启动时,其实是将你所启动的服务,用一个软链接,连接到开机自动读取文件上,
1)例如 开机自启动vsftpd服务,实则是:ln -s /usr/lib/systemd/system/vsftpd.service /etc/systemd/system/multi-user.target.wants/这个文件中。【如果你删掉它,服务开机就重起了】
2)当系统开启时会自动加载/etc/systemd/system/default.target,一般有图形的机子,这个默认链接是连接到图形界面的文件的(/usr/lib/systemd/system/graphical.target.wants/),如果你把它连到reboot上,你的机子就重启阿重启,哈哈,那就完了。 开玩笑的,【解决办法:就是手动引导进入可编写模式下,删掉这个链接地址,把它换成图形开启界面】
以上是关于unit9 & unit10selinux的管理;系统恢复的主要内容,如果未能解决你的问题,请参考以下文章