Estoy usando CentOS 8 y me gustaría otorgar a un usuario el cap_dac_read_search capacidad a través de PAM. Parece funcionar a través del inicio de sesión local y su , pero no a través de ssh .
Seguí estos pasos, y solo ellos:
-
creó el archivo
/etc/security/capability.conf, y escribió dentro:cap_dac_read_search user1 -
editado
/etc/pam.d/sshd:#%PAM-1.0 auth required pam_cap.so auth substack password-auth auth include postlogin ... -
Reiniciado el servicio SSH:
systemctl restart sshd
Sin embargo, cuando inicio sesión con user1 a través de ssh y usa el capsh comando que puedo ver:
[[email protected] ~]$ capsh --print
Current: =
Cuando estoy haciendo algo similar con /etc/pam.d/login y /etc/pam.d/su , todo parece estar en orden.
Me aseguré y revisé el sshd config y UsePam se establece en true .
Actualizar:
Recibo el siguiente error en audit.log , creo que SELinux me está bloqueando por alguna razón:
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
Respuesta aceptada:
[Soy relativamente nuevo aquí, así que no tengo suficiente reputación para agregar esto como un comentario. Entonces...]
Como respuesta, convertí las preocupaciones expresadas aquí en una solicitud de función para pam_cap.so . Esto se implementó mediante el argumento del módulo autoauth` en la versión libcap-2.51.