Linux系统中对selinux设定

SELinux(安全增强型Linux)是一种内核级安全机制,用于增强系统的安全性。它与传统权限系统并行工作,增加了额外的安全层。本文介绍了SELinux的作用、模式、状态更改方法以及如何调整安全上下文,确保文件和资源的安全访问。同时,文章讨论了如何解决SELinux报错的问题,强调了setroubleshoot-server软件包在提供错误解决方案中的重要性。

1.什么是selinux

selinx(安全增强型linux),内核级的加强型火墙
内核上的插件,改变selinux状态后需要进行重启
是可以保护系统安全性的额外机制

2.selinux的作用

在某种程度上,他可以被看作是与标准权限系统并行的权限系统。
在常规模式中,以用户身份运行进程,并且系统上的文件和其它资源都设置了权限标签。
(即控制那些用户对哪些文件具有哪些访问权,selinux的另一个不同之处在于,若要访问文件,你必须具有普通访问权限和selinux访问权限。因此,即使以超级用户身份root运行进程,根据进程积极文件或资源的selinux安全性上下文可能拒绝访问文件或者资源)

3.selinux的模式

Disabled 不警告不拒绝
Enforcing 1 强制不可访问
Permissive 0 警告但可以访问

getenforce可以查看selinux的状态

4.更改selinux状态的方法

(1)文件中修改

[root@server_sshd ~]# vim /etc/sysconfig/selinux 
[root@server_sshd ~]# reboot

1 重新安装vsftpd包,安装完毕后开启服务

[root@server_ssh ~]# yum reinstall vsftpd -y
[root@server_ssh ~]# systemctl start vsftpd

2 查看selinux的状态,lftp匿名用户登陆,登陆后查看家目录下的内容

[root@server_ssh ~]# getenforce
Disabled
[root@server_ssh ~]# lftp 172.25.254.227
lftp 172.25.254.227:~> ls
drwxr-xr-x    2 0        0              31 Jun 23  2016 pub
-rw-r--r--    1 0        0               0 Feb 03 15:18 westos
lftp 172.25.254.227:/> quit

在这里插入图片描述
3 在/mnt下新建一个文件hello,将/mnt/hello移动到/var/ftp下,匿名用户登陆后可以查看到刚刚移动的文件

注意:移动是一个重命名的过程不会改变文件的权限以及其他属性,
而复制有可能会改变文件的权限以及属性

在这里插入图片描述
4 在文件中修改selinux的状态,修改后查看selinux的状态没有改变,重启虚拟机,再次查看selinux的状态发生改变

[root@server_ssh mnt]# vim /etc/sysconfig/selinux 
[root@server_ssh mnt]# getenforce
Disabled

在这里插入图片描述
在这里插入图片描述

[root@server_ssh mnt]# reboot
[root@server_ssh ~]# getenforce
Enforcing

在这里插入图片描述
5 匿名用户登陆后可以查看到之前的内容

[root@server_ssh ~]# systemctl restart vsftpd
[root@server_ssh ~]# lftp 172.25.254.227
lftp 172.25.254.227:~> ls
-rw-r--r--    1 0        0               0 Feb 10 16:06 hello
drwxr-xr-x    2 0        0              31 Jun 23  2016 pub
-rw-r--r--    1 0        0               0 Feb 03 15:18 westos
lftp 172.25.254.227:/> quit

在这里插入图片描述
再次重复之前的步骤,在/mnt下新建以和文件hello1,将/mnt/hello1移动到/var/ftp,再次匿名用户登陆查看不到新建的文件,这是因为文件的安全上下文不匹配

[root@server_ssh mnt]# cd /mnt
[root@server_ssh mnt]# ls
[root@server_ssh mnt]# touch hello1
[root@server_ssh mnt]# ls
hello1
[root@server_ssh mnt]# mv /mnt/hello1 /var/ftp
[root@server_ssh mnt]# lftp 172.25.254.227
lftp 172.25.254.227:~> ls
-rw-r--r--    1 0        0               0 Feb 10 16:06 hello
drwxr-xr-x    2 0        0              31 Jun 23  2016 pub
-rw-r--r--    1 0        0               0 Feb 03 15:18 westos
lftp 172.25.254.227:/> quit

在这里插入图片描述
6 ls -lZ /var/ftp/查看文件的安全上下文

[root@server_ssh mnt]# ls -lZ /var/ftp/
-rw-r--r--. root root system_u:object_r:public_content_t:s0 hello
-rw-r--r--. root root unconfined_u:object_r:mnt_t:s0   hello1
drwxr-xr-x. root root system_u:object_r:public_content_t:s0 pub
-rw-r--r--. root root system_u:object_r:public_content_t:s0 westos

在这里插入图片描述
(2)命令修改
设置selinux的状态

[root@server_sshd mnt]# setenforce 0|1
0表示警告(Permissive),1表示强制(Enforcing)

例:
1 删除/var/ftp下之前移动来的文件hello和hello1

[root@server_ssh mnt]# rm -fr /var/ftp/hello*
[root@server_ssh mnt]# ls -lZ /var/ftp/
drwxr-xr-x. root root system_u:object_r:public_content_t:s0 pub
-rw-r--r--. root root system_u:object_r:public_content_t:s0 westos

在这里插入图片描述
2 查看selinux的状态,在/mnt/下建立一个文件file,移动到/var/ftp/

[root@server_ssh mnt]# getenforce
Enforcing
[root@server_ssh mnt]# touch /mnt/file
[root
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值