|
|
|
|
NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
The following sections describe SELinux configuration files and
related file systems.
The /selinux/ pseudo-file system
contains commands that are most commonly used by the kernel
subsystem. This type of file system is similar to the /proc/ pseudo-file system.
In most cases, administrators and users do not need to
manipulate this component compared to other SELinux files and
directories.
The following example shows sample contents of the /selinux/ directory:
-rw-rw-rw- 1 root root 0 Sep 22 13:14 access
dr-xr-xr-x 1 root root 0 Sep 22 13:14 booleans
--w------- 1 root root 0 Sep 22 13:14 commit_pending_bools
-rw-rw-rw- 1 root root 0 Sep 22 13:14 context
-rw-rw-rw- 1 root root 0 Sep 22 13:14 create
--w------- 1 root root 0 Sep 22 13:14 disable
-rw-r--r-- 1 root root 0 Sep 22 13:14 enforce
-rw------- 1 root root 0 Sep 22 13:14 load
-r--r--r-- 1 root root 0 Sep 22 13:14 mls
-r--r--r-- 1 root root 0 Sep 22 13:14 policyvers
-rw-rw-rw- 1 root root 0 Sep 22 13:14 relabel
-rw-rw-rw- 1 root root 0 Sep 22 13:14 user
|
For example, running the cat command on
the enforce file reveals either a
1 for enforcing mode or 0 for permissive mode.
The following sections describe SELinux configuration and policy
files, and related file systems located in the /etc/ directory.
There are two ways to configure SELinux under Red Hat Enterprise
Linux: using the Security Level
Configuration Tool (system-config-securitylevel), or manually editing
the configuration file (/etc/sysconfig/selinux).
The /etc/sysconfig/selinux file is the
primary configuration file for enabling or disabling SELinux, as
well as setting which policy to enforce on the system and how to
enforce it.
|
Note |
|
The /etc/sysconfig/selinux contains a
symbolic link to the actual configuration file, /etc/selinux/config.
|
The following explains the full subset of options available for
configuration:
The /etc/selinux/ directory is the
primary location for all policy files as well as the main
configuration file.
The following example shows sample contents of the /etc/selinux/ directory:
-rw-r--r-- 1 root root 448 Sep 22 17:34 config
drwxr-xr-x 5 root root 4096 Sep 22 17:27 strict
drwxr-xr-x 5 root root 4096 Sep 22 17:28 targeted
|
The two subdirectories, strict/ and
targeted/, are the specific directories
where the policy files of the same name (i.e., strict and targeted)
are contained.
For more information on SELinux policy and policy configuration,
refer to the rhel-pwg-selinux.
The following are some of the most commonly used SELinux
utilities:
-
/usr/bin/setenforce — Modifies
in real-time the mode SELinux is running. By executing setenforce 1, SELinux is put in enforcing mode. By
executing setenforce 0, SELinux is put in
permissive mode. To actually disable SELinux, you need to either
set the parameter in /etc/sysconfig/selinux or pass the parameter
selinux=0 to the kernel, either in
/etc/grub.conf or at boot time.
-
/usr/bin/sestatus -v — Gets the
detailed status of a system running SELinux. The following example
shows an excerpt of sestatus output:
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Policy version: 18
|
-
/usr/bin/newrole — Runs a new
shell in a new context, or role. Policy must allow the transition
to the new role.
-
/sbin/restorecon — Sets the
security context of one or more files by marking the extended
attributes with the appropriate file or security context.
-
/sbin/fixfiles — Checks or
corrects the security context database on the file system.
Refer to the man page associated with these utilities for more
information.
For more information on all binary utilities available, refer to
the setools or policycoreutils package contents by running
rpm -ql <package-name>, where <package-name>
is the name of the specific package.
|
|
|