热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

SELINUX从理解到动手配置

文章标题:SELINUX从理解到动手配置。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

SELinux 可以为你的系统提供较棒的安全防护。 使用者能被分配预先定义好的角色,以便他们不能存取文件或者访问他们不拥有的程序。

    Selinux的启用与关闭

    编辑/etc/selinux/conf文件

    SELINUX=enforcing(强制:违反了策略,你就无法继续操作下去)

    Permissive(有效,但不强制:违反了策略的话它让你继续操作,但是把你的违反的内容记录下来)

    Disabled(禁用)

    禁用的另一种方式:在启动的时候,也可以通过传递参数selinux给内核来控制它

    编辑/etc/grup.conf

    title Red Hat Enterprise Linux Server (2.6.18-8.el5)

    root (hd0,0)

    kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/ rhgb quiet selinux=0

    initrd /initrd-2.6.18-8.el5.img

    SELINUXTYPE=targeted

    此参数可选项:targeted和strice。分别是targeted只控制关键网络服务,strice控制所有的服务

    查询selinux的状态

    [root@linuxas ~]# /usr/sbin/getenforce

    Enforcing

    [root@linuxas ~]# sestatus -bv

    SELinux status: enabled

    SELinuxfs mount: /selinux

    Current mode: enforcing

    Mode from config file: enforcing

    Policy version: 21

    Policy from config file: targeted

    查看selinux加载的内核模块

    [root@linuxas selinux]# semodule -l

    amavis 1.1.0

    ccs 1.0.0

    clamav 1.1.0

    dcc 1.1.0

    evolution 1.1.0

    iscsid 1.0.0

    mozilla 1.1.0

    mplayer 1.1.0

    nagios 1.1.0

    oddjob 1.0.1

    pcscd 1.0.0

    pyzor 1.1.0

    razor 1.1.0

    ricci 1.0.0

    smartmon 1.1.0

    查看selinux错误日志

    [root@linuxas selinux]# sealert -a /var/log/audit/audit.log

    SElinux的图形化管理工具

    [root@linuxas selinux]# system-config-selinux

    Selinux的基本操作

    查看文件:ls ?Z(--context)

    [root@linuxas ~]# ls -Z

    drwx------ root root root:object_r:user_home_t Desktop

    -rw------- root root system_u:object_r:user_home_t anaconda-ks.cfg

    -rw-r--r-- root root root:object_r:user_home_t install.log

    -rw-r--r-- root root root:object_r:user_home_t install.log.syslog

    [root@linuxas ~]# ls --context

    drwx------ root root root:object_r:user_home_t Desktop

    -rw------- root root system_u:object_r:user_home_t anaconda-ks.cfg

    -rw-r--r-- root root root:object_r:user_home_t install.log

    -rw-r--r-- root root root:object_r:user_home_t install.log.syslog

    查看文件系统的扩展属性:getfattr

    [root@linuxas ~]# getfattr -m. -d /etc/passwd

    getfattr: Removing leading '/' from absolute path names

    # file: etc/passwd

    security.selinux="system_u:object_r:etc_t:s0\000"

    查看的文件的 security.selinux 属性中储存了此文件的安全上下文, 所以上面例子中的上下文就是 system_ubject_r:etc_t 。

    所有运行了SE Linux的ext2/3文件系统上都有 security.selinux 这个属性。

    更改文件的扩展属性标签:chcon (不能在 /proc 文件系统上使用,就是说 /proc 文件系统不支持这种标记的改变。)

    [root@linuxas test]# ls --context aa.txt

    -rw-r--r-- root root root:object_r:user_home_t aa.txt

    [root@linuxas test]# chcon -t etc_t aa.txt

    [root@linuxas test]# ls --context aa.txt

    -rw-r--r-- root root root:object_r:etc_t aa.txt

    恢复原来的文件标签: restorecon

    [root@linuxas test]# restorecon aa.txt

    [root@linuxas test]# ls -Z aa.txt

    -rw-r--r-- root root user_u:object_r:user_home_t aa.txt

    显示当前用户的Selinux context

    [root@linuxas ~]# id -Z

    root:system_r:unconfined_t:SystemLow-SystemHigh

    runcon 使用特定的context来执行指令

    [root@linuxas ~]# runcon -t user_home_t cat /etc/passwd

    root:system_r:user_home_t:SystemLow-SystemHigh is not a valid context

    查看某种服务是否受到SELinux的保护

    [root@linuxas ~]# getsebool -a (RHEL4:inactive受保护,active不受保护;RHEL5:off受保护,on不受保护)

 


推荐阅读
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了解决Netty拆包粘包问题的一种方法——使用特殊结束符。在通讯过程中,客户端和服务器协商定义一个特殊的分隔符号,只要没有发送分隔符号,就代表一条数据没有结束。文章还提供了服务端的示例代码。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文介绍了如何找到并终止在8080端口上运行的进程的方法,通过使用终端命令lsof -i :8080可以获取在该端口上运行的所有进程的输出,并使用kill命令终止指定进程的运行。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 如何修改路由器密码?路由器登录密码和无线密码的修改方法
    本文介绍了修改路由器密码的两种方法:一是修改路由器登录口令,需要进入路由器后台进行操作;二是修改无线连接密码,通过进入路由器后台的无线设置和无线安全设置进行修改。详细步骤包括复位处理、登录路由器后台、选择系统工具、填入用户名和用户密码、保存修改等。 ... [详细]
  • 本文介绍了2019年上半年内蒙古计算机软考考试的报名通知和考试时间。考试报名时间为3月1日至3月23日,考试时间为2019年5月25日。考试分为高级、中级和初级三个级别,涵盖了多个专业资格。报名采取网上报名和网上缴费的方式进行,报考人员可登录内蒙古人事考试信息网进行报名。详细内容请点击查看。 ... [详细]
author-avatar
sds家的
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有