PAM을 통해 사용자에게 기능을 부여하는 것은 SSH에서 작동하지 않습니다.

PAM을 통해 사용자에게 기능을 부여하는 것은 SSH에서 작동하지 않습니다.

cap_dac_read_search저는 CentOS 8을 사용하고 있으며 PAM을 통해 사용자에게 이 기능을 부여 하고 싶습니다 . 로컬 로그인 및 로그인을 통해서는 작동하는 것 같지만 를 su통해서는 작동하지 않습니다 ssh.

나는 다음 단계만 따랐습니다.

  1. 파일을 만들고 /etc/security/capability.conf그 안에 썼습니다.

    cap_dac_read_search user1
    
  2. 편집하다 /etc/pam.d/sshd:

    #%PAM-1.0
    auth       required     pam_cap.so
    auth       substack     password-auth
    auth       include      postlogin
    ...
    
  3. 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.logSELinux가 어떤 이유로든 나를 차단하고 있는 것 같습니다.

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

sshdPAM을 사용하려면 명시적으로 구성해야 합니다 .

 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이 호출되지 않습니다.

관련 정보