云网牛站
所在位置:首页 > Linux安全 > 配置和生成SELinux man页面

配置和生成SELinux man页面

2019-01-23 09:47:14作者:戴进稿源:云网牛站

以下为你带来新手配置SELinux基础教程:配置和生成SELinux man页面。在默认情况下,RHEL 7或CentOS 7系统中都没有安装SELinux策略的SELinux man页面,必须自己安装必要的工具并生成手册页。本文将向你介绍配置SELinux环境和添加手册页,以便于更好的参考或排除SELinux故障。

 

启用S​​ELinux

如果要检查SELinux是否正在运行,请在终端上输入以下命令:

[root@server1 ~]# getenforce 

Enforcing

从上面的输出中,你可以看到SELinux正在运行并强制执行所有策略规则,我通过编辑/etc/selinux/config永久设置selinux:

[root@server1 ~]# cat /etc/selinux/config

# This file controls the state of SELinux on the system.

# SELINUX= can take one of these three values:

# enforcing - SELinux security policy is enforced.

# permissive - SELinux prints warnings instead of enforcing.

# disabled - No SELinux policy is loaded.

SELINUX=enforcing

# SELINUXTYPE= can take one of three two values:

# targeted - Targeted processes are protected,

# minimum - Modification of targeted policy. Only selected processes are protected. 

# mls - Multi Level Security protection.

SELINUXTYPE=targeted

设置SELINUX=enforcing行。

如果要在不手动编辑文件的情况下永久启用SELinux,只需以root用户身份打开终端窗口,然后输入以下命令:

[root@server1 ~]# sed -i 's/SELINUX=disabled/SELINUX=enforcing/' /etc/selinux/config

你可以通过输入以下命令在下次启动时启用自动重新标记:

[root@server1 ~]# touch /.autorelabel

然后重新启动系统以使更改生效:

[root@server1 ~]# reboot

成功重启后,检查SELlinux的状态,它应该以强制模式运行的:

[root@server1 ~]# getenforce 

Enforcing

 

安装必要的SELinux软件包

由于SELinux现在能够实施策略规则,因此我们可以安装有助于我们有效管理selinux的软件包。

1、安装setroubleshoot-server软件包。

1]、该软件包提供了帮助诊断SELinux问题的工具。

2]、生成AVC消息时,可以生成警报,提供有关问题的信息并帮助跟踪其解决方案。

3]、要安装它,请输入以下命令:

[root@server1 ~]# yum install setroubleshoot-server -y

2、policycoreutils-python包中包含用于管理SELinux环境的管理工具。

如果安装了setroubleshoot-server,它会将policycoreutils-python作为依赖项安装,因此如果安装了setroubleshoot-server软件包,则可以跳过此步骤:

[root@server1 ~]# yum install policycoreutils-python

3、另一个要安装的软件包是policycoreutils-devel

1]、Policycoreutils-devel软件包包含用于在SELinux环境中开发策略的管理工具。

2]、这个包帮助我们生成selinux man页面。

3]、可以查看提供sepolicy的内容,它实际上是由policycoreutils-devel包提供的SELinux man页生成实用程序:

[root@server1 ~]# yum provides */sepolicy

[root@server1 ~]# yum install policycoreutils-devel

配置和生成SELinux man页面

现在已经拥有所有必需的包,现在就生成SELinux man页面。

 

生成SELinux man页面

命令sepolicy manpage用于根据安装的SELinux策略生成手册页(man pages)。

常用选项有:

-a,-all Generate Man Pages for All Domains(为所有域生成手册页)

-d,-domain Generate a Man Page for the specified domain. (Supports multiple commands)(为指定的域生成手册页,支持多个命令)

-h,-help Display help message(显示帮助信息)

-p,-path Specify the directory to store the created man pages. (Default to /tmp)(指定存储创建的手册页的目录,默认为/tmp)

-r,-root Specify alternate root directory to generate man pages from. (Default to /)(指定备用根目录以生成手册页,默认为/)

-w,-web Generate an additional HTML man pages for the specified domain(s)(为指定的域生成其他HTML手册页)

输入以下命令生成selinux man页面:

[root@server1 ~]# sepolicy manpage -a -p /usr/share/man/man8/

配置和生成SELinux man页面

从上面使用的选项,告诉sepolicy手册页为所有域生成手册页,存储手册页的路径是/usr/share/man/man8/。

在生成手册页之后,现在是时候更新手册页数据库,以便我们可以使用sepolicy手册页命令生成的手册页。

你现在可以更新手册页数据库,我们将使用命令mandb,它用于初始化或手动更新通常由man维护的索引数据库缓存:

[root@server1 ~]# mandb

如果你现在搜索所有selinux手册页,将获得一个很长的列表,请通过输入以下命令自行尝试:

[root@server1 ~]# man -k _selinux

要稍微删除搜索,将输出传递给grep命令(在Linux系统下使用grep命令搜索文件的详细用法),请查看下面的示例:

man -k _selinux | grep httpd>搜索selinux httpd相关的手册页。

man -k _selinux | egrep ‘samba|smb’>搜索与samba相关的selinux手册页。

man -k _selinux | egrep *nfs>搜索nfs守护程序相关的selinux手册页。

使用grep获取所需的SELinux man页是很容易的事情:

[root@server1 ~]# man -k _selinux | grep httpd

apache_selinux (8) - Security Enhanced Linux Policy for the httpd processes

httpd_helper_selinux (8) - Security Enhanced Linux Policy for the httpd_helper processes

httpd_passwd_selinux (8) - Security Enhanced Linux Policy for the httpd_passwd processes

httpd_php_selinux (8) - Security Enhanced Linux Policy for the httpd_php processes

httpd_rotatelogs_selinux (8) - Security Enhanced Linux Policy for the httpd_rotatelogs processes

httpd_selinux (8) - Security Enhanced Linux Policy for the httpd processes

httpd_suexec_selinux (8) - Security Enhanced Linux Policy for the httpd_suexec processes

httpd_sys_script_selinux (8) - Security Enhanced Linux Policy for the httpd_sys_script processes

httpd_unconfined_script_selinux (8) - Security Enhanced Linux Policy for the httpd_unconfined_script processes

httpd_user_script_selinux (8) - Security Enhanced Linux Policy for the httpd_user_script processes

至此,本文的目的达到。

 

相关主题

Linux管理员的SELinux安全指南:42个SELinux答案

精选文章
热门文章