여러 사용자 그룹이 비밀번호 없이 다른 여러 사용자에게 "su"할 수 있도록 허용

여러 사용자 그룹이 비밀번호 없이 다른 여러 사용자에게 "su"할 수 있도록 허용

특정 사용자 그룹이 특정 사용자로서 su 명령을 사용할 수 있도록 하고 싶습니다.

예)

그룹 사용자
allowsu_aa aa
allowsu_bb bb
allowsu_cc cc

/etc/pam.d/su그래서 파일 에 다음을 추가했습니다 .

auth            [success=2 default=ignore]        pam_succeed_if.so user = aa
auth            [success=2 default=ignore]        pam_succeed_if.so user = bb
auth            [success=2 default=3]             pam_succeed_if.so user = cc
auth            [success=done new_authtok_reqd=done default=2]      pam_succeed_if.so use_uid user ingroup allowsu_aa
auth            [success=done new_authtok_reqd=done default=1]      pam_succeed_if.so use_uid user ingroup allowsu_bb
auth            [success=done new_authtok_reqd=done default=ignore]      pam_succeed_if.so use_uid user ingroup allowsu_cc

하지만 내가 원하는 대로 작동하지 않습니다.

어떻게 고쳐야 합니까?

답변1

이를 수행하는 방법에 대한 좋은 설명은 다음과 같습니다.https://www.tecmint.com/switch-user-account-without-password/ 성공적으로 테스트했습니다(Rocky Linux 9). PAM은 꽤... 복잡합니다. 또한 파일의 구성 줄 위치에도 주의를 기울여야 합니다. 내 사용자가 test_group의 구성원인 경우 비밀번호 없이 test_user로 전환할 수 있습니다.

cat /etc/pam.d/su
#%PAM-1.0
auth        required    pam_env.so
auth        sufficient  pam_rootok.so
##### START 
auth       [success=ignore default=1] pam_succeed_if.so user = test_user
auth       sufficient   pam_succeed_if.so use_uid user ingroup test_group
##### END
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth       sufficient  pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth       required    pam_wheel.so use_uid
auth        substack    system-auth
auth        include     postlogin
account     sufficient  pam_succeed_if.so uid = 0 use_uid quiet
account     include     system-auth
password    include     system-auth
session     include     system-auth
session     include     postlogin
session     optional    pam_xauth.so

도움이 되길 바랍니다.

관련 정보