어떻게 su가 허용되지 않을 수 있나요?

어떻게 su가 허용되지 않을 수 있나요?

su - $appuser나는 시스템 관리자이며 사용자가 애플리케이션 사용자의 비밀번호를 사용하고 입력하는 것을 원하지 않습니다.

상당히

sudo su - $appuser자신의 비밀번호를 사용 하고 입력하세요.

의심하지 않는 일부 순진한 사용자는 잘못된 비밀번호를 입력하려고 시도하며 su - $appuser, 잘못된 비밀번호를 입력하면 3번의 시도 실패 후 애플리케이션 사용자가 잠깁니다(AD 팀에서 정의한 대로, 변경할 수 없음). 우리는 사용자가 사용하도록 강요하고 싶습니다.sudo su -

이것이 달성될 수 있습니까?

답변1

글쎄, 당신은 항상 전통적인 BSD 경로를 갈 수 있습니다 ...

그룹 만들기 -바퀴전통적인 이름이군요..

허용된 사용자를 su그룹에 추가합니다. 귀하의 경우에는 없음(아마도 제외)뿌리, 하지만뿌리어쨌든 허용됩니다).

그룹 소유권을 su다음으로 설정바퀴

빼앗다다른 사람실행력su

결국에는 su있어야합니다루트 단어: 바퀴소유권은 다음과 같아야 합니다: rws--x--- (즉 chmod u=rwxs,g=x,o= su) (또는 더 나은 방법: --s--x---; 즉 chmod u=xs,g=x,o= su)

이렇게 하면 다음 사람을 제외한 모든 사용자가 차단됩니다.뿌리그리고 회원들바퀴실행에서 유효한 사용 su으로 인해 모든 사용자가 활성화됩니다.sudo뿌리, sudo su ...또한 작동해야 합니다.

답변2

PAM을 사용하는 시스템(예: 거의 모든 Linux 시스템)을 사용하는 경우 더 많은 옵션이 있습니다.

  1. LDAP/AD/etc에서 이전 /etc/pam.d/su과 마찬가지로 줄을 편집 하고 추가합니다. su auth required pam_wheel.so확인하다. 이는 wheel파일 소유권 대신 PAM을 통해 그룹을 제공합니다. 를 사용하면 보다 유연한 작업을 수행할 수도 있습니다 pam_succeed_if.
  2. 동일하게 편집하고 auth sufficient pam_rootok.so(루트 사용 허용 su) 다음으로 변경하십시오 auth required pam_rootok.so.오직root su) 또는 auth required pam_deny.so특정 지점에 넣습니다.
  3. 동일한 파일을 사용하여 애플리케이션 사용자 auth required pam_succeed_if.so uid ne $appuser차단 과 같은 작업을 수행할 수 있습니다.su

미리 사과드립니다. 그 중 어느 것도 테스트하지 않았습니다.

관련 정보