ApacheのSELinuxブール値を有効/無効にする方法
SELinux、またはセキュリティ強化Linuxは、ファイル、プロセス、およびリソースへのアクセスを制御することによって、追加の保護層を加えるためにLinuxカーネルに実装された強制アクセス制御(MAC)のセキュリティメカニズムです。
SELinuxの一つの側面は、様々なセキュリティポリシーを制御するスイッチであるブール値の管理です。
この記事では、特にRHELベースのディストリビューションにおけるApacheのために、特定のSELinux Booleanを有効または無効にすることに焦点を当て、最適なセキュリティと機能を確保します。
SELinuxブーリアンの理解
SELinuxにおけるブール値は、特定のアクションが許可されるか拒否されるかを決定するオンオフスイッチのようなものです。これらのブール値は、特定のセキュリティポリシーを有効または無効にするために切り替えることができます。
Apacheには、SELinuxとの相互作用を制御するいくつかのブール値があります。
Apache SELinuxブール値の有効化または無効化
すべてのSELinuxブール値を表示するには、getseboolコマンドとlessコマンドを組み合わせて使用してください。
getsebool -a | less
Apacheプログラム(またはデーモン)のすべてのブール値を表示するには、grepユーティリティとともにgetseboolコマンドを使用すると、すべてのhttpd関連のブール値がリストされます。
getsebool -a | grep httpd
ここにいくつかの一般的なApache関連のSELinuxブール値があります:
- httpd_can_network_connect: Apacheがネットワーク接続を行うことを許可します。
- httpd_can_network_connect_db: Apacheがネットワーク経由でデータベースに接続できるようにします。
- httpd_can_sendmail: Apache がメールを送信することを許可します。
- httpd_enable_cgi: ApacheがCGIスクリプトを実行できるようにします。
- httpd_enable_homedirs: Apache がユーザーホームディレクトリを読み取ることを許可します。
これらのブール値は、SELinuxとのApacheの相互作用のさまざまな側面を制御し、必要な機能を許可しながらセキュリティを維持するのに役立ちます。
ブール値を有効にするには、スイッチ「オン」または数値(1)を使用できます。ブール値を無効にするには、スイッチ「オフ」または数値(0)を使用して、以下に説明するsetsebool コマンドを使用します。
Apacheのブーリアンを有効にする
システムにウェブサーバーがインストールされている場合、allow_httpd_sys_script_anon_write ブール値を有効にすることで、public_content_rw_t とラベル付けされたディレクトリにHTTPDスクリプトがファイルを書き込むことを許可できます。
getsebool allow_httpd_sys_script_anon_write
setsebool -P allow_httpd_sys_script_anon_write on
OR
setsebool -P allow_httpd_sys_script_anon_write 1
setseboolコマンドのオプションは、変更がシステム再起動を通じて持続することを保証します。これは、一貫したセキュリティポリシーを維持するために重要です。
Apacheのブーリアンを無効にする
同様に、上記のSELinuxブール値を無効にするかオフにするためには、次のコマンドを実行します。
setsebool allow_httpd_sys_script_anon_write off
setsebool allow_mount_anyfile off
OR
setsebool allow_httpd_sys_script_anon_write 0
setsebool allow_mount_anyfile 0
次のセキュリティ関連の記事を読むのを忘れないでください。
- SELinuxを一時的または永続的に無効にする方法
- SELinuxによる必須アクセス制御の基本
- Linuxサーバーの強化に役立つ20のセキュリティヒント
SELinuxのブール値は、Linuxシステムにおけるセキュリティポリシーを柔軟に制御する方法を提供します。Apacheの場合、特定のブール値を有効または無効にすることで、必要な機能を許可しながらセキュリティを強化できます。
これらのブーリアンを管理する方法を理解することで、管理者はSELinuxポリシーを組織のニーズに効果的に合わせることができます。


