`
mlm
  • 浏览: 44339 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[转]SELinux相关指令工具

阅读更多

[转]http://www.cnblogs.com/zgx/archive/2011/08/31/2160330.html

 

检查SELinux是否已经启用.

[root@localhost ~]# sestatus
SELinux status: disabled

常用命令如下:

 

sestatus

查询系统的selinux目 前的

selinuxenabled

查询系统的selinux支 援是否有启用

setenforce

设定selinux运 作

getsebool

出所有selinux bool数值清单表与内容

setsebool

设定selinux bool数值内容

chcon

档案目security context

restorecon

档案目的预设的security context

fixfiles

修正档案目的预设的security context

semanage

SELiux policy程式

secon

检视程、档案等等项目的SELinux context

audit2why

检视SELinux audit讯息内容

sealert

SELinux 讯息诊断用户端程式


下面列出几个常用的:

1、sestatus工具
查询系统的selinux 目前的状态
例如:root@monitor:~# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: permissive
Policy version: 21
Policy from config file: targeted

2、selinuxenabled工具
检查系统selinux是否开启,是通过返回值进行判断selinux是否已经启动,0:表示已经启动selinux;1:表示已经关闭selinux
例如:selinuxenabled ; echo?,返回的结果为:1

3、setenforce工具
功能:设定切换selinux的运行状态(0或者1),前提是开启了selinux,同时这种切换只对当前有效,如果重新启动的话,就没有效了(注意:如果关闭了selinux,那么就必须配置/etc/selinux/config文件)
语法:setenforce [ Enforcing | Permissive | 1 | 0 ]
说明如下:
enforcing 或者1,表示开启强制模式
permissive 或者0,表示开启警告但是无限制模式
例如:下面这个例子
root@monitor:~# sestatus | grep -i mod
Current mode: permissive
Mode from config file: permissive
root@monitor:~# setenforce 1
root@monitor:~# sestatus | grep -i mod
Current mode: enforcing
Mode from config file: permissive

4、getsebool与setsebool工具
说明:SELinux规范了许多boolean数值清单档案,提供开启或关闭功能存取项目,而这些值都存放在/selinux/booleans/目录内相关档案,这些档案里的值只有两种:1(启用)或 0(关闭)

1)getsebool
说明:列出所有selinux bool数值清单列表与内容
使用方式:getsebool [ -a ]
例如以下范例:
#getsebool ftpd_disable_trans
ftpd_disable_trans --> off
#getsebool -a
NetworkManager_disable_trans --> off
allow_cvs_read_shadow --> off
allow_daemons_dump_core --> on
allow_daemons_use_tty --> off
allow_execheap --> off
allow_execmem --> on
allow_execmod --> off
..........

2)setsebool
说明:设定selinux bool数值清单列表与内容
使用方式:setsebool [ -P ] boolean value | bool1=val1 bool2=val2 bool3=val3......
参数配置: -P表示设定该项目永久套用
使用范例:
setsebool ftpd_disable_trans=on ( on 或者 1 )
setsebool -P ftpd_disable_trans=off ( off 或者 0 )

5、chcon
说明:变更档案目录的security context
使用方式:
chcon [OPTION]... CONTEXT FILE...
chcon [OPTION]... --reference=RFILE FILE...
参数如下:
-u USER:set user USER in the target security context
-r ROLE:set role ROLE in the target security context
-t TYPE:set type TYPE in the target security context
范例:
chcon -t var_t /etc/vsftpd/vsftpd.conf
chcon --reference=/var/www/html index.html
注意事项:若是变更于目录上,后续于该目录内建立的档案目录会套用目录本身type设定

6、restorecon
说明:恢复档案目录的预设的security Context
规格来源:/etc/selinux/<POLICY>/contexts/files/目录内的file_contexts与file_contexts.local
常用参数如下:
-r | -R:包含子目录与其下档案目录
-F:恢復使用预设的項目(就算是檔案符合存取规范)
-v:显示执行过程
使用方式:restorecon [FRrv] [-e excludedir ] pathname... ]
使用范例如下:
restorecon /etc/ntp.conf
restorecon -v /etc/ntp.conf
restorecon -v -F /etc/ntp.conf
手动配置新增恢复规则
1)档案名称
/etc/selinux/<POLICYTYPE>/contexts/files/file_contexts.local
2)新增配置范例
/var/ftp(/.*)? system_u:object_r:public_content_t
3)注意
可以使用semanage程式来维护会比较方便

7、fixfiles
说明:修正档案目录的预设的security Context,依据/etc/selinux/<POLICY>/contexts/files/内相关档案修正
使用方式:
fixfiles { check | restore|[-F] relabel } [[dir] ... ]
fixfiles -R rpmpackage[,rpmpackage...] { check | restore }
参数:
-R:使用指定的rpm 套件所提供的檔案清單
使用范例:
fixfiles check /etc
fixfiles restore /etc
fixfiles -F relabel /
fixfiles -R setup check

8、audit2why
说明:检视SELinux audit讯息内容,提供检视/var/log/audit/audit.log内的记录资讯说明
使用范例:audit2why < /var/log/audit/audit.log
注意:需要搭配启动auditd服务程式一起使用

9、sealert
说明:SELinux 讯息诊断用户端程序
参数如下:
-H, --html_output:使用网页格式输出(搭配 -a or -l 使用)
-l, --lookupid ID:检视指定ID的警示讯息
使用范例:
sealert -l xxxxx-xxxxx-xxxx
sealert -H -l xxxxx-xxxxx-xxxx > output.html
注意:需要搭配setroubleshoot服务一起使用
setroubleshoot服务启动后,会依据audit服务提供的资讯给予适当问题诊断,然后输出于/var/log/messages,该档案内会有相关输出资讯提供除错检视

10、semanage
说明:selinux policy维护工具
使用方式:semanage { login | user | port | interface | fcontext | translation} -l [-n]
使用范例:
semanage login -l
semanage user -l
semanage port -l
semanage port -a -t http_port_t -P tcp 81
semanage fcontext -a -t httpd_sys_Context_t "/home/users/(.+)/public_html(/.*)?“

11、secon
说明:检视程式、档案与使用者等相关SELinux Context
使用方式:
secon [-hVurtscmPRfLp] [CONTEXT]
secon [--file] FILE | [--link] FILE | [--pid] PID
参数:
-u, --user:show the user of the security context
-r, --role:show the role of the security context
-t, --type:show the type of the security context
-f, --file FILE:gets the context from the specified file FILE
-p, --pid PID:gets the context from the specified process PID
使用范例:
secon -u
secon -r
secon -t
secon --file /etc/passwd
secon --pid <pid>

 

SELinux让php程序无法远程连接数据库

setsebool -P httpd_can_network_connect_db=1

分享到:
评论

相关推荐

    linux查看进程指令.pdf

    在理解给定文件内容时,虽然部分文字因OCR技术问题可能有识别错误,但以上知识点涵盖了文件中提到的指令、工具及其用法和功能。文档通过OCR扫描可能造成了一些非关键信息的损失,但所提及的指令和用法大体上还是完整...

    鲲鹏开发套件 常用操作.pdf

    如果遇到权限问题,可能需要临时关闭 SELinux 或者调整其策略设置,以允许工具的运行。 ### 4. 容器相关操作 在容器环境下开发和部署应用程序越来越普遍。鲲鹏开发套件也支持在 Docker 或 Kubernetes 等容器平台上...

    Centos7 ssh端口的更改方法.docx

    5. 配置 SELinux:使用 semanage 工具配置 SELinux,以便允许 2222 端口的流量通过 SELinux。首先需要安装 semanage 工具,如果没有安装,可以使用 yum install policycoreutils-python 命令安装。然后使用 semanage...

    linux查看进程指令[归纳].pdf

    `ps`命令还可以用于展示更详细的进程信息,如线程信息(`ps -ejH`或`ps axjf`),以及安全相关的属性(`ps -eo euser,ruser,suser,fuser,f,comm,label`或`ps axZ`)。此外,可以使用`ps -eM`查看进程的SELinux上下文...

    Linux smb服务添加到防火墙与开机自启动.docx

    首先,使用vi指令编辑/etc/selinux/config文件,并将SELINUX=enforcing行的enforcing修改为disabled。然后,保存并退出。最后,重启系统或使用setenforce 0指令使配置生效。 五、启动Linux smb服务 为了使Linux ...

    Linu系统配置DNS服务器

    - `nsupdate`: 更新工具,用于向DNS服务器发送更新指令。 #### 六、配置过程详解 - **配置文件详解**: - 在`/etc/named.conf`中定义区域,指定类型(`master`、`slave`、`hint`、`forward`)、区域数据文件位置等...

    Oracle 19C RAC on linux 7.6

    安装 Oracle 19C RAC 需要按照官方文档的指令进行操作。首先,需要安装 Grid Infrastructure,然后安装 Oracle Database。 七、结论 本文档详细介绍了在 Linux 7.6 上安装 Oracle 19C RAC 的步骤。按照这些步骤,...

    LINUX基础知识PPT课件.ppt

    LINUX目录结构包括根目录、bin目录、boot目录、dev目录、etc目录、home目录、lib目录、lib64目录、lost+found目录、media目录、mnt目录、opt目录、proc目录、root目录、run目录、sbin目录、selinux目录、sys目录、...

    linux_httpd.doc

    - 使用`htpasswd`工具创建口令库文件,例如`htpasswd -c /etc/httpd/passwd username`。 - 在httpd.conf中配置`&lt;Directory&gt;`段,启用`AuthType Basic`,`AuthName`,`AuthUserFile`,以及`Require`指令来限制访问...

    SC9830客户配置文档

    - 在SC9830平台上,Pinmap配置通常通过特定的工具或脚本自动生成。 - **Selinux配置**: - Selinux是一种强制访问控制(MAC)的安全框架,用于提高Android系统的安全性。 - 在SC9830平台中,合理的Selinux配置能够...

    Centos6.7之rysyslog服务器的搭建

    为了使rsyslog服务能够正常接收外部日志,需要确保防火墙和SELinux(安全增强型Linux)策略没有阻拦相关端口。在CentOS 6.7上关闭防火墙和SELinux的步骤如下: - 永久关闭防火墙: ``` chkconfig iptables off ``` -...

    linux相关资料集锦

    Linux系统的强大在于它的命令行接口,通过简单的指令可以实现复杂的任务。例如: 1. `ls`:列出目录内容。 2. `cd`:改变当前工作目录。 3. `pwd`:显示当前工作目录。 4. `touch`:创建新文件。 5. `mkdir`:创建新...

    Centos 安装 qmail+vpopmail

    7. **配置qmail启动脚本**:在`/var/qmail`下创建一个名为`rc`的启动脚本文件,包含适当的启动和停止指令,以控制qmail服务。 安装完成后,你需要配置vpopmail,这是一个管理虚拟邮件域和用户的工具。这包括创建...

    鸟哥的私房菜——基础篇PDF

    - audit2why:一个用于理解SELinux违规原因的工具。 - SELinux(安全增强型Linux):提供访问控制安全策略的框架。 - cron:用于设置周期性执行任务的守护进程。 - init和initrd:系统启动阶段的初始化脚本和初始...

Global site tag (gtag.js) - Google Analytics