21.2. 类型
SELinux 目标策略中用于提供高级进程隔离的主要权限控制方法是 Type Enforcement。所有文件和进程都设置了类型标签:type 为进程定义 SELinux 域,以及文件的 SELinux 类型。SELinux 策略规则定义类型如何相互访问,无论是访问某一类型的域还是访问其他域的域。只有在存在允许访问的特定 SELinux 策略规则时才允许访问。
以下类型与
postgresql
一起使用:不同的类型允许您配置灵活的访问。请注意,在下面的列表中,使用多个正则表达式来匹配所有可能的位置:
postgresql_db_t
- 此类型用于多个位置。使用这个类型的标记位置用于 PostgreSQL 的数据文件:
/usr/lib/pgsql/test/regres
/usr/share/jonas/pgsql
/var/lib/pgsql/data
/var/lib/postgres(ql)?
postgresql_etc_t
- 这个类型用于
/etc/postgresql/
目录中的配置文件。 postgresql_exec_t
- 此类型用于多个位置。使用这个类型标记的位置用于 PostgreSQL 的二进制文件:
/usr/bin/initdb(.sepgsql)?
/usr/bin/(se)?postgres
/usr/lib(64)?/postgresql/bin/.*
/usr/lib(64)?/pgsql/test/regress/pg_regress
systemd_unit_file_t
- 这个类型用于
/usr/lib/systemd/system/
目录中的可执行与 PostgreSQL 相关的文件。 postgresql_log_t
- 此类型用于多个位置。使用这个类型标记的位置用于日志文件:
/var/lib/pgsql/logfile
/var/lib/pgsql/pgstartup.log
/var/lib/sepgsql/pgstartup.log
/var/log/postgresql
/var/log/postgres.log.*
/var/log/rhdb/rhdb
/var/log/sepostgresql.log.*
postgresql_var_run_t
- 这个类型用于 PostgreSQL 的运行时文件,如
/var/run/postgresql/
目录中的进程 ID (PID)。