Chapter 10. PostgreSQL
Chapter 10. PostgreSQL PostgreSQL is an Object-Relational database management system (DBMS). [8] In Red Hat Enterprise Linux 6, the postgresql-server package provides PostgreSQL. Run the rpm -q postgresql-server command to see if the postgresql-server package is installed. If it is not installed, run the following command as the root user to install it: 10.1. PostgreSQL and SELinux When PostgreSQL is enabled, it runs confined by default. Confined processes run in their own domains, and are separated from other confined processes. If a confined process is compromised by an attacker, depending on SELinux policy configuration, an attacker's access to resources and the possible damage they can do is limited. The following example demonstrates the PostgreSQL processes running in their own domain. This example assumes the postgresql-server package is installed: Run the getenforce command to confirm SELinux is running in enforcing mode: The getenforce command returns Enforcing when SELinux is running in enforcing mode. Run the service postgresql start command as the root user to start postgresql : Run the ps -eZ | grep postgres command to view the postgresql processes: The SELinux context associated with the postgresql processes is unconfined_u:system_r:postgresql_t:s0 . The second last part of the context, postgresql_t , is the type. A type defines a domain for processes and a type for files. In this case, the postgresql processes are running in the postgresql_t domain. [8] Refer to the PostgreSQL project page for more information.
~]# yum install postgresql-server ~]USD getenforce Enforcing ~]# service postgresql start Starting postgresql service: [ OK ] ~]USD ps -eZ | grep postgres unconfined_u:system_r:postgresql_t:s0 395 ? 00:00:00 postmaster unconfined_u:system_r:postgresql_t:s0 397 ? 00:00:00 postmaster unconfined_u:system_r:postgresql_t:s0 399 ? 00:00:00 postmaster unconfined_u:system_r:postgresql_t:s0 400 ? 00:00:00 postmaster unconfined_u:system_r:postgresql_t:s0 401 ? 00:00:00 postmaster unconfined_u:system_r:postgresql_t:s0 402 ? 00:00:00 postmaster