4.2. SELinux ブール値で NFS ボリュームおよび CIFS ボリュームの共有に関するポリシーの調整
実行時にブール値を使用して SELinux ポリシーを変更し、サービスが NFS および CIFS ボリュームにアクセスできるようにします。この機能により、ポリシー全体を再読み込みまたは再コンパイルすることなく、ポリシーを迅速に調整できます。
SELinux のブール値を使用すると、SELinux ポリシーの作成に関する知識がなくても、実行時にポリシーの一部を変更できます。これにより、SELinux ポリシーの再読み込みや再コンパイルを行わずに、サービスが NFS ボリュームにアクセスするのを許可するなどの変更が可能になります。
この手順例では、SELinux ブール値のリストを表示して、ポリシーで必要な変更を実現するように設定します。
クライアント側の NFS マウントは、NFS ボリュームのポリシーで定義されたデフォルトのコンテキストでラベル付けされます。RHEL では、このデフォルトのコンテキストは nfs_t タイプを使用します。また、クライアント側にマウントされた Samba 共有には、ポリシーで定義されたデフォルトのコンテキストがラベル付けされます。このデフォルトのコンテキストは cifs_t タイプを使用します。ブール値を有効または無効にすると、nfs_t タイプおよび cifs_t タイプにアクセスできるサービスを制御できます。
使用されているコマンドの詳細は、システムの semanage-boolean(8)、sepolicy-booleans(8)、getsebool(8)、setsebool(8)、booleans(5)、および booleans(8) の man ページを参照してください。
前提条件
-
必要に応じて、
selinux-policy-develパッケージをインストールして、semanage boolean -lコマンドの出力で SELinux ブール値の詳細を、より明確で詳細な形で取得します。
手順
NFS、CIFS、および Apache に関する SELinux ブール値を特定します。
# semanage boolean -l | grep 'nfs\|cifs' | grep httpd httpd_use_cifs (off , off) Allow httpd to access cifs file systems httpd_use_nfs (off , off) Allow httpd to access nfs file systemsブール値の現在の状態をリスト表示します。
$ getsebool -a | grep 'nfs\|cifs' | grep httpd httpd_use_cifs --> off httpd_use_nfs --> off指定されたブール値を有効にします。
# setsebool httpd_use_nfs on # setsebool httpd_use_cifs on注記setseboolで-Pオプションを使用すると、システムを再起動しても変更が持続します。setsebool -Pコマンドは、ポリシー全体を再構築する必要がありますが、設定によっては少し時間がかかる場合があります。
検証
ブール値が
onになっていることを確認します。$ getsebool -a | grep 'nfs\|cifs' | grep httpd httpd_use_cifs --> on httpd_use_nfs --> on