linux学习之SElinux

1、修改http服务:html下的文件本身是可以访问的,如果从其他地方复制一个文件到html目录下且selinux开启状态下该文件是不能够被访问的,因为上下文不同,需要修改上下文。

查看selinux状态:getenforce

设置selinux状态:setenforce(如果状态转换前后有disabled则需要重启)

查看上上下文:ls -Z

修改方法:chcon -t context file--临时修改

semanage fcontext -a -t   ----永久修改

修改完后需要重新加载上下文restorecon -FvvR

正常情况下通过浏览器是可以访问http服务下的index.html文件

 

若在/var/www/html目录外新建一个文件并移动到该目录下则无法访问,原因是SElinux限制了访问

 

查看SElinux状态:

getenforce-----enforce3种状态,enforcing(强制状态)/permissive(警告状态)/disabled(关闭状态)

设置SElinux状态:

setenforce-----0:设置为permissive状态,1设置为enforcing状态,两种状态可以在线转换不需要重启服务;

disabled状态需要在SElinux的配置文件/etc/selinux/config文件中修改,修改完成后需要重启http服务:

 

如下图,设置为permissive状态后就可以访问文件,那么在enforcing状态下为何不能访问,又怎么能够访问呢?

 

SElinux开启状态下,复制进来的文件不能访问是因为文件的上下文不同,如下图通过ls -z查看文件的上下文,index.html的上下文为httpd_sys_conten_t,而test.html的上下文为user_tmp_t

 

修改上下文:chcon -t context file----修改上下文后在SElinux开启状态下可以正常访问

 

chron是临时修改上下文,一旦电脑重启就会失效,有两种永久修改上下文的方法。方法一:restorecon filename

 

方法二:先通过semanage fcontext -a -t context file修改上下文,但修改后不会立即生效,需要通过restorecon -FvvR filename进行刷新后才能生效

 

 

2、对于FTP服务,当selinux打开后若要匿名用户能够上传文件则需要修改bool

修改匿名用户的上传权限,需要打开bool

如下图当selinux开启状态下匿名用户无法上传数据,关闭selinux后可以上传:

 

那么,当selinux开启状态下如何让用户可以上传数据呢?需要设置bool

首先查看ftp服务的bool值状态:getsebool -a

 

通过setsebool -P 设置bool值:

 

再次连接ftp服务器,可以正常上传数据:

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值