SELinuxを施行に設定します。
始める前に:
次のパッケージが Oracle Linuxにインストールされていることを確認します:
rpm -q selinux-policy-targeted policycoreutils libselinux-utils libselinux-python libselinux
ノート
SELinuxモードを「許可」または「無効」から「強制」に変更する場合は、再起動する必要があります。
ポリシーを作成し、SELinuxが「強制」に設定されている場合にPAMが機能することを確認します:
-
必要に応じて、次のパッケージをOracle Linuxにインストールします:
rpm -q selinux-policy-targeted policycoreutils libselinux-utils libselinux-python libselinux
-
443でのアウトバウンド通信を許可します:
$ sudo setsebool -P nis_enabled 1
++
-
ローカル・ポリシーを作成して、
sssd_t
がopc
ディレクトリを作成し、pam_nss.log
ファイル(/etc/opc.conf
を参照)に読取りおよび書込みできるようにします。SELinuxユーティリティによってコンパイルされるため、特定の場所に配置する必要はありません。
-
ポリシー・ファイルを作成し、ファイル名
idcs-pam.te
で保存します。コンテンツは次のとおりです。
module idcs-pam 1.0;
require {
type sssd_var_log_t;
type var_log_t;
type sshd_t;
type sssd_t;
type cert_t;
type http_port_t;
type user_home_dir_t;
class file { open read write };
class dir { create write};
class tcp_socket { name_connect };
}
#============= sssd_t ==============
allow sssd_t cert_t:file write;
allow sssd_t user_home_dir_t:dir write;
allow sssd_t var_log_t:dir create;
allow sssd_t var_log_t:file { open read };
allow sshd_t sssd_var_log_t:file { open read };
allow sshd_t http_port_t:tcp_socket { name_connect };
-
SELinuxポリシー・モジュールを構築します。実行:
$ checkmodule -M -m -o idcs-pam.mod idcs-pam.te
$ semodule_package -m idcs-pam.mod -o idcs-pam.pp
-
SELinuxモジュールをインストールします。実行:
$ semodule -i idcs-pam.pp
-
SELinuxを再ロードします。実行:
$ semodule -R
-
最後に、PAMユーザーを再度認証します。
/opc
ディレクトリと/opc/pam_nss.log
ファイルが作成されます。