2.7. Apache HTTP Server の SELinux ポリシー
Security-Enhanced Linux (SELinux) ポリシーを使用して、Apache HTTP Server のアクセス制御を定義できます。これらのポリシーは、製品へのアクセス権を決定する一連のルールです。
2.7.1. SELinux ポリシー情報
SELinux セキュリティーモデルはカーネルにより適用され、ファイルシステムの場所やポートなどのリソースへのアプリケーションのアクセスが限定されるようにします。SELinux ポリシーは、危険にさらされているか、不適切な設定である誤ったプロセスを制限したり、実行できないようにしたりします。
Apache HTTP Server インストールの jbcs-httpd24-httpd-selinux
パッケージは、mod_proxy_cluster
ポリシーを提供します。次の表には、提供されている SELinux ポリシーに関する情報が含まれています。
名前 | ポート情報 | ポリシー情報 |
---|---|---|
|
2 つのポート ( |
インストール後のスクリプトは、 |
関連情報
- RHEL 7: SELinux ユーザーおよび管理者ガイド
- RHEL 8: SELinux の使用
- RHEL 9: SELinux の使用
2.7.2. Apache HTTP Server アーカイブインストール用の SELinux ポリシーのインストール
このリリースでは、アーカイブパッケージが SELinux ポリシーを提供します。ルートの Apache HTTP Server フォルダーには、.postinstall.selinux
ファイルが格納されています。必要に応じて、.postinstall.selinux
スクリプトを実行できます。
デフォルトでは、Apache HTTP Server が提供する SELinux ポリシーはアクティブではなく、Apache HTTP Server プロセスは unconfined_t
ドメインで実行されます。このドメインは、プロセスを限定するものではありません。提供されている SELinux ポリシーを有効化しないと選択した場合は、apache
ユーザーのファイルアクセスを制限して、apache
ユーザーが Apache HTTP Server ランタイムに必要なファイルとディレクトリーにのみアクセスできるようにします。
手順
selinux-policy-devel
パッケージをインストールします。yum install -y selinux-policy-devel
.postinstall.selinux
スクリプトを実行します。cd <httpd_home> sh .postinstall.selinux
SELinux モジュールを作成してインストールします。
cd <httpd_home>/selinux/ make -f /usr/share/selinux/devel/Makefile semodule -i jbcs-httpd24-httpd.pp
Apache HTTP Server の SELinux コンテキストを適用します。
restorecon -r <httpd_home>
Apache HTTP Server に必要なポートへのアクセスパーミッションを追加します。
semanage port -a -t http_port_t -p tcp 6666 semanage port -a -t http_port_t -p udp 23364
Apache HTTP Server サービスを起動します。
<httpd_home>/sbin/apachectl start
httpd_t
が予想される実行中のプロセスのコンテキストを確認します。$ ps -eZ | grep httpd | head -n1 unconfined_u:unconfined_r:httpd_t:s0-s0:c0.c1023 2864 ? 00:00:00 httpd
httpd ディレクトリーのコンテキストを確認します。以下に例を示します。
ls -lZ <httpd_home>/logs/