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.