J'utilise CentOS 8 et j'aimerais accorder à un utilisateur le cap_dac_read_search
capacité via PAM. Il semble fonctionner via une connexion locale et su
, mais pas via ssh
.
J'ai suivi ces étapes, et seulement elles :
-
créé le fichier
/etc/security/capability.conf
, et écrit à l'intérieur :cap_dac_read_search user1
-
modifié
/etc/pam.d/sshd
:#%PAM-1.0 auth required pam_cap.so auth substack password-auth auth include postlogin ...
-
Redémarré le service SSH :
systemctl restart sshd
Cependant, lorsque je me connecte avec user1
via ssh
, et utilisez le capsh
commande que je peux voir :
[[email protected] ~]$ capsh --print
Current: =
Quand je fais une chose similaire avec /etc/pam.d/login
et /etc/pam.d/su
, tout semble être en ordre.
Je me suis assuré et j'ai vérifié le sshd
config et UsePam
est défini sur true
.
Mise à jour :
J'obtiens l'erreur suivante dans audit.log
, je pense que SELinux me bloque pour une raison quelconque :
type=AVC msg=audit(1621457365.510:253): avc: denied { setcap } for pid=1969 comm="sshd" scontext=system_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=system_u:system_r:sshd_t:s0-s0:c0.c1023 tclas s=process permissive=0
Réponse acceptée :
[Je suis relativement nouveau ici, donc je n'ai pas assez de réputation pour ajouter ceci comme commentaire. Alors…]
Pour une réponse, j'ai converti les préoccupations exprimées ici en une demande de fonctionnalité pour pam_cap.so
. Cela a été implémenté via l'argument du module autoauth` dans la version libcap-2.51.