本文主要是介绍RH134-第二十一节-selinux对文件的控制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
SELinux 的运作模式
(2)若比对失败则无法存取目标,若比对成功则可以开始存取目标。
安全性本文 (Security Context)
身份识别 (Identify): 相当于账号方面的身份识别!主要的身份识别则有底下三种常见的类型:
SELinux 的启动、关闭与观察
注:如果由 enforcing 或 permissive 改成 disabled ,或由 disabled 改成其他两个,那也必须要重新启动。
SELinux type 的修改
复原成原有的 SELinux type:
默认目录的安全性本文查询与修改
利用 semanage 设定 /srv/vbird 目录的默认安全性本文为 public_content_t(修改的就是默认值):
政策查询:seinfo(需要安装:yum install setools-console)
如果你想要找到有 httpd 字样的安全性本文类别时, 就可以使用『 seinfo -t | grep httpd 』来查询了!如果查询到相关的类别或者是布尔值后,想要知道详细的规则时, 就得要使用 sesearch 这个指令了!
布尔值的查询与修改:(getsebool,setsebool)
整篇最重要的内容
SELinux 错误克服的总结:
##selinux:
selinux是进程,文件等权限设置依据的一个内核模块。
selinux的启动关闭与查看:
模式:vim/etc/sysconfig/selinux
enforceing:强制模式
permissive:警告模式
diabled:关闭,selinux并没有实际运行
查看:
getenforce ##显示selinux模式
setenforce 0|1 ##更改selinux模式
0:表示permissive警告模式
1:表示enforceing强制模式
显示进程的selinux的安全上下文:
ps axuZ | grep vsftpd ##-Z参数可以查询进程的安全上下文
测试:
touch file
mv file /var/ftp/pub
1)enforceing模式
ls ##不能看到从别处转移过来的文件
2)permissive模式
ls ##可以看到从别处转移过来的文件
ls -Z ##查看文件selinux的安全上下文,本地文件和从别处转移过来的文件的selinux安全上下文是不一样的
chcon -t public_content_t/var/ftp/pub/file 更改文件的selinux安全上下文,与本地文件一样,此时在enforcing模式下也可以看到从别处移过来的文件
1.selinux的永久设定:
selinux=Enforcing时:
mkdir /westos
touch /westos/file{1..10}
ls /westos/
vim /etc/vsftpd/vsftpd.conf ##将匿名用户的家目录设置为/westos: anon_root=/westos
systemctl restart vsftpd.service ##重启服务
lftp 172.25.254.122 ##匿名用户登陆的家目录/westos,用ls进行查看看不到之前新建的10个文件
ps auxZ | grep vsftpd ##显示vsftpd进程的安全上下文
ls -lZ /var/ftp ##查看/var/ftp文件selinux的安全上下文
ls -Zd /westos/ ##查看/westos目录selinux的安全上下文
semanage fcontext -l | grepwestos ##查询/westos的默认安全上下文设置
semanage fcontext -l | grep/var/ftp/ ##查看/var/ftp文件的默认安全上下文设置
semanage fcontext -a -tpublic_content_t '/westos(/.*)?' ##永久更改目/westos的selinux安全上下文和/var/ftp中的文件一样
semanage fcontext -l | grep /var/ftp/
semanage fcontext -l | grepwestos
ls -Zd /westos/
restorecon -RvvF /westos/ ##恢复更改后的/westos的selinux的安全上下文
lftp 172.25.254.122
touch /westos/file11 ##在目录中新建文件
lftp 172.25.254.122 ##用ls进行查看可以看到新建的file11文件,证明新建文件的安全上下文和目录保持一致
ls -Z /westos/ ##查询新建文件之后的目录中所有文件的安全上下文,
##目录的安全上下文被更改之后,目录下新建文件的安全上下文和目录保持一致
selinux=Permissive时:
##在selinux=Permissive时,不用修改/westos的安全上下文,用lftp连接之后直接可以看到/westos下建立的文件.
selinux默认关闭服务开启:(selinux内核防火墙在enforcing状态下会自动关闭一些不安全的服务)
getenforce ##查询selinux状态
vim /etc/vsftpd/vsftpd.conf ##默认情况下本地用户具有写的权限
lftp 172.25.254.122 -u student ##student用户登陆,不能上传文件
ls -ld /home/student/ ##查询/home/student目录权限
chmod u+w /home/student/ ##给/home/student增加写的权限
lftp 172.25.254.122 -u student ##student用户登陆,增加权限后依然不能上传文件
getsebool -a | grep ftp ##查看所有ftp服务设定状态
setsebool -P ftp_home_dir 1 ##直接将设置 写入配置文件,修改之后会生效
参数P必须是大写,否则命令无法执行
getsebool -a | grep ftp ##检查是否开启
lftp 172.25.254.122 -u student ##student用户登陆,上传文件成功
##由于进程的文件数量庞大,因此selinux服务会依据某些服务来制定基本的访问安全性策略,这些策略里还会有详细的规则来制定不同的服务开放某些资源的访问与否。
这篇关于RH134-第二十一节-selinux对文件的控制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!