Show Table of Contents
このページには機械翻訳が使用されている場合があります (詳細はこちら)。
第21章 MariaDB (MySQL の後継)
MariaDB データベースはマルチユーザー、マルチスレッドの SQL データベースサーバーで、MariaDB サーバーデーモン (
mysqld
) と多くのクライアントプログラムおよびライブラリーで構成されています[18]。
Red Hat Enterprise Linux では、mariadb-server パッケージが MariaDB を提供します。以下のコマンドを実行して mariadb-server パッケージがインストールされていることを確認します。
~]$ rpm -q mariadb-server
package mariadb-server is not installed
このパッケージがインストールされていない場合は、root で
yum
ユーティリティーを使用してインストールします。
~]# yum install mariadb-server
21.1. MariaDB と SELinux
MariaDB を有効にすると、デフォルトで制限のあるサービスとして実行されます。制限のあるプロセスはそれ自体のドメイン内で実行され、他の制限のあるプロセスとは分離されます。制限のあるプロセスが攻撃を受けると、SELinux ポリシー設定に応じて、攻撃側がリソースにアクセスして加えることができる被害は限定されます。以下では、MariaDB 自体のドメイン内で実行している MariaDB プロセスの例を示します。ここでは mariadb-server パッケージがインストールされていることを前提としています。
getenforce
コマンドを実行して、SELinux が enforcing モードで実行していることを確認します。~]$
getenforce
EnforcingSELinux が enforcing モードで実行している場合は、Enforcing
が返されます。- root ユーザーで以下のコマンドを実行し、
mariadb
を起動します。~]#
systemctl start mariadb.service
サービスが稼働していることを確認します。出力は以下のようになり、タイムスタンプのみが異なります。~]#
systemctl status mariadb.service
mariadb.service - MariaDB database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled) Active: active (running) since Mon 2013-08-05 11:20:11 CEST; 3h 28min ago - 以下のコマンドを実行して、
mysqld
プロセスを表示します。~]$
ps -eZ | grep mysqld
system_u:system_r:mysqld_safe_t:s0 12831 ? 00:00:00 mysqld_safe system_u:system_r:mysqld_t:s0 13014 ? 00:00:00 mysqldmysqld
プロセスに関連する SELinux コンテキストはsystem_u:system_r:mysqld_t:s0
です。このコンテキストの最後から 2 番目の部分、mysqld_t
がタイプになります。タイプは、プロセスのドメインやファイルのタイプを定義します。この例の場合、mysqld
プロセスはmysqld_t
ドメイン内で実行しています。
このページには機械翻訳が使用されている場合があります (詳細はこちら)。