cap_dac_read_search
저는 CentOS 8을 사용하고 있으며 PAM을 통해 사용자에게 이 기능을 부여 하고 싶습니다 . 로컬 로그인 및 로그인을 통해서는 작동하는 것 같지만 를 su
통해서는 작동하지 않습니다 ssh
.
나는 다음 단계만 따랐습니다.
파일을 만들고
/etc/security/capability.conf
그 안에 썼습니다.cap_dac_read_search user1
편집하다
/etc/pam.d/sshd
:#%PAM-1.0 auth required pam_cap.so auth substack password-auth auth include postlogin ...
SSH 서비스를 다시 시작합니다.
systemctl restart sshd
user1
그러나 through를 사용하여 로그인 ssh
하고 명령을 사용 하면 capsh
다음을 볼 수 있습니다.
[user1@localhost ~]$ capsh --print
Current: =
/etc/pam.d/login
내가 비슷한 일을 하면 /etc/pam.d/su
모든 것이 제자리로 돌아가는 것 같습니다.
sshd
구성을 확인하고 확인하여 UsePam
으로 설정했습니다 true
.
고쳐 쓰다:
다음 오류가 발생하며 audit.log
SELinux가 어떤 이유로든 나를 차단하고 있는 것 같습니다.
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
답변1
[저는 비교적 새로운 사람이므로 이 댓글을 추가할 만큼 평판이 충분하지 않습니다. 그래서...]
답변을 얻기 위해 여기에 표현된 우려 사항을 다음과 같이 변환했습니다.기능 요구 사항~을 위한pam_cap.so
. 이를 통해autoauth
모듈 매개변수내부에libcap-2.51 버전.
답변2
sshd
PAM을 사용하려면 명시적으로 구성해야 합니다 .
UsePAM Enables the Pluggable Authentication Module interface. If set to
yes this will enable PAM authentication using
ChallengeResponseAuthentication and PasswordAuthentication in
addition to PAM account and session module processing for all
authentication types.
이는 여전히 인증 유형을 제한하므로 SSH 키를 통해 인증하는 경우 "auth" 스택에 대해 PAM이 호출되지 않습니다.