Sto usando CentOS 8 e vorrei concedere a un utente il cap_dac_read_search capacità anche se PAM. Sembra funzionare tramite login locale e su , ma non tramite ssh .
Ho seguito questi passaggi, e solo loro:
-
creato il file
/etc/security/capability.conf, e all'interno ha scritto:cap_dac_read_search user1 -
modificato
/etc/pam.d/sshd:#%PAM-1.0 auth required pam_cap.so auth substack password-auth auth include postlogin ... -
Riavviato il servizio SSH:
systemctl restart sshd
Tuttavia, quando accedo con user1 tramite ssh e usa il capsh comando posso vedere:
[[email protected] ~]$ capsh --print
Current: =
Quando sto facendo una cosa simile con /etc/pam.d/login e /etc/pam.d/su , tutto sembra essere in ordine.
Mi sono assicurato e ho controllato sshd config e UsePam è impostato su true .
Aggiornamento:
Ottengo il seguente errore in audit.log , penso che SELinux mi stia bloccando per qualche motivo:
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
Risposta accettata:
[Sono relativamente nuovo qui, quindi non ho abbastanza reputazione per aggiungere questo come commento. Allora...]
Per una risposta, ho convertito le preoccupazioni espresse qui in una richiesta di funzionalità per pam_cap.so . Questo è stato implementato tramite l'argomento del modulo autoauth` nella versione libcap-2.51.