了解selinux,设置给文件selinux的安全上下文件,复制、移动对selinux规则的影响,设置apache、vsftpd的selinux规则

1.了解selinux

1)DAC:指用户访问资源的控制,即权限

MAC:selinux标签,限制进程访问资源,进程归用户所有;当用户调用进程去访问资源(file)时,检查selinux安全标签,匹配了才能访问。

selinux使用selinux用户、角色、类型和级别控制进程访问资源。

selinux属性的格式:user:role:type:level

ls -Z install.log

-rw-r--r--. root root system_u:object_r:admin_home_t:s0 install.log

2)selinux用户:不同于系统用户,selinux用户使用selinux策略的一部分,和系统用户有映射关系,一个系统用户对应一个selinux映射。semange查看关系。

需要安装软件:

yum -y install policycoreutils-python

semanage user -l

3)角色role:用户空间,进程的访问范围标记,如object_r

4)类型或者安全上下文,资源的标记,admin_home_t

5)安全级别:s0最常用

查看:进程、用户、文件的selinux属性

ps -eZ |grep http ##查看http进程的selinux

id -Z ##当前用户的selinux设置

ls -ldZ /var/www/html ##查看http网页跟目录的selinux属性

2.设置文件的selinux属性中安全上下文(type)

1.临时设置

echo 123123 >/var/www/html/index.html

cd /var/www/html

ls -Z index.html ##TYPE:httpd_sys_content_t,只允许apache的进程访问,访问测试

chcon -t admin_home_t index.html ##访问测试,无法访问到文件

restorecon -F -v index.html ##还原selinux属性,-F表示强制,-v详细

目录的selinux设置,在文件的基础上加“-R”选项即可。

2.永久生效

语法:semanage fcontext -{a|d|m} 文件 ##-a表示增加,-d删除,-l显示,-m修改

注意文件、目录使用绝对路径

文件:

semanage fcontext -a -t httpd_sys_content_t /web/a.file ##添加

cat /etc/selinux/targeted/contexts/files/file_contexts.local ##发现a.file的selinux属性

restorecon -v /web/a.file ##立即生效,restorecon恢复的依据就是file_contexts.local文件中的规则。

semanage fcontext -d -t httpd_sys_content_t /web/a.file ##删除a.file的selinux属性,相当于删除了file_contexts.local中的规则,不能使用vi等删除。

restorecon -F -v /web/a.file ##立即生效

目录:

semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?" ##如果只写目录,目录下的内容的selinux属性不会被修改,使用正则匹配目录下的所有内容,"/web(/.*)"

restorecon -R -F -v /web/ ##立即生效

semanage fcontext -d -t httpd_sys_content_t "/web(/.*)?" ##删除

restorecon -R -F -v /web/

3.复制、移动对selinux规则的影响

移动:selinux不变,覆盖时会覆盖selinux属性

mv /root/index.html /var/www/html/

ls -Z /var/www/html/index.html ##selinux未发生变化

cd /home/

touch index.html

ls -Z /home/index.html ##文件的type:home_root_t

mv /home/index.html /var/www/html/

ls -Z /var/www/html/index.html ##selinux被覆盖,type变为home_root_t

复制:使用目标selinux的属性,覆盖时selinux属性不变

cp /root/install.log /var/www/html

ls -Z /var/www/html/install.log ##selinux的type:httpd_sys_content_t

cp /root/install.log /var/www/html/ ##覆盖,selinux属性不变

注意:对比移动和复制,复制更有利于保持selinux属性、推荐使用。

4.tar打包备份与selinux;特殊selinux type:file_t,default_t,user_tmp_t

1)tar打包时默认selinux丢失,使用“--selinux|--xattrs”可以保持selinux属性。

tar -zcvf /tmp/test-sel.tar.gz /var/www/html/ --selinux

2)特殊type:

file_t:文件没有selinux属性

default_t:文件或目录的selinux与file-context配置文件定义模式不匹配。

两种类型文件,设置了selinux属性的进程都不能访问。

user_tmp_t:用户临时文件的,所有的进程都可以访问。

5.vsftpd/apache

vsftpd:允许匿名:

getsebool -a |grep httpd |grep on$ ##查看sebool

setsebool allow_ftpd_anon_write=on

chcon -R -t public_content_rw_t /var/ftp/pub

chmod 777 /var/ftp/pub/

http:设置

setsebool httpd_enable_cgi=off

semanage fcontext -a -t httpd_sys_content_t "/usr/local/httpd/htdocs(/.*)?"

restorecon -R -v /usr/local/httpd/htdocs

转载于:https://blog.51cto.com/liuqicheng/1874418

lqc_selinux的安全控制相关推荐

  1. iptables 实现地址转换与安全控制

    目标:模拟生产环境的基本拓扑,实现通过源地址转换内网多台主机公共一个IP地址访问互联网,并通过目标地址转换,把www等多个服务器放到互联中,并实现安全控制,基本拓扑结构如下: 在这个拓扑结构中来说,就 ...

  2. SOAP 及其安全控制--转载

    原文地址:http://my.oschina.net/huangyong/blog/287791 目录[-] 1. 基于用户令牌的身份认证 2. 基于数字签名的身份认证 3. SOAP 消息的加密与解 ...

  3. springboot 访问html_Spring Boot中使用Spring Security进行安全控制

    我们在编写Web应用时,经常需要对页面做一些安全控制,比如:对于没有访问权限的用户需要转到登录表单页面.要实现访问控制的方法多种多样,可以通过Aop.拦截器实现,也可以通过框架实现(如:Apache ...

  4. 在springboot中使用springsecurity实现安全控制

    SpringSecurity官方文档 我们在编写web应用时经常要对一些页面做安全控制,比如:对于没有访问权限的用户需要转到登录表单页面.要实现访问控制方法的多种多样,可以通过AOP.拦截器实现,也可 ...

  5. Nginx的安全控制及SSL加密介绍

    Nginx的安全控制 关于web服务器的安全是比较大的一个话题,里面所涉及的内容很多,Nginx反向代理是如何来提升web服务器的安全呢? 安全隔离 什么是安全隔离? 通过代理分开了客户端到应用程序服 ...

  6. 系统安全及应用(账户安全控制,系统引导和登录,弱口令检测和登录控制,PAM认证,端口扫描,用户切换和提权)

    文章目录 系统安全及应用 账户安全控制 基本安全措施 chattr--锁定账号配置文件 密码安全控制( chage) 要求用户下次登录时修改密码 命令历史,自动注销 注销时自动清空命令历史: bash ...

  7. Linux系统安全及应用(账号控制、su、sudo、开关机安全控制、终端登录安全控制等)

    Linux系统安全及应用 一.账号安全控制 1.系统账号清理 2.密码安全控制 2.1设置密码有效期 2.2要求用户下次登录时修改密码 3.命令历史限制 4.终端自动注销 二.su命令 1.使用su命 ...

  8. Linux系统安全与应用(二)——安全机制、安全控制、弱口令检测JR、网络扫描NMAP和控制台命令Netstat

    Linux系统安全与应用(二)--安全机制.安全控制.弱口令检测JR.网络扫描NMAP和控制台命令Netstat 一.使用sudo机制提升权限 1.su命令的缺点 2.sudo的用途和用法 3.配置s ...

  9. java 控制jsp_JSP学习之Java Web中的安全控制实例详解

    普通用户界面 修改登录的Servlet,修改后的代码如下: LoginProcess.java代码: package servlet; import javabean.User; import jav ...

最新文章

  1. AAAI2020 | SNERL:抛开mention级别的监督,实体链接、关系抽取我都行
  2. 一张心酸得不想起名字的照片,人艰就别拆了好吗 | 每日趣闻
  3. html宽度自适应怎么调整li超出隐藏,HTML篇之CSS样式——div ul li 嵌套后解决高度自适应方法...
  4. 以太坊服务器是什么_搭建以太坊节点服务器https API
  5. Spring AOP编程-传统AOP开发切点表达式写法介绍
  6. JDK——NIO系统调用浅析
  7. 项目经理人必须要遵循的14个成功原则
  8. 一、自然语言处理概述
  9. 华为手机线刷工具_华为手机天气小工具误删/移除/丢失/不见了怎么办?
  10. 洛谷P2497:基站建设(splay、斜率优化)
  11. XGBoost、LightGBM与CatBoost算法对比与调参
  12. 【scala】2.控制结构和函数
  13. 实参与形参不兼容怎么解决_上岗证报名照片无法上传非官方解决方案
  14. BZOJ 2733: [HNOI2012]永无乡 启发式合并treap
  15. Keras Model AttributeError:’str‘ object has no attribute ’call‘
  16. abab的四字成语_abab的四字成语有哪些成语大全
  17. 传输层 可靠传输 连续ARQ协议和滑动窗口协议
  18. Gallery模块管理系统相册,支持从相册中选择图片或视频文件、保存图片或视频文件到相册等功能。通过plus.gallery获取相册管理对象
  19. 《谁说大象不能跳舞》值得一读
  20. hexo next auto_excerpt无法使用

热门文章

  1. Ubuntu 20.04 安装微信(亲测)
  2. x-pack-core-7.12.0破解许可到2050年到期
  3. 【翻译】西川善司的「实验做出的游戏图形」「GUILTY GEAR Xrd -SIGN-」中实现的「纯卡通动画的实时3D图形」的秘密,后篇...
  4. Python中__dict__用法
  5. some和every的区别和用法
  6. 用MATLAB实现费诺编码
  7. Pytorch Unet深入浅出
  8. VPS服务器能够做些什么?
  9. 社会工程学之信息刺探
  10. 自然语言处理中传统词向量表示VS深度学习语言模型(一)