20.2. Types

download PDF
The main permission control method used in SELinux targeted policy to provide advanced process isolation is Type Enforcement. All files and processes are labeled with a type: types define a SELinux domain for processes and a SELinux type for files. SELinux policy rules define how types access each other, whether it be a domain accessing a type, or a domain accessing another domain. Access is only allowed if a specific SELinux policy rule exists that allows it.
The following types are used with mysqld. Different types allow you to configure flexible access:
This type is used for the location of the MariaDB database. In Red Hat Enterprise Linux, the default location for the database is the /var/lib/mysql/ directory, however this can be changed. If the location for the MariaDB database is changed, the new location must be labeled with this type. See the example in Section 20.4.1, “MariaDB Changing Database Location” for instructions on how to change the default database location and how to label the new section appropriately.
This type is used for the MariaDB main configuration file /etc/my.cnf and any other configuration files in the /etc/mysql/ directory.
This type is used for the mysqld binary located at /usr/libexec/mysqld, which is the default location for the MariaDB binary on Red Hat Enterprise Linux. Other systems may locate this binary at /usr/sbin/mysqld which should also be labeled with this type.
This type is used for executable MariaDB-related files located in the /usr/lib/systemd/system/ directory by default in Red Hat Enterprise Linux.
Logs for MariaDB need to be labeled with this type for proper operation. All log files in the /var/log/ directory matching the mysql.* wildcard must be labeled with this type.
This type is used by files in the /var/run/mariadb/ directory, specifically the process id (PID) named /var/run/mariadb/, which is created by the mysqld daemon when it runs. This type is also used for related socket files such as /var/lib/mysql/mysql.sock. Files such as these must be labeled correctly for proper operation as a confined service.
Red Hat logoGithubRedditYoutubeTwitter


Try, buy, & sell


About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.