Réglez SELinux à Mise en oeuvre.
Avant de commencer :
Vérifiez que les ensembles suivants sont installés sur Oracle Linux :
rpm -q selinux-policy-targeted policycoreutils libselinux-utils libselinux-python libselinux
Note
Lorsque vous faites passer le mode SELinux de Permissif ou Désactivé à Enforcement, vous devez redémarrer.
Créez une politique et assurez-vous que PAM fonctionne lorsque SELinux est réglé pour appliquer :
-
Si nécessaire, installez ces ensembles sur Oracle Linux :
rpm -q selinux-policy-targeted policycoreutils libselinux-utils libselinux-python libselinux
-
Autoriser la communication sortante sur 443 :
$ sudo setsebool -P nis_enabled 1
++
-
Créez une politique locale afin que
sssd_t
puisse créer le répertoire opc
pour créer et lire et écrire dans le fichier pam_nss.log
(mentionné dans /etc/opc.conf
). Il n'a pas besoin d'être localisé à un emplacement spécifique, car il est compilé par les utilitaires SELinux.
-
Créez le fichier de politique et enregistrez-le avec le nom de fichier
idcs-pam.te
. Voici le contenu :
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 };
-
Créez le module de politique SELinux. Exécutez :
$ checkmodule -M -m -o idcs-pam.mod idcs-pam.te
$ semodule_package -m idcs-pam.mod -o idcs-pam.pp
-
Installez le module SELinux. Exécutez :
$ semodule -i idcs-pam.pp
-
Rechargez SELinux. Exécutez :
$ semodule -R
-
Enfin, authentifiez à nouveau l'utilisateur PAM.
Le répertoire /opc
et le fichier /opc/pam_nss.log
sont créés.